In plain terms
MCP gives an agent tools. A2A gives it colleagues. Each agent publishes a short profile of what it can do; another agent reads it, hands over a task and gets back progress updates and a result, without either side seeing how the other works inside.
Why it matters
As companies deploy agents from several suppliers, the agents need a common language or every pair becomes a custom integration. For a buyer the question to ask a vendor is simple: can your agent talk to ours over an open protocol, or only to its own kind?
Example
A procurement agent needs a quote. It finds a supplier's sales agent through its published Agent Card, sends the task “quote 500 units, delivery in March”, receives status updates while the supplier's agent checks stock, then gets the finished quote.
Most often confused with
A2A vs. MCP (Model Context Protocol)
MCP connects an agent to tools and data: the other end is a function that does exactly what it is told. A2A connects an agent to another agent: the other end has its own model, judgment and private tools. The two are designed to be used together.
Origin: Announced by Google in April 2025 and donated to the Linux Foundation in June 2025.
Under the hood
Built on HTTP, JSON-RPC and server-sent events. An agent advertises itself with an Agent Card, a JSON document listing skills, endpoint and authentication requirements. Work is modelled as tasks with a lifecycle (submitted, working, input-required, completed), which suits long-running jobs; outputs are returned as artifacts and messages carry typed parts. Agents stay opaque to each other: no shared memory, tools or prompts. Content received from another agent is untrusted input and needs the same care as any tool result.