Skip to main content
Glama

Remove voice campaign contacts

remove_voice_campaign_contacts
Destructive

Remove contacts from a voice campaign that is still a draft or scheduled (not running, not archived). ids are the contact ROW ids (the id of each row in list_voice_campaign_results), never phone numbers. A row the campaign does not hold is ignored, so repeating the call is harmless. The answer has removed, ignored and the new total.

Input Schema

NameRequiredDescriptionDefault
idsYes
campaign_idYesCampaign id as returned by list_voice_campaigns.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructive=true and readOnly=false, and the description adds meaningful context beyond that: the campaign-state guard, the row-id semantics, the fact that non-held rows are silently ignored, and the shape of the response (removed, ignored, new total). One mild tension exists with idempotentHint=false, since 'repeating the call is harmless' implies a repeated call leaves state unchanged, though the differing removed/ignored counts keep it from being a flat contradiction.

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 primary constraint and the id semantics, with no redundant or decorative content. Every clause — eligibility, id source, ignored-row behavior, return shape — carries information an agent needs.

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?

With no output schema, the description usefully summarizes the return fields (removed, ignored, new total) and covers eligibility, id semantics, and repeat behavior. It is close to complete, though it doesn't mention the 2000-id cap, permission requirements, or whether removals can be undone.

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

Parameters4/5

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

Schema coverage is only 50% — campaign_id is documented in the schema, but ids is not. The description closes that gap well by specifying that ids are row ids from list_voice_campaign_results and never phone numbers, which is exactly the detail an agent could get wrong. It doesn't restate campaign_id, but the schema already covers it.

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 (remove contacts from a voice campaign) and immediately narrows scope to campaigns that are draft or scheduled, explicitly excluding running and archived ones. It also distinguishes the ids from phone numbers and points to list_voice_campaign_results for the row ids, so an agent can separate this tool from siblings like add_voice_campaign_contacts or delete_voice_campaign without opening a schema.

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

Usage Guidelines4/5

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

Provides a clear precondition — the campaign must be draft or scheduled, never running or archived — which functions as an explicit when-not to call. It doesn't name a competing alternative (e.g., cancel_voice_campaign or pause_voice_campaign) or say what to do if the campaign is running, so it falls short of full when/when-not/alternatives guidance.

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