Skip to main content
Glama

Delete campaign

delete_campaign
Destructive

Delete a campaign and its steps. Only a campaign nobody was ever enrolled in can be deleted (conflict otherwise); pause the others with set_campaign_status.

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": {
      "campaign_id": "<campaign_id>"
    },
    "name": "delete_campaign"
  }
}

Input Schema

NameRequiredDescriptionDefault
campaign_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, but the description adds real information beyond them: the cascade onto campaign steps and the eligibility rule that enrollment history blocks deletion. It stops short of stating irreversibility or what the response contains, but the conflict condition is the critical behavioral fact and it is disclosed.

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?

Two sentences, no filler; the destructive action and cascade come first, and the constraint plus alternative follow. Nothing is restated from the title or annotations.

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 destructive mutation with no output schema, the definition covers the action, the side effect on steps, and the blocking condition. Minor gaps remain around what happens to already-existing step data and the shape of the conflict response, but nothing essential to calling it correctly is missing.

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?

The schema has 0% description coverage on the single campaign_id string, so the description carries the burden of clarifying it — and it does not, leaving the agent to infer id-versus-name and format. The parameter's intent is obvious from its name and from the 'Delete a campaign' framing, so this is adequate but not compensating for the coverage gap.

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?

States a specific verb and resource ('Delete a campaign') and adds the important scope detail that its steps are removed too. It also implicitly separates itself from the sibling mutate tools by naming set_campaign_status as the alternative path.

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?

Gives an explicit precondition — only campaigns with zero enrollments can be deleted — plus the failure mode (conflict) and the named alternative for all other cases ('pause the others with set_campaign_status'). This is exactly the when/when-not/alternative routing an agent needs.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources