Skip to main content
Glama

calls_dismiss_agent

Read-onlyIdempotent

Take the AI agent OFF a running call while the bot stays in the call and keeps transcribing (Google Meet / Teams bot, Telegram group voice chat, WhatsApp group call). Use it to remove or replace the agent without ending the call. To bring an agent back, call calls.dispatch_agent with the same session UUID (or thread_id); it receives the full call transcript so far. To end the whole call and make the bot leave use calls.hangup instead. Identify the call by target (live session UUID from calls.list_active) or thread_id of the running call. Waits up to ~15 s for the agent to confirm it has left; fails if no agent is active on the call.

Input Schema

NameRequiredDescriptionDefault
reasonNoShort reason, passed to the agent's session and logs (e.g. 'replacing with another agent'). Optional.
targetNoLive session UUID of the running call (from calls.list_active). Provide this OR thread_id.
thread_idNoInbox thread id of the running call. Provide this OR target.
in_workspaceNoRun this one call in this workspace id instead of the session's. Nothing is stored; other sessions are not affected.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

Adds real behavior beyond the annotations: the bot remains in the call and keeps transcribing, the replacement agent inherits the transcript so far, the tool waits ~15 s for confirmation, and it fails if no agent is active. The only gap is what a successful response returns, which is unspecified. Note the annotations themselves are internally odd (readOnlyHint=true alongside a title 'Dismiss the agent from a running call'), but the description is consistent with that title rather than contradicting it.

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

Conciseness4/5

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

Front-loaded with the core effect and the call stays active, then alternatives, then identification and timing. Dense but every sentence carries routing or behavioral information; minor namespacing noise ('calls.dispatch_agent', 'calls.hangup') versus the flat sibling names.

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 4-param, no-output-schema tool it covers selection, alternatives, timeout, and the failure case, which is what an agent needs to call it correctly. Only the success return value is undescribed.

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?

Schema coverage is 100% and the schema already states target/thread_id are alternatives and that target comes from calls.list_active, so the description mostly restates it. It adds no format, precedence, or failure semantics for the either/or choice beyond what the schema says (baseline 3 for full coverage).

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 precise verb+resource+effect: removes the AI agent from a running call while the bot stays and keeps transcribing. It also names the platforms and immediately separates itself from the two nearest siblings (dispatch_agent to re-attach, hangup to end the call).

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?

Explicit when-to-use (remove or replace the agent without ending the call) plus explicit alternatives with the condition that selects each: calls.dispatch_agent for bringing an agent back, calls.hangup for ending the whole call. Nothing is left to inference.

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.