Skip to main content
Glama
Arsel MCP Server

Arsel MCP Server

Official
by Arsel-SA

Activate In-App Campaign

activate-in-app-campaign
Destructive

Make an in-app campaign live so devices display it on their next app open, reaching its configured audience until the user pauses or ends it in the Arsel dashboard.

Instructions

Make an in-app campaign live: devices pick it up on their next app open and show it to its audience. Call get-in-app-campaign first and tell the user its content and audience (list_ids, tag_ids, segment_ids). Before calling it, wait for their go-ahead. It stays live until the user pauses or ends it in the Arsel dashboard.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>"
    },
    "name": "activate-in-app-campaign"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesThe in-app campaign id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.2.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the bar is lower; the description still adds real context beyond them, namely delivery latency (next app open), persistence ("stays live until the user pauses or ends it"), and the fact that deactivation happens outside this tool in the Arsel dashboard. It does not address what a repeat call does despite idempotentHint=false, which is the main remaining gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, front-loaded with the effect, then prerequisites, then consent, then lifetime. Every sentence carries information the agent needs; there is no filler or repetition of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter mutation with no output schema, the description covers the trigger, the user-consent gate, the observable effect, and the lifetime of the change. It leaves open edge behavior such as activating an already-live or invalid campaign, which keeps it from a full 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With one parameter at 100% schema description coverage, the schema already documents the uuid `id`, so the baseline applies. The description adds only an indirect hint about where to obtain and verify that id (via get-in-app-campaign), without format or sourcing details beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ("Make an in-app campaign live") and immediately describes the concrete effect: devices pick it up on their next app open and show it to its audience. This clearly separates it from sibling mutations like create-, clone-, and update-in-app-campaign without needing their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit pre-call workflow: call get-in-app-campaign first, surface the content and audience fields (list_ids, tag_ids, segment_ids), and wait for the user's go-ahead before activating. That is an unambiguous when-to-use and when-to-ask condition rather than an implied one.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools