Skip to main content
Glama

Phone the human

call_me

Phone the human who owns this call on their own confirmed phone number, e.g. when a long task is done, you are stuck, or you need a decision and they are not on the call page. You never pass a number. Their account rules decide (opt-in, allowed reasons, quiet hours, calls per day, budget, credit); a refusal returns {status: refused, why}. Returns as soon as they pick up: {status: answered, answered: true, phone_call_id}, or {status: no_answer|busy|failed|insufficient} if nobody picked up. The call goes on in the background and is billed when it ends; what they say arrives as usual through next. reason: done | blocked | decision. message: max 200 characters, opens the call.

Input Schema

NameRequiredDescriptionDefault
reasonYesWhy you call: done, blocked or decision.
messageNoOptional: what to tell them when they pick up, max 200 chars.
sessionYesThe `session` value returned by join.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Goes far beyond annotations: explains that account rules govern opt-in, reasons, quiet hours, per-day limits and budget, that refusals return {status: refused, why}, and that the call continues in the background and is billed at end. It also distinguishes blocking-until-answer from background continuation, which is exactly the behavioral context an agent needs for an openWorld, non-idempotent action.

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 action and trigger, then return statuses. Dense but nearly every clause carries information; the return-status enumeration is slightly compressed but earns its place.

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

Completeness5/5

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

Even though an output schema exists, the description explains the return contract (answered/no_answer/busy/failed/insufficient, refused with why) and the async billing model, so an agent knows both what it gets back and what continues afterward. Complete for a call-placing tool.

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 100%, but the description still adds value by stating 'You never pass a number', enumerating reason values (done | blocked | decision), and clarifying that message (max 200 chars) 'opens the call'. It mostly echoes the schema's field docs, keeping it just below a 5.

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 ('Phone the human who owns this call on their own confirmed phone number') and clarifies the 'you never pass a number' constraint that separates it from a generic dialer. An agent can distinguish it from notify_me/say/activity without opening the 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?

Gives clear when-to-use triggers ('when a long task is done, you are stuck, or you need a decision and they are not on the call page'). It does not explicitly name when NOT to use it or point to the closest alternative (notify_me), so it falls short of a 5.

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.