From claude-toolkit
Standards for connecting AI agents to their tools and to each other — the Model Context Protocol (MCP) for agent↔tool/context, and the Agent2Agent (A2A) protocol for agent↔agent collaboration. Covers the clean split "MCP = vertical (model↔tools/data), A2A = horizontal (agent↔agent)"; MCP's JSON-RPC client–host–server architecture and primitives (Resources, Tools, Prompts exposed by servers; Sampling, Roots, Elicitation exposed by clients), transports (stdio, Streamable HTTP), and the 2025-11-25 revision; and A2A's Agent Card discovery (/.well-known/agent-card), Client/Server roles, the Task lifecycle, Message/Part/Artifact, contextId grouping, JSON-RPC/gRPC transports with SSE streaming and push notifications, and auth. Use when designing how agents expose or consume tools, integrating an MCP server/client, enabling cross-framework/multi-vendor agent collaboration, choosing MCP vs A2A, or reasoning about agent discovery, transports, and security. Specs evolve — figures are dated; re-verify. Pairs with agentic-workflows and sdlc-orchestration; security via secure-coding.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-toolkit:agent-interoperabilityThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
The two open standards that let agentic systems stop being islands: **MCP** connects an agent to **tools and context**, and **A2A** connects an agent to **other agents**. The one-line mental model:
The two open standards that let agentic systems stop being islands: MCP connects an agent to tools and context, and A2A connects an agent to other agents. The one-line mental model:
MCP = vertical (model ↔ tools/data) · A2A = horizontal (agent ↔ agent).
They're complementary — an agent typically uses MCP to reach its tools and speaks A2A to collaborate with peer agents. Distilled from the MCP spec (revision 2025-11-25) and the A2A protocol (v1.0, Linux Foundation).
These specs move fast. Versions, method names, and well-known paths have already changed once (A2A's early-2025 draft → v1.0). Treat every concrete detail here as dated (2026-06) and re-verify against modelcontextprotocol.io and a2a-protocol.org before building.
Cross-links: [[agentic-workflows]] (how to design the agents that use these), [[sdlc-orchestration]] (a multi-agent system that coordinates via shared artifacts + tools), [[secure-coding]] (the security model for both is critical).
"An open protocol that enables seamless integration between LLM applications and external data sources and tools." Inspired by the Language Server Protocol — one standard so any client can talk to any tool server. JSON-RPC 2.0, stateful sessions, capability negotiation at init.
Architecture: host / client / server.
Server-exposed primitives: Resources (context/data for user or model), Tools (functions the model can execute — arbitrary code, so explicit user consent required), Prompts (templated messages/workflows).
Client-exposed primitives: Sampling (server asks the client's LLM to generate — 2025-11-25 adds tool-calling here), Roots (filesystem/URI boundaries the server may operate in), Elicitation (server requests structured input from the user — 2025-11-25 adds URL-mode).
Transports: stdio (client launches the server as a subprocess; newline-delimited JSON-RPC over stdin/stdout — prefer when possible) and Streamable HTTP (one endpoint, POST+GET, optional SSE; session via MCP-Session-Id, MCP-Protocol-Version header) — which replaces the deprecated HTTP+SSE transport. Security: servers MUST validate Origin (anti DNS-rebinding) and bind to localhost when local.
Notable in 2025-11-25: experimental Tasks (durable requests + deferred retrieval — note: MCP's "Task" ≠ A2A's), tool-calling in sampling, icons metadata, elicitation overhaul + URL mode, OAuth/OIDC discovery & incremental consent, JSON Schema 2020-12 default. → references/mcp.md
"An open standard that enables seamless communication and collaboration between AI agents... a common language for agents built using diverse frameworks and by different vendors." It lets an agent be exposed as an agent (autonomous, opaque — no exposure of internal logic/memory/tools), not crippled into a mere tool. Donated to the Linux Foundation; v1.0 shipped.
Actors: User (defines the goal); A2A Client / Client Agent (initiates on the user's behalf); A2A Server / Remote Agent (an HTTP endpoint implementing A2A; an opaque black box).
Agent Card — "a JSON metadata document describing an agent's identity, capabilities, endpoint, skills, and authentication requirements" — the agent's digital business card. Published at the well-known path /.well-known/agent-card (⚠️ early drafts used /.well-known/agent.json). Declares identity, service url, capabilities, securitySchemes, and skills.
Communication elements:
taskId and lifecycle (input-required/auth-required → terminal completed/canceled/rejected/failed). Terminal tasks are immutable; refinements start a new task within the same contextId.user/agent), for immediate exchanges or capability negotiation.text / raw bytes / url / structured data (modality-independent).contextId groups related tasks + messages into a session; referenceTaskIds links a refinement to a prior task; parallel tasks per context are allowed.Transport: HTTP(S) with JSON-RPC 2.0 as the core payload (v1.0 also has gRPC and REST/JSON bindings). Methods (v1.0): SendMessage (sync) and SendMessageStream (SSE) — ⚠️ early drafts used tasks/send/tasks/sendSubscribe. Three interaction modes: request/response polling, SSE streaming (incremental status/artifact events), and push notifications (server POSTs to a client webhook for long-running/disconnected work).
Auth: standard web security; requirements declared in the Agent Card securitySchemes (OIDC/OAuth/API keys); credentials in HTTP headers, separate from A2A messages; HTTPS throughout. → references/a2a.md
Origin (MCP), HTTPS + header-based auth (A2A), OAuth/OIDC for delegated access; never put credentials in message bodies.agent.json) or method names (tasks/send) — use current (/.well-known/agent-card, SendMessage) and re-verify.Origin validation in MCP.references/mcp.md — MCP architecture, the six primitives, transports, lifecycle, and the 2025-11-25 changes, in detail.references/a2a.md — A2A actors, the Agent Card, the Task lifecycle and contextId model, transports/streaming/push, and auth, in detail.Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
npx claudepluginhub vezril/claude-toolkit --plugin claude-toolkit