Jiwei Yuan's Thoughts and Writings

Understanding Google A2A Protocol - The Agent-to-Agent Communication Standard

The rise of AI agents has created an interesting challenge: how do we make agents from different vendors and frameworks work together? Google’s answer is the Agent2Agent (A2A) protocol, an open standard that enables AI agents to discover, communicate, and collaborate with each other. This article explores the A2A protocol in depth, covering its architecture, key concepts, and practical implications.

What is A2A Protocol?

The Agent2Agent (A2A) protocol is a communication protocol for AI agents, initially introduced by Google at Cloud Next on April 9, 2025. It functions as an open standard enabling different AI agents to interact regardless of their underlying framework or provider.

Think of A2A as a universal translator for AI agent ecosystems. Rather than agents being locked within proprietary systems, A2A allows them to communicate across boundaries. It acts as a messaging tier that lets these agents “talk” to each other despite their distinct agentic architectures.

The protocol was launched with support from over 50 technology partners including Salesforce, SAP, ServiceNow, Atlassian, Box, Cohere, MongoDB, PayPal, and major consulting firms like Accenture, Deloitte, and McKinsey. In June 2025, Google donated A2A to the Linux Foundation, further cementing its status as an open standard.

Core Design Principles

The A2A protocol was designed around five fundamental principles:

1. Embrace Agentic Capabilities

A2A focuses on enabling agents to collaborate in their natural, unstructured modalities. Unlike tool-based integrations, A2A enables true multi-agent collaboration without requiring shared memory, tools, or context. Agents can work together even when they don’t share internal state or proprietary implementations.

2. Build on Existing Standards

The protocol is built on top of existing, popular standards:

This approach makes integration with existing IT infrastructure straightforward.

3. Secure by Default

A2A is designed to support enterprise-grade authentication and authorization, with parity to OpenAPI’s authentication schemes. It supports:

4. Support for Long-Running Tasks

A2A supports scenarios from quick tasks to deep research that may take hours or even days when humans are in the loop. The protocol provides mechanisms for asynchronous updates via webhooks and real-time streaming.

5. Modality Agnostic

The protocol supports various content types including text, audio, video streaming, files, and structured JSON data.

A2A Architecture

The following diagram illustrates the high-level architecture of the A2A protocol:

 

Key Components

The A2A protocol comprises several architectural elements:

ComponentDescription
Client AgentInitiates requests and formulates tasks to send to remote agents
Remote AgentProcesses tasks and responds with results
Agent CardJSON metadata describing agent capabilities, endpoints, and authentication requirements
TasksUnits of work with defined lifecycle states
MessagesCommunication units exchanged between agents
ArtifactsTangible outputs produced by task execution
PartsIndividual content pieces within messages (text, files, images)

Agent Cards: The Discovery Mechanism

Every A2A-compatible agent publishes a JSON file at a well-known location (/.well-known/agent.json) that describes:

Here’s an example of an Agent Card structure:

{
  "name": "Currency Converter Agent",
  "description": "Converts currencies in real-time",
  "version": "1.0.0",
  "endpoint": "https://api.example.com/agent",
  "capabilities": {
    "streaming": true,
    "pushNotifications": true
  },
  "skills": [
    {
      "name": "convert_currency",
      "description": "Convert between currencies",
      "inputSchema": { ... },
      "outputSchema": { ... }
    }
  ],
  "authentication": {
    "schemes": ["oauth2", "apiKey"]
  }
}

How A2A Works

The A2A protocol follows a structured communication flow. Here’s a sequence diagram showing the complete interaction:

 

Phase 1: Discovery

Client agents locate appropriate remote agents by fetching their agent cards. The discovery process involves:

  1. Querying known agent registries or URLs
  2. Fetching the /.well-known/agent.json file
  3. Parsing capabilities and determining compatibility
  4. Selecting the most suitable agent for the task

Phase 2: Authentication

Once a suitable agent is discovered, the client authenticates using methods specified in the agent card:

  1. Read authentication requirements from the agent card
  2. Obtain appropriate tokens (OAuth 2.0, API key, etc.)
  3. Tokens are typically short-lived (minute-level TTL) for security
  4. Include authentication in subsequent requests

Phase 3: Task Exchange

Communication happens over HTTPS using JSON-RPC 2.0:

Synchronous Tasks:

POST /task/send

Used for immediate request/response patterns.

Streaming Tasks:

POST /task/sendSubscribe

Opens a Server-Sent Events stream for long-running operations with real-time status updates.

Phase 4: Observability

Every request includes trace IDs and structured logs in OpenTelemetry Protocol format. This enables:

A2A vs MCP: Complementary Protocols

A common question is how A2A relates to Anthropic’s Model Context Protocol (MCP). The following diagram illustrates how these protocols work together:

 

The key distinction:

AspectA2AMCP
FocusAgent-to-Agent communicationAgent-to-Tool communication
PurposeEnable collaboration between autonomous agentsProvide tools and context to agents
AnalogyThe “internet” for AI agentsThe “USB port” for AI agents
Use CaseMulti-agent orchestrationTool integration

MCP standardizes how an agent connects to its tools, APIs, and resources to get information. It’s like giving an agent a set of tools it can use.

A2A standardizes how agents communicate with each other. It enables agents to delegate subtasks, exchange findings, and coordinate complex workflows.

An inventory agent might use MCP to access product databases, then use A2A to coordinate with supplier agents. These protocols are complementary, not competing.

Real-World Use Cases

Enterprise Hiring Workflow

Consider a hiring workflow enabled by A2A:

 
  1. A recruiter’s agent discovers candidate sourcing agents
  2. Coordinates interviews with scheduling agents
  3. Engages background check agents
  4. Aggregates results and presents recommendations

All of this happens within a unified interface, with agents from different vendors collaborating seamlessly.

Supply Chain Management

A supply chain scenario might involve:

  1. Demand forecasting agent (using proprietary ML models)
  2. Inventory management agent (connected to warehouse systems)
  3. Supplier coordination agent (communicating with external vendors)
  4. Logistics optimization agent (planning shipments)

Each agent maintains its proprietary logic while collaborating through A2A.

Getting Started with A2A

Available SDKs

The A2A project provides official SDKs for:

Quick Start (Python)

  1. Install the SDK:
pip install a2a-sdk
  1. Create a simple agent:
from a2a import Agent, AgentCard, Task

# Define agent capabilities
card = AgentCard(
    name="My Agent",
    description="A simple A2A agent",
    skills=[...]
)

# Create and run the agent
agent = Agent(card)
agent.serve()
  1. Interact with remote agents:
from a2a import Client

client = Client()
remote_agent = client.discover("https://example.com/.well-known/agent.json")

# Send a task
result = await remote_agent.send_task(
    task=Task(
        skill="convert_currency",
        input={"from": "USD", "to": "EUR", "amount": 100}
    )
)

Current State and Future Outlook

Adoption Challenges

Despite Google’s backing and technical sophistication, A2A has faced adoption challenges. By late 2025, MCP has emerged as the more widely adopted standard among individual developers. Key factors:

  1. Developer Experience: MCP prioritized individual developer experience over enterprise orchestration
  2. Immediate Utility: MCP integrated with existing AI assistants from day one
  3. Simplicity: MCP solved immediate problems (file access, API integration) that developers faced daily
  4. Community Momentum: MCP captured developer mindshare with grassroots adoption

Where A2A Shines

A2A remains compelling for enterprise scenarios requiring:

Conclusion

The A2A protocol represents an ambitious vision for agent interoperability. While it faces adoption challenges compared to simpler alternatives like MCP, its enterprise-focused design makes it valuable for complex multi-agent scenarios.

For developers building multi-agent systems, understanding A2A provides insight into how agent ecosystems might evolve. The protocol’s emphasis on security, observability, and long-running tasks addresses real enterprise needs that simpler protocols don’t fully solve.

Whether A2A achieves widespread adoption or influences future standards, its design principles offer valuable lessons for anyone building agent-based systems.

References

Share this post on: Share this post on X Share this post on LinkedIn