Agent2Agent Protocol (A2A)
What is Agent2Agent Protocol?
Agent2Agent Protocol, or A2A, is an open protocol for communication and collaboration between independent AI-agent systems. It provides common concepts for discovering an agent’s capabilities, sending messages, managing tasks, tracking status, and receiving results without requiring access to the remote agent’s internal memory, tools, or implementation.
The project is open source under the Linux Foundation and was contributed by Google.
How A2A works
An A2A client can use an Agent Card to understand a remote agent’s identity, endpoint, supported capabilities, skills, and security requirements. It can then send a message to request work.
The remote agent may respond immediately with a message or create a task for longer-running work. Tasks can have status, history, and artifacts. Messages support communication and clarification, while artifacts represent concrete outputs such as documents, images, or structured data.
This model supports agents built with different frameworks or languages as long as they implement the protocol interface.
Simple example
A procurement agent may ask a separate compliance agent to review a supplier. The compliance agent advertises its review skill, accepts the task, requests missing documents if needed, reports progress, and returns a structured risk artifact.
The procurement agent remains responsible for deciding how to use that result.
A2A versus ordinary API calls
An API can expose any software operation. A2A defines agent-oriented interaction patterns, including capability discovery, messages, task lifecycle, status, and artifacts.
A remote A2A agent is more than a single function: it may plan, use its own tools, and manage long-running work behind an opaque boundary.
A2A versus MCP
A2A focuses on agent-to-agent collaboration. Model Context Protocol focuses on connecting an AI application to external resources, prompts, and tools.
An agent can use MCP internally to access capabilities while exposing its collaborative service through A2A. Neither protocol automatically turns a system into a well-designed multi-agent architecture.
Security and reliability
Protocol compatibility does not establish trust. Clients must authenticate remote agents, authorize requests, validate returned artifacts, protect sensitive context, and handle failed, rejected, or input-required tasks.
Clear task ownership and provenance remain essential because remote agents can produce incomplete or incorrect results.