agent.capabilities

Live

Self-describing surface — which tool families are live, preview_limited, preview_coming_v1, preview_coming_v2.

CategoryAgent
JSON-RPCtools/call
EndpointPOST /mcp
Sourcepackages/mcp-tools/src/tools/agent-capabilities.ts

Description

Canonical self-description. MUST match tools-manifest.ts (the pitch-docs rendering source) per the sync rule. Per ADR-0021 §capabilities.

Input schema

This tool takes no arguments.

Output shape

typescript
{
  tool_families: Array<{
    family: string;
    status: 'live' | 'preview_limited' | 'preview_coming_v1' | 'preview_coming_v2';
    tools: Array<{ name: string; status: 'live' | 'preview_limited' | 'preview_coming_v1' | 'preview_coming_v2' }>;
  }>;
}

Example call

JSON-RPC tools/call request body (omit the JSON-RPC envelope when using an SDK; the SDK adds it for you):

jsontools/call params
{ "name": "agent.capabilities", "arguments": {} }

Example response

Tool results are always wrapped as content[0].text with a stringified JSON body. The shape below is what you get back from JSON.parse(result.content[0].text):

jsonparsed result body
{
  "tool_families": [
    { "family": "meta", "status": "live", "tools": [{ "name": "meta.why_this_action", "status": "live" }] },
    { "family": "commitments", "status": "preview_limited", "tools": [{ "name": "commitments.delegate", "status": "preview_coming_v2" }] }
  ]
}

Errors this tool can return

CodeMeaning
unauthorizedMissing or invalid bearer token.

See the full error catalog for resolution steps on each code, plus the standard transport-layer responses (401, 429).