Skip to main content
Glama

Agent Send

agent_send

Sends a coordination message to an agent on ANOTHER of the user's machines (get its handle from agents_list). Use it to hold merges during a release ('freeze'), announce a PR is up ('pr-ready'), hand work over ('handoff') or say a release shipped ('release-out'). Without to_agent it reaches every agent on that machine, which is what you want for a freeze. A DIRECTED to_agent must be one that is ALIVE — take it from agents_list, never invent it: if it is not alive you get a 404 listing the agent_ids that ARE alive on that machine, so you can re-address to one of those instead of the message being silently lost. The recipient gets it on its next agent_inbox poll — this is not instant, and it is not a request you can force: the other agent decides what to do.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toYesHandle of the target machine, from agents_list
payloadNoThe content: reason, PR number, branch… Keep it small (max 16KB).
msg_typeYesOne of: ping, pr-ready, freeze, freeze-clear, release-out, handoff, note
to_agentNoOptional: a single agent_id on that machine (it must have checked in). Omit to reach all of them.
from_agentNoYour own agent_id, so the recipient knows who is asking

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false, openWorldHint=true, destructiveHint=false, so the description carries the burden of behavioral disclosure. It fully discloses: non-instant delivery (recipient gets it on next agent_inbox poll), the 404 error listing alive agent_ids, the 16KB payload limit, and the fact that the recipient decides what to do (not a forceable request). This is rich, actionable behavioral context beyond the annotations.

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?

The description is dense but well-organized: purpose first, then use cases, then the critical alive-agent constraint, then delivery semantics. Every sentence earns its place, though it is somewhat long and could be tightened. The front-loading of the core purpose and the explicit use-case list makes it easy to scan.

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?

For a coordination tool with 5 parameters, an output schema, and no destructive/read-only annotations, the description covers everything an agent needs: how to address, what to include, what happens on error, delivery timing, and the recipient's autonomy. The output schema exists, so return values need not be described. No critical gap remains.

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 description coverage is 100%, so the baseline is 3. The description adds meaningful semantics beyond the schema: it explains that to_agent must be an alive agent from agents_list, that omitting to_agent broadcasts to all agents, that payload should be small (max 16KB), and that from_agent identifies the sender. This elevates the score above baseline, though the schema already documents each parameter's basic meaning.

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 states a specific verb ('sends a coordination message') and resource ('to an agent on ANOTHER of the user's machines'), and distinguishes it from siblings like agent_inbox, agent_ack, and agents_list. It also enumerates concrete use cases (freeze, pr-ready, handoff, release-out), making the tool's purpose unmistakable.

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?

The description explicitly says when to use this tool (coordination messages during release/PR/handoff), how to get the target handle (from agents_list), and what to do if a directed agent is not alive (re-address to one of the listed alive agent_ids). It also clarifies the broadcast behavior when to_agent is omitted, which is exactly the guidance an agent needs to choose and invoke correctly.

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