BACK_TO_PROTOCOLS

// PROTOCOL_EXPLAINER

A2A

Agent2Agent Protocol

LIVE

Open protocol enabling AI agents to discover, communicate, and collaborate with each other.

VendorGoogle
Released2025
SpecGitHub

The Agent2Agent (A2A) Protocol is an open standard developed by Google that enables AI agents built on different frameworks to communicate and collaborate. Where MCP standardizes agent-to-tool connections, A2A standardizes agent-to-agent interactions. Released in April 2025, it defines how agents discover each other via Agent Cards, negotiate tasks, exchange messages, and stream results. A2A is framework-agnostic — agents built with Google ADK, CrewAI, LangChain, or AutoGen can all interoperate.

Agent2Agent Protocol (A2A) architecture diagram showing the A2A protocol flow: Open protocol enabling AI agents to discover, communicate, and collaborate with each other.

// FIGURE_01 — A2A architecture overview: Google · 2025 · HTTP with JSON-RPC 2.0, Server-Sent Events (SSE) for streaming, Agent Card discovery at /.well-known/agent.json

01What is the Agent2Agent Protocol?

A2A is an open protocol that solves the agent interoperability problem. Today, AI agents are built in silos — a CrewAI agent can't easily talk to a LangChain agent, and neither can delegate tasks to a Google ADK agent. A2A provides a common language. Any agent that implements the A2A specification can discover other A2A agents, send them tasks, receive results, and stream intermediate updates. The protocol is built on HTTP, JSON-RPC 2.0, and Server-Sent Events (SSE) — standard web technologies that require no special infrastructure.

02How A2A Works: Client and Remote Agents

A2A defines two roles. A Client Agent is the agent that initiates a task — it has a goal and needs help. A Remote Agent is the agent that receives the task — it has capabilities the client needs. The client discovers remote agents via their Agent Card, a JSON document hosted at a well-known URL (.well-known/agent.json) that describes the agent's capabilities, skills, authentication requirements, and endpoints. Once discovered, the client sends a task via JSON-RPC. The remote agent processes it and returns results either synchronously or via streaming updates through SSE.

03Agent Cards: Capability Discovery

The Agent Card is A2A's discovery mechanism. It's a JSON document that every A2A-compatible agent serves at /.well-known/agent.json. The card includes the agent's name, description, version, a list of skills (what the agent can do), the URL for sending tasks, authentication requirements, and whether the agent supports streaming. Client agents fetch Agent Cards to decide which remote agent has the right capabilities for a given task. This is analogous to how MCP servers list their tools — but for agent-to-agent discovery.

04Tasks, Messages, and Artifacts

A2A models collaboration as Tasks. A client agent creates a task with an initial message. The remote agent processes the task, potentially exchanging multiple messages back and forth. Tasks can be synchronous (immediate response) or long-running (with streaming updates via SSE). When complete, the task produces Artifacts — the deliverables the client requested. This task lifecycle maps naturally to real-world agent collaboration: one agent asks another to do something, they exchange messages to clarify, and the result is delivered as an artifact.

05A2A and MCP: A Layered Architecture

A2A and MCP are complementary, not competing. MCP operates at the context layer — connecting agents to tools and data. A2A operates at the collaboration layer — connecting agents to each other. A typical multi-agent system uses both: each agent uses MCP to access its own tools and data sources, and A2A to communicate with other agents. For example, a research agent might use MCP to query a database, then use A2A to delegate analysis to a specialized analytics agent, which in turn uses MCP to access visualization tools.

06Adoption and Ecosystem

A2A launched with support from over 50 partners including Google, Salesforce, SAP, ServiceNow, and Atlassian. Major agent frameworks have added A2A compatibility: Google's Agent Development Kit (ADK), CrewAI, LangChain, and AutoGen all support the protocol. The specification is open-source and community-driven, with Google contributing the reference implementation. Adoption is growing fastest in enterprise environments where multi-agent orchestration across different vendor platforms is a real need.

// KEY_CONCEPTS

Core Concepts

Agent Card

JSON document at /.well-known/agent.json describing an agent's capabilities, skills, and endpoints. The discovery mechanism.

Client Agent

The agent that initiates a task. It discovers remote agents, sends tasks, and processes results.

Remote Agent

The agent that receives and processes tasks. It serves an Agent Card and handles incoming JSON-RPC requests.

Task

A unit of work sent from client to remote agent. Has a lifecycle: created, in-progress, completed, failed.

Artifact

The deliverable produced by a completed task. Can be text, structured data, files, or other formats.

Streaming

Long-running tasks can stream intermediate updates to the client via Server-Sent Events (SSE).

// ARCHITECTURE

How It Works

STEP_01

Client Agent

Initiates a task. Discovers remote agents via Agent Cards, sends JSON-RPC requests, processes results.

STEP_02

Agent Card

Served at /.well-known/agent.json. Describes capabilities, skills, endpoints, auth requirements.

STEP_03

Remote Agent

Receives tasks, processes them using its own tools and MCP connections, returns artifacts.

STEP_04

Transport

HTTP + JSON-RPC 2.0 for requests/responses. SSE for streaming updates on long-running tasks.

// TRANSPORT_LAYERS

  • HTTP with JSON-RPC 2.0
  • Server-Sent Events (SSE) for streaming
  • Agent Card discovery at /.well-known/agent.json

// USE_CASES

When to Use A2A

01

Multi-agent orchestration — a coordinator agent delegates subtasks to specialized agents

02

Agent marketplaces — agents discover and hire each other based on Agent Card capabilities

03

Cross-framework collaboration — CrewAI agents work with LangChain agents seamlessly

04

Enterprise workflows — agents from different vendors (Google, Salesforce, SAP) collaborate

05

Distributed task execution — long-running tasks stream progress updates to the requesting agent

// SUPPORTED_AGENTS

Agents Using A2A

Google ADKCrewAILangChainAutoGenSalesforce Agentforce
BROWSE_ALL_AGENTS

// PROTOCOL_COMPARISON

A2A vs Other Protocols

AspectMCPA2ACURRENTACP
Primary purposeAgent-to-tool/dataAgent-to-agent collaborationAgent-to-agent via REST
DiscoveryServer lists tools/resources at connectionAgent Card at /.well-known/agent.jsonOpenAPI spec at agent endpoint
Message formatJSON-RPC 2.0JSON-RPC 2.0 over HTTPHTTP REST / JSON
StreamingSSE via Streamable HTTPSSE for task updatesPolling or webhooks
GovernanceAnthropicGoogle (50+ partners)Cisco / BeeAI
Best forConnecting agents to tools and dataMulti-agent collaboration across frameworksWeb-native, REST-first agent communication

// FAQ

Frequently Asked Questions

// WRITTEN_BY

Laurent Yew — Founder

Laurent Yew

Founder

Laurent Yew is the founder of AgentResourceDB, where he leads the platform's vision of building a unified, trust-first discovery layer for the AI agent ecosystem. With over a decade of experience scaling AI and SaaS products, Laurent has dedicated his career to making complex developer infrastructure accessible, transparent, and reliable. He writes about agent registries, protocol interoperability, and the future of agent-to-agent collaboration, drawing from hands-on work building evaluation frameworks that help developers cut through the noise of 100,000+ agents. Through AgentResourceDB, he is committed to establishing the trust standards the industry needs as AI agents move from experimentation to production.

AI Agent InfrastructureRegistry ArchitectureProtocol InteroperabilityTrust & Evaluation

// EXPLORE_MORE

Discover Agents by Category

Browse A2A-compatible agents across 15 categories — from coding and research to security and DevOps.

BROWSE_CATEGORIES