Skip to main content
Glama

federation_call

Call a single tool on a vetted downstream MCP server, enforcing federation permissions and wrapping untrusted output for safe use.

Instructions

Call one tool on one ratified downstream MCP server.

Authorized only at the intersection of two ceilings (docs/design/ federated-mcp-gating.md Decision 2): this app's manifest must grant BOTH the 'mcp_federation' capability (own line — spawning a server at all) AND the namespaced mcp:<server_id>:<tool> permission (this specific tool on this specific server) — plus the operator's standing consent.federation and an unexpired egress lease, same as every other egress lane. The server itself must be in the operator-ratified registry regardless of what this app's manifest grants; a manifest grant alone can never make an unratified server reachable.

The downstream tool's result is scanned by external-guard and sandwich-wrapped if flagged (untrusted output, same treatment willow_web_fetch gives fetched pages) before it comes back.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toolYes
app_idYes
argumentsNo
server_idYes
Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It discloses that the downstream result is scanned by external-guard and may be sandwich-wrapped for untrusted output, which is useful. However, it does not mention whether the call is read-only, side effects, failure modes, or return format, leaving significant gaps for a tool that can invoke arbitrary downstream tools.

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

Conciseness3/5

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

The description is front-loaded with a clear purpose, but the following sentences are dense with internal jargon (ceilings, consent.federation, egress lease, external-guard, sandwich-wrapped) and a doc reference. While every sentence adds some security context, the phrasing is not concise and may confuse an agent not already familiar with these terms.

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

Completeness2/5

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

Given the tool's complexity and the lack of annotations and schema descriptions, the description alone is incomplete. It thoroughly covers authorization gates and output handling, but it omits how parameters are used, expected input shapes, return behavior, and error conditions, making it insufficient for safe and correct invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the four parameters (tool, app_id, arguments, server_id). It mentions 'one tool' and 'downstream MCP server', giving a hint about tool and server_id, but it never explains app_id or arguments, nor their types, defaults, or relationships. This is insufficient for an agent to construct a valid invocation.

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 first sentence, 'Call one tool on one ratified downstream MCP server,' clearly specifies the action (call), the object (one tool), and the scope (on a ratified downstream MCP server). This distinguishes it from siblings like federation_discover and federation_list_servers, which handle discovery and listing rather than invoking a tool.

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?

The description provides strong contextual guidance by listing the required authorization prerequisites (manifest capability, namespaced permission, operator consent, egress lease, and ratified registry). It clearly implies when this tool is usable, but it does not explicitly mention alternatives or when not to use it, stopping 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.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rudi193-cmd/willow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server