What is the Agent2Agent protocol?
Agent2Agent (A2A) is an open protocol, introduced by Google, that lets independent AI agents talk to one another. Where MCP connects an agent to its tools, A2A connects an agent to other agents — so one can delegate work to another even if they were built separately.
The goal is a world where a specialist agent (say, a travel-booking agent) can be discovered and called by a generalist agent, without either side hard-coding knowledge of the other.
How A2A works
A2A builds on familiar web foundations — HTTP, JSON-RPC-style messages and server-sent events for streaming. A few concepts do most of the work:
- Agent card — a machine-readable document advertising an agent's identity, capabilities and endpoint, so others can discover what it can do.
- Task — a unit of work one agent asks another to perform, with a lifecycle (submitted, working, completed, failed).
- Message — the exchange of content between agents during a task, including intermediate updates.
- Artifact — an output produced by the receiving agent and returned to the caller.
When to use A2A
- You're building a multi-agent system where agents specialise and hand work to one another.
- You want agents from different vendors or teams to interoperate.
- You need agents to discover capabilities at runtime rather than via hard-coded integrations.
A2A alongside MCP
A2A and MCP are complementary. A common pattern: each agent uses MCP to reach its own tools and data, and A2A to delegate sub-tasks to peer agents. See how they line up in the full comparison, or read about the broader goal on AI agent interoperability.