A2A: Google wrote it, then gave it away
Lesson 4 of 5 in Google’s Agent Stack: ADK, Agent Runtime, and the Names That Keep Moving.
Google’s interop posture is unusual among the three big clouds, and the reason is historical: Google wrote the agent-to-agent protocol, then handed it to a foundation.
Agent2Agent (A2A) was announced by Google on 9 April 2025 as an open protocol letting agents built by different vendors or frameworks communicate, exchange information, and coordinate — with, Google said, support from more than 50 technology partners. On 23 June 2025 the Linux Foundation launched the A2A project with Google donating the protocol; AWS, Cisco, Microsoft, Salesforce, SAP, and ServiceNow were named among initial participants. It is now maintained by a Technical Steering Committee with representatives from AWS, Cisco, Google, IBM Research, Microsoft, Salesforce, SAP, and ServiceNow, under Apache 2.0 — and on 27 August 2026 A2A was accepted as a Growth Stage project in the Agentic AI Foundation, the Linux Foundation-directed home that also hosts MCP.
So “Google’s protocol” is now precisely as true as “Anthropic’s protocol” is of MCP: it describes the origin, not the governance.
The framing you will meet everywhere is “MCP for tools, A2A for agents”. Treat it as community shorthand rather than a quotation: it distils Google’s launch statement that A2A “complements Anthropic’s Model Context Protocol” and the A2A docs’ own framing that MCP is vertical (deepening one agent with tools and resources) while A2A is horizontal (connecting agents as peers across boundaries) — summarised in the docs as “MCP gives each agent depth, and A2A gives your system reach.”
The wall is porous by design, and the docs say so: an A2A server can expose some skills as MCP-compatible resources when those skills are well-defined and callable in a tool-like, stateless way. What A2A actually differentiates is stateful, multi-turn, opaque collaboration — asking a peer to do a task without seeing its internals — rather than invoking a function.
Two components in your system need to talk. What should carry it?
Interactive decision tree — outcomes:
- No protocol. Use ADK composition.
A Sequential, Parallel, Loop, or graph workflow, or a sub-agent in the same tree. Adding a network protocol between components you deploy together buys you serialisation bugs, latency, and an auth problem, in exchange for nothing. Protocols are for boundaries; this is not one.
- A plain function tool.
One agent, one caller, one contract: an ADK function tool is the whole answer. Publish it as an MCP server later if a second consumer appears — that migration is cheap, and premature protocol adoption is not.
- MCP — the vertical axis.
A shared, discoverable capability with a stable schema is what MCP is for, and ADK consumes MCP tools natively. On the platform side, Agent Gateway handles routing and authorization for calls made during execution. This is depth: one agent, more reach into your systems.
- A2A — the horizontal axis.
Stateful, multi-turn, opaque peer collaboration across a boundary you do not control: exactly A2A’s target, with tasks, artifacts, and the interrupted states INPUT_REQUIRED and AUTH_REQUIRED modelling the clarification and authorization turns you would otherwise invent badly. ADK documents both exposing and consuming A2A agents — and marks the feature Experimental, so read the next callout before you promise it to anyone.
- Either can work — so choose on ownership, not on taste.
A stateless request/response across a boundary is the porous zone the A2A docs acknowledge: skills can be exposed as MCP-compatible resources when they are tool-like and stateless. Decide on who owns the far side and what it will become. Same team, stable schema, likely to stay a function: MCP. Different vendor, opaque internals, likely to grow judgment and long-running work: A2A.
Why did Google build a second protocol instead of using MCP for everything?
Because “reduce the other agent to a tool” loses information. Google’s launch principles were: embrace agentic capabilities (agents collaborate as agents rather than as tools), build on existing standards (HTTP, SSE, JSON-RPC), secure by default, support long-running tasks, and be modality agnostic.
Read those as an argument about state. A tool call is stateless and transparent: you know its schema and get a return value. A peer agent is stateful and opaque: it may need to ask you a question, may take an hour, may stream partial results, and will not show you its internals. Modelling that as a function call means reinventing task ids, status polling, clarification turns, and authorization interrupts — which is precisely the list A2A standardised.
What is AP2, and does it matter yet?
Google announced the Agent Payments Protocol (AP2) in mid-September 2025 with more than 60 organisations including American Express, Coinbase, Mastercard, PayPal, and Worldpay, positioned as usable as an extension of the Agent2Agent (A2A) protocol and Model Context Protocol (MCP). An A2A x402 extension for crypto payments was launched with Coinbase, the Ethereum Foundation, and MetaMask. The Gemini Enterprise launch post cites AP2 with “over 100 partners”.
Treat it as a signal about direction, not a capability to build on today: A2A supports protocol extensions with a tiered promotion process intended to keep the core stable, and payments is the highest-profile extension ecosystem. If an agent of yours is about to move money, the interesting question is not the wire format — it is who is accountable for an unauthorised transfer, and no protocol answers that.
Did the competing agent protocols consolidate?
Largely, yes. The IBM/BeeAI-origin Agent Communication Protocol (ACP) — a REST-based interop protocol under the Linux Foundation — now carries the notice “ACP is now part of A2A under the Linux Foundation!” and links an ACP-to-A2A migration guide. (The site gives no merge date, so do not quote one.)
Two adjacent efforts remain distinct rather than competing. AGNTCY (“Building the Internet of Agents”, an LF series with a TSC of Cisco, Dell, Google, Oracle, and Red Hat) positions itself as complementary infrastructure — federated discovery, the SLIM messaging protocol, identity, observability, OASF schemas — and its AgentBridge component connects coding agents and CLIs over A2A. The Agent Network Protocol (ANP) is a community effort covering decentralised identity, discovery, messaging, and payments, with no corporate backers or standards-body affiliation shown on its site: interesting, not an industry standard.
How does the governance of A2A compare with MCP’s?
Both sit under Linux Foundation-directed governance and both are Apache-2.0, but the shape differs. A2A is steered by a Technical Steering Committee of company representatives (AWS, Cisco, Google, IBM Research, Microsoft, Salesforce, SAP, ServiceNow). MCP is established as “Model Context Protocol a Series of LF Projects, LLC” with a maintainer hierarchy — Lead, Core, Maintainers — and changes proposed as Specification Enhancement Proposals.
Company-representative committees move with vendor consensus; maintainer hierarchies move with contributor consensus. Neither is better, but the difference predicts how a change you care about will get made — and who you would have to persuade.
The interop protocols, in order
- 2023-03-23 — ChatGPT plugins connect a model to third-party APIs:
An OpenAPI manifest plus a natural-language description was all it took to hand a model somebody else’s API. Plugins proved the demand for tool integration and exposed the two problems a real protocol has to solve: discovery, and what happens when the tool’s output is hostile.
- 2023-06-13 — OpenAI ships function calling:
Models return structured requests to call functions you declared as JSON Schema. Tool use stops being a prompt-parsing hack and becomes an API contract — the single enabling primitive for production agents, and the reason tool calling belongs to the platform rather than to your prompt.
- 2024-11-05 — MCP specification revision 2024-11-05:
The first protocol revision: the
initializehandshake, stdio and HTTP+SSE transports, and the three primitives — tools, resources, prompts. It is now marked Final, and everything later in the MCP story is a revision to this shape. - 2024-11-25 — Anthropic open-sources the Model Context Protocol:
Spec, SDKs, local server support in Claude Desktop, and a repository of pre-built servers (Google Drive, Slack, GitHub, Git, Postgres, Puppeteer) shipped together, with Block, Apollo, Zed, Replit, Codeium, and Sourcegraph named as early adopters. Write the integration once, and any compliant client can use it — the reason the industry converged on it within a year.
- 2025-03-26 — MCP 2025-03-26: OAuth authorization and Streamable HTTP:
The revision that made MCP deployable over the network: an authorization framework built on OAuth 2.1 (still an IETF draft, not a published RFC), Streamable HTTP replacing HTTP+SSE, plus tool annotations and audio content. HTTP+SSE is deprecated from here — deprecated, not removed.
- 2025-04-09 — Google announces the Agent2Agent protocol:
A2A launched at Cloud Next ’25 as a draft spec for agent-to-agent communication — agent cards for discovery, tasks for delegation — with 50-plus partners endorsing it and an explicit framing as complementary to MCP, not a competitor to it. Treat the partner count as endorsement, not shipped integrations.
- 2025-06-18 — MCP 2025-06-18: elicitation, structured output, resource-server model:
JSON-RPC batching came out; elicitation (the server asking the user for input mid-call), structured tool output, and resource links went in. Security-wise this is the important one: MCP servers are classified as OAuth resource servers (RFC 9728) and must honour Resource Indicators (RFC 8707), which is what stops a token issued for one server being replayed at another.
- 2025-06-23 — Google donates A2A to the Linux Foundation:
The Agent2Agent Protocol project launched at Open Source Summit North America with AWS, Cisco, Microsoft, Salesforce, SAP, and ServiceNow joining — a protocol owned by one cloud is not a standard anyone else builds on. The IBM-originated Agent Communication Protocol later folded into A2A rather than competing with it.
- 2025-07-30 — A2A specification v0.3.0:
The last major pre-1.0 release, widening A2A beyond its original JSON-RPC-and-SSE design toward the gRPC and HTTP+JSON bindings that become normative in v1.0. Anything you built against a 0.x revision needs a version check before you call it interoperable.
- 2025-07-31 — MCP publishes a formal governance model:
“Building to Last” introduced a maintainer hierarchy and a SEP proposal process — the machinery a protocol needs before competitors will commit engineering to it. Governance is why MCP revisions arrive on a schedule instead of by announcement.
- 2025-09-08 — The official MCP Registry opens in preview:
A central metadata repository for public MCP servers — the discovery layer the ecosystem had been faking with README lists. As of September 2026 it is still preview, and the project warns that breaking changes or data resets may occur, so do not build a production dependency on its API shape.
- 2025-11-25 — MCP 2025-11-25 lands on the protocol’s first anniversary:
Icons, URL-mode elicitation, tool calling during sampling, Client ID Metadata Documents, experimental tasks, JSON Schema 2020-12 as the default dialect, and an SDK tiering system. One year, four revisions — treat the revision string in your client as a compatibility fact, not a footnote.
- 2025-12-09 — The Agentic AI Foundation forms; Anthropic donates MCP:
AAIF launched as a directed fund under the Linux Foundation with founding projects MCP, goose, and AGENTS.md, and platinum members including AWS, Anthropic, Block, Bloomberg, Cloudflare, Google, Microsoft, and OpenAI. MCP’s maintainers and governance carried on unchanged — the donation transfers the trademark and neutrality, not the roadmap.
- 2026-03-12 — A2A specification v1.0.0:
The first stable major: three normative bindings (JSON-RPC, gRPC, HTTP+JSON), the proto file as the single source of truth, and
A2A-Versionheader negotiation. v1.0.1 followed on 28 May 2026. Adoption still lags the spec — as of September 2026 Microsoft Foundry’s A2A features are public preview and Google ADK marks A2A support experimental. - 2026-07-28 — MCP 2026-07-28: the protocol goes stateless:
The current revision removes the
initializehandshake and protocol-level sessions, addsserver/discover, replaces server-initiated requests with MRTR, and introducessubscriptions/listen. Roots, sampling, logging, and Dynamic Client Registration are deprecated — deprecated, with removal no earlier than 28 July 2027. A release candidate had been published on 21 May 2026. - 2026-08-27 — A2A joins the Agentic AI Foundation:
A2A was accepted as a Growth Stage project in AAIF, putting it under the same neutral roof as MCP, goose, and AGENTS.md. The two halves of the agent protocol stack now share governance — the announcement claims 150-plus supporting organisations, which is endorsement rather than deployment.
Key terms: A2A, MCP, agent card, multi-agent system, tool call
Interactive checkpoint quiz (2 questions) — open this page in a browser to take it.