For the complete documentation index, see llms.txt. This page is also available as Markdown.

1. What is A2A?

A2A (Agent2Agent) is an open industry-standard protocol that enables AI agents built by different vendors and on different platforms to discover, communicate, and collaborate with one another. You can think of A2A as a standardized way for one agent to use another agent as a callable "capability"—without having to write custom integration code for the other party in advance.

Core Concepts

Limitations of traditional agent integration:

  • Every agent platform has its own proprietary interface, and they cannot directly call one another

  • To make Platform A call an agent on Platform B, you have to build a dedicated set of custom integration code

  • There is no unified "capability discovery" mechanism between agents, requiring manual alignment of documentation before onboarding

  • Every time you add a new partner platform, you have to develop the integration logic all over again

Capabilities enabled by A2A:

  • Standardized discovery (Agent Card): An agent can publish a "business card" that declares its name, capabilities, and authentication methods, which other agents can read automatically

  • Any agent is callable: As long as both sides support A2A, no dedicated integration code needs to be developed in advance

  • Stateful multi-turn collaboration: Both the caller and the callee can maintain their own multi-turn task context, rather than being limited to a one-off function call

  • Built-in authentication and security: Standard identity authentication methods are defined at the protocol level, so there's no need to design a separate authorization mechanism

How A2A Works

When an agent (whether one you built yourself or a platform like Microsoft Copilot Studio) needs to use the capabilities of Agent Builder, A2A completes a collaboration roughly through the following steps:

  1. Discover: Read Agent Builder's Agent Card to learn its name, feature descriptions, and available capabilities

  2. Decide: Based on the user's request, the caller independently determines whether this interaction requires Agent Builder

  3. Call: When needed, initiate the call via a standard JSON-RPC request, carrying identity credentials

  4. Respond: Agent Builder processes the request and returns the result, and the caller decides how to present it to the end user

  5. Continue: Subsequent requests carry the same context identifier, allowing the same conversation/task to continue

Difference from MCP

MCP (Model Context Protocol) addresses "how a model/agent calls tools and accesses data sources"; A2A addresses "how one agent calls another agent," where both sides can have their own reasoning capabilities and maintain their own multi-turn task state, rather than being limited to a one-way function call.

Last updated