One client, one server contract — any tool, from files to databases to SaaS APIs, becomes a uniform, discoverable surface the agent can call. Collapses N×M custom integrations into N+M.
Open the MCP patternProtocols.
How an agent reaches the world.
Your framework decides how an agent thinks. Protocols decide who it can reach. These are the open standards an agent speaks to cross its own boundary — out to tools, sideways to other agents, and up to the people it works for.
An agent is only as useful as what it can reach.
Drop an agent in a vacuum and it can reason — but it can’t act. Every useful agent has to cross boundaries, and each boundary has grown its own open protocol to cross it cleanly.
Choosing a framework and choosing protocols are independent questions. A LangGraph agent and a CrewAI agent can speak exactly the same protocols and never share a line of code — that is the entire point of standardizing the wire instead of the runtime.
Every protocol, side by side.
Nine open standards an agent can speak, ordered from production-ready to just-forming. Each crosses a different boundary — the scope line says which, the badge says how settled it is.
Agents from different teams, vendors, or frameworks cooperate as opaque peers — discovered by Agent Card, coordinated through Tasks, exchanging Artifacts while their internals stay private.
Open the A2A patternTargets the layer above messaging — directories, identity, and discovery — so agents can find and trust one another across organizations. Cisco’s bid for an “Internet of Agents.”
Visit AGNTCYA decentralized approach to agent identity and discovery built on W3C DIDs, so agents find and authenticate each other across the open web with no central registry.
Read the specAn event-streamed protocol standardizing how an agent talks to a front-end — token streams, tool-call states, and human input — so any UI can host any agentic backend.
Read the docsAn open protocol for agent-initiated payments, using signed user “mandates” so an agent transacts on someone’s behalf with a verifiable chain of authorization. Rides on A2A.
Read the specStandardizes programmatic checkout so an agent can complete a purchase inside a conversation — the rails behind in-chat “instant checkout” between shoppers and merchants.
Read the specRevives the dormant HTTP 402 “Payment Required” status so an API or agent can charge per call with stablecoins — pay-as-you-go settlement for machine-to-machine work.
Visit x402Not a wire protocol but the primitive beneath them all: the model emits a structured call, the runtime executes it. MCP is essentially an open standard wrapped around this.
Read the docsACP (Agent Communication Protocol, IBM · BeeAI) has merged into A2A under the Linux Foundation and is no longer tracked as a separate protocol — ACP → A2A
| Dimension | MCP | A2A |
|---|---|---|
| Scope | Agent ↔ tool / data | Agent ↔ agent |
| Standardizes | Tool discovery, invocation, structured I/O | Agent discovery, task lifecycle, artifact exchange |
| Initiator | Agent (client) calls MCP server | Either agent can initiate; tasks have a defined lifecycle |
| Core artifacts | Resources, Tools, Prompts | Agent Cards, Tasks, Artifacts |
| Governing body | Anthropic (open spec) | Linux Foundation (initiated by Google, April 2025) |
| Typical use | Give an agent a uniform tool surface across vendors | Let agents from different frameworks / vendors cooperate |
| Privacy model | Tool exposes capability surface; agent owns reasoning | Agents are opaque to each other; internal state stays private |
What to reach for, by boundary.
| Boundary | Reach for | Use it when | Status |
|---|---|---|---|
| Tools & Datafiles, DBs, SaaS, APIs | MCP | You want one tool surface that works across vendors and frameworks. | Established |
| Other Agentscross-team / cross-vendor | A2A — ACP merged in | Work crosses a runtime, an org, or a trust boundary. | Maturing |
| People & UIchat, copilots, apps | AG-UI | You’re streaming an agent into a custom front-end. | Emerging |
| Money & Commercecheckout, pay-per-call | AP2 · x402 · Agentic Commerce | An agent needs to transact or pay for usage on a user’s behalf. | Emerging |
| Same processin-framework calls | Function calling — no protocol | Everything lives in one runtime — don’t add a protocol you don’t need. | Foundational |
Which framework speaks which protocol.
Runtime-level support for the protocols a framework can actually implement. Native = first-party documented. Community = third-party adapter. None / Unknown = no shipped or confidently-sourced support as of this writing.
| Framework | MCP | A2A | AG-UI |
|---|---|---|---|
| AWS Strands SDK | MCPNative | A2ANative | AG-UINone |
| CrewAI | MCPCommunity | A2AUnknown | AG-UICommunity |
| AutoGen / AG2 | MCPCommunity | A2AUnknown | AG-UINone |
| Google ADK | MCPNative | A2ANative | AG-UINone |
| OpenAI Agents SDK | MCPNative | A2AUnknown | AG-UICommunity |
| SuperAgent | MCPUnknown | A2AUnknown | AG-UINone |
| MetaGPT | MCPUnknown | A2AUnknown | AG-UINone |
| Pydantic AI | MCPNative | A2AUnknown | AG-UICommunity |
| LlamaIndex | MCPCommunity | A2AUnknown | AG-UICommunity |
| Semantic Kernel | MCPNative | A2ANative | AG-UINone |
| LangChain4j | MCPNative | A2AUnknown | AG-UINone |
| LangGraph | MCPNative | A2ACommunity | AG-UICommunity |
| Temporal | MCPCommunity | A2AUnknown | AG-UINone |
| Inngest | MCPCommunity | A2AUnknown | AG-UINone |
| Restate | MCPCommunity | A2ACommunity | AG-UINone |
| Deep Agents SDK | MCPNative | A2AUnknown | AG-UICommunity |
| Claude Agent SDK | MCPNative | A2AUnknown | AG-UINone |
Keep exploring