Standards
MCP and A2A: what open agent protocols buy you
Two standards settled in 2026, and they are complements rather than rivals. MCP is how an agent reaches tools and data. A2A is how agents reach each other. The reason a business owner should care is not architectural elegance — it is that both are exit routes from a platform decision made before you knew enough to make it.
The short answer: the Model Context Protocol (MCP) standardises the connection between an agent and the tools, data and services it uses. The Agent-to-Agent protocol (A2A) standardises how independent agents discover each other, exchange tasks and return results across organisational and vendor boundaries. Both are Linux Foundation projects. A platform that speaks them means your connectors and your agent-to-agent links are not proprietary wiring you would have to rebuild elsewhere.
Third-party figures on this page were checked on 26 September 2026 against the publishing organisation's own release or report. Research in this field ages quickly and definitions vary between surveys — treat any undated statistic with suspicion, including on our own pages.
Where each one sits
| MCP | A2A | |
|---|---|---|
| Connects | An agent to tools, data sources and services | An agent to another agent, as peers |
| Typical use | Reading a CRM, querying a database, calling an internal API | Handing a task to a specialist agent owned by another team or company |
| Directions | Consuming a server; or exposing your own agent as one | Sending to a remote agent; or publishing a card so others can send to you |
| Status | Specification dated 25 November 2025; Linux Foundation project | v1.0 released April 2026; donated by Google to the Linux Foundation; 150+ supporting organisations |
The clean way to hold it: MCP is about capability — what an agent can do. A2A is about collaboration — who an agent can ask. A team of agents inside one deployment does not need A2A to talk to each other; A2A earns its place the moment one of the parties is outside your boundary.
What A2A reaching v1.0 actually changed
Two things, both commercial rather than technical. Landing in AWS, Microsoft and Google platforms means a large customer can now require A2A support in a procurement document and expect it to be met. And 150-plus supporting organisations with production deployments across supply chain, financial services, insurance and IT operations means it stopped being a demo protocol.
The near-term consequence for a smaller business is modest but real: the agent you build this year has a defined way to be called by a partner's system next year, without a bespoke integration project on both sides.
The four directions, and which ones you will actually use
Each protocol runs both ways, which produces four capabilities that are easy to confuse:
- Consuming MCP servers. Your agent uses someone's tool. This is the one everybody uses, and the one worth checking first: how many servers, how is auth handled, what happens when a token expires. That last question is more operationally important than the count — see why MCP connections keep breaking.
- Exposing an agent as an MCP server. Your agent becomes a tool other systems can call. Useful when a colleague's IDE, a partner's platform or an internal system should be able to ask your agent something. Covered in exposing your agent as an MCP server.
- Sending over A2A. Your agent delegates to a remote agent it has been told about. The control that matters is that the list of addressable agents is configuration, not a parameter the model can invent.
- Publishing an A2A agent card. Others can discover and call your agent. This is the one to enable deliberately and never by default, because it is an inbound door.
The questions worth asking a platform
- Which directions do you support? "We support MCP" usually means direction one only. That is fine — but know it.
- How are credentials scoped? A per-agent scope beats an account-wide one, and a secret the model never sees beats one pasted into a prompt.
- What happens to an inbound call's permissions? A request arriving over MCP or A2A is not your operator. It should not inherit an operator's approval rights — it should land on the approval boundary like any other untrusted origin.
- Is the address list configuration? If an agent can be talked into calling an arbitrary URL, the protocol has become an exfiltration path. This is the same reasoning as prompt injection containment.
- What is logged? Cross-boundary calls are exactly the ones you will be asked to account for later.
Does an open protocol actually prevent lock-in?
Partly, and it is worth being precise about which part. Protocols make the edges portable: your connectors and your inter-agent links are re-creatable elsewhere because they follow a published spec. They do nothing for the middle — an agent's accumulated memory, its skills, its configuration and its history are not covered by either standard, and that is usually where the real switching cost sits.
So the protocol question is necessary and not sufficient. Ask it alongside the export question: can I take the agent's memory and history out, in a form something else could read? Platform lock-in and what it costs works through the full list, and are agent skills portable covers the part people assume is standardised and mostly is not.
Olano's position
Olano speaks both protocols in both directions. Agents consume MCP servers and can be exposed as one; agents send to remote A2A agents and can publish an agent card for inbound calls. Inbound requests over either protocol run as an external, non-owner origin, so they meet the approval boundary rather than bypassing it, and the addressable remote agents are configuration rather than something a model can improvise. The reference pages are MCP and A2A in the glossary, and channels and connectors in the docs.
Related reading
Expose your agent as an MCP server
The inbound direction, and what changes about permissions when a call arrives from outside.
Why MCP connections keep breaking
Token expiry is the operational reality behind the connector count on a feature list.
Platform lock-in
Protocols make the edges portable. The memory, skills and history in the middle are the real cost.
A2A
The short definition, for when you need one sentence rather than a page.
FAQ
What is the difference between MCP and A2A?
MCP — the Model Context Protocol — standardises how an agent connects to tools, data sources and services. A2A standardises how independent agents discover each other, exchange tasks and return results across organisational and vendor boundaries. MCP is about what an agent can do; A2A is about who it can ask. They are complements, and both are Linux Foundation projects.
Is A2A a standard now?
It reached v1.0 in April 2026 with more than 150 supporting organisations, after being donated by Google to the Linux Foundation, and has been integrated into the major cloud platforms with production deployments across supply chain, financial services, insurance and IT operations. That is enough to make it a procurement requirement rather than a demo protocol.
Do I need A2A if my agents already work together?
Probably not. Agents inside one deployment can coordinate without it. A2A earns its place when one of the parties is outside your boundary — a partner's agent, a customer's system, a vendor's service — because it removes the need for a bespoke integration on both sides.
Do open protocols prevent vendor lock-in?
Only at the edges. MCP and A2A make your connectors and inter-agent links re-creatable elsewhere because they follow a published spec. Neither covers an agent's accumulated memory, its skills, its configuration or its history — which is usually where the real switching cost is. Ask the protocol question alongside the export question.
Is it safe to expose an agent over MCP or A2A?
It is safe when inbound calls are treated as an untrusted origin rather than as the operator. A request arriving over either protocol should not inherit approval rights: it should meet the same approval boundary as anything else external, the list of addressable remote agents should be configuration rather than something a model can improvise, and every cross-boundary call should be logged.
Both protocols, both directions
Consume MCP servers, expose your agent as one, send to remote agents over A2A and publish a card for inbound calls — with external origins meeting the approval boundary rather than bypassing it.