A2A vs MCP: what changed in 2026
A2A describes how independent agents exchange work. MCP exposes tools, resources, and prompts to an AI application. These are different integration boundaries; an A2A agent can use MCP internally. The boundary is more useful than the claim that one protocol has tasks and the other only has functions.
Two boundaries, two protocols
Agent skills and task/message operations → A2A. Tools, resources, prompts → MCP.
Pin the specification, not a moving URL
Reviewed on October 21, 2026. The latest published A2A specification release is 1.0.1. Its wire version is still 1.0: use protocolVersion: "1.0" in supportedInterfaces and A2A-Version: 1.0 on requests. The top-level version belongs to your service, not to A2A. A specification patch does not require renaming your endpoint or changing your agent version.
Discovery without the old handshake
MCP revision 2026-07-28 removes the initialize/notifications/initialized handshake and protocol-level sessions. Requests carry protocol version and client capabilities in _meta. server/discover advertises server identity, capabilities, and supported versions. It is therefore incorrect to describe current MCP discovery as necessarily occurring after initialize. Older revisions still exist: negotiate the revision your client and server actually implement.
MCP 2026-07-28 · MCP changelog
A practical comparison
A2A starts with an Agent Card at /.well-known/agent-card.json. It advertises supported interfaces and skills before invocation. MCP discovery is an RPC contract; it is not an A2A Agent Card and does not make an MCP server an A2A peer. A client still needs a way to locate the MCP server.
| Concern | A2A | MCP |
|---|---|---|
| Baseline | Release 1.0.1; wire 1.0 | Revision 2026-07-28 |
| Discovery | Public Agent Card | server/discover RPC |
| Work contract | Agent skills and task/message operations | Tools, resources, prompts |
| Long-running work | A2A task model | Optional tasks extension |
Long-running work is not an exclusive feature
MCP now defines long-running tasks in an optional extension, rather than in the core specification. Do not use “MCP cannot run asynchronous work” as a selection rule. Choose A2A when the integration needs independent agent identity, skills, and its task model; choose MCP when exposing tools or contextual data. Check optional capabilities on both sides.
Where x402 fits
The A2A x402 extension specification remains v0.1. Declare its canonical URI in capabilities.extensions; the repository moving to google-agentic-commerce does not change that URI. Enabling the generator option only creates discovery metadata. It does not install a wallet, verify payment, or settle funds. Implement and test the runtime payment flow separately.
https://github.com/google-a2a/a2a-x402/v0.1
Check the deployed interface
Validate JSON, publish the standard discovery path over HTTPS, and check the real response. Inspect the final URL after redirects, content type, Cache-Control, and ETag. Caching headers are recommendations, not mandatory card fields. An ETag header alone does not prove that conditional GET returns 304; a valid card alone does not prove its advertised endpoint works.
curl -i https://your-agent.example/.well-known/agent-card.json
Frequently asked questions
Should protocolVersion become 1.0.1?
No. A2A uses Major.Minor for the wire version. The validator now explains patch-number declarations.
Does current MCP require initialize?
The 2026-07-28 revision removes that handshake. Earlier revisions have different rules, so pin the revision instead of mixing examples.
Does the x402 switch enable paid API calls?
No. It declares extension support in the generated card; your service still needs payment verification and settlement.
References
- A2A 1.0.1 release notesgithub.com/a2aproject/A2A/releases/tag/v1.0.1
- A2A 1.0.1 specificationraw.githubusercontent.com/a2aproject/A2A/v1.0.1/docs/specification.md
- MCP 2026-07-28modelcontextprotocol.io/specification/2026-07-28
- MCP 2026-07-28 changelogmodelcontextprotocol.io/specification/2026-07-28/changelog
- A2A x402 v0.1github.com/google-agentic-commerce/a2a-x402/blob/main/spec/v0.1/spec.md
Related tool: Well-known URL Checker
Read more guides
Next step
Check the card your clients actually receive.
Validate the JSON, then inspect the discovery response and caching headers.