Skip to main content
Glama

CallMCP — Phone Call MCP Server

Reconcile Existing Setup

retry_setup
DestructiveIdempotent

Reconcile database pointers for an existing imported signup phone reservation. Owner-only, entitlement-checked, single-flight and idempotent. Never creates agents, buys numbers, changes provider routing or sends messages. PBX, missing imports, and stale claims return review blockers. Reusing the same key reads or replays the outcome; a failed request is held for review before a new key is accepted. Ready means database agreement, not activation.

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": {
      "business_id": "<business_id>",
      "agent_id": "<agent_id>",
      "idempotency_key": "<idempotency_key>"
    },
    "name": "retry_setup"
  }
}

Input Schema

NameRequiredDescriptionDefault
agent_idYes
business_idYes
idempotency_keyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and openWorldHint=false, yet the description adds real value beyond them: owner-only and entitlement-checked access, single-flight concurrency, key-replay semantics, and the crucial clarification that 'ready' means database agreement rather than activation. The one gap is that it never states exactly which stored pointers get overwritten and whether the prior state is recoverable, which matters for a destructiveHint=true write.

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?

Six short sentences, front-loaded with the purpose and then the constraints, with no filler. It is dense with domain shorthand — 'PBX, missing imports, and stale claims return review blockers' is compact but opaque to an agent unfamiliar with the terminology, costing some clarity for its brevity.

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 three-parameter mutating tool with no output schema and only hint-level annotations, the description covers the important behavioral surface: authority requirements, concurrency, idempotency lifecycle, non-goals, and the meaning of success. It falls short only on what a 'review blocker' response actually contains and on the two unexplained identifier parameters.

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 0%, so the description must carry parameter meaning and it only half does: idempotency_key is richly explained (reuse reads or replays the outcome; a failed request must be reviewed before a new key is accepted), but business_id and agent_id are never defined, including whether agent_id refers to an existing agent or the imported reservation's target. Partial compensation warrants a middle score rather than a high one.

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 ('Reconcile database pointers for an existing imported signup phone reservation') and then carves out the adjacent capabilities it does not perform (creating agents, buying numbers, changing provider routing, sending messages), which maps directly onto what sibling tools like retry_activation_notification or add_team_phone do. An agent can distinguish this tool 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?

It gives a clear entry condition (an existing imported signup phone reservation) and several explicit when-not cases (PBX, missing imports, stale claims produce review blockers; failed requests are held). What is missing is a named alternative direction — e.g., which sibling to call for a fresh activation, a recovery status check, or a blocked claim — so the agent must infer routing in failure cases.

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.