Agent2Agent (A2A) Protocol

An open protocol for communication and interaction between AI agents

What is A2A Protocol?

Agent2Agent (A2A) is an open protocol developed by Google that allows AI agents to interact with each other, securely exchange information, and coordinate actions across different platforms and applications.

A New Era of Agent Interoperability

AI agents offer a unique opportunity to help people be more productive by autonomously performing a variety of everyday or complex tasks. Today, businesses are increasingly creating and deploying autonomous agents to scale, automate, and improve processes in the workplace.

To maximize the benefits of agent AI, it's critical that these agents can collaborate in a dynamic, multi-agent ecosystem spanning disparate data systems and applications.

Key Design Principles

  • 1

    Support agent capabilities: Agents can collaborate in their natural, unstructured modalities.

  • 2

    Use existing standards: Built on HTTP, SSE, JSON-RPC.

  • 3

    Security by default: Support for enterprise authentication and authorization.

  • 4

    Support for long-running tasks: From quick tasks to deep research.

  • 5

    Modality agnostic: Support for various modalities, including audio and video.

How A2A Works

A2A facilitates communication between a "client" agent and a "remote" agent, providing a standardized way of interaction.

Capability Discovery

Agents can advertise their capabilities using an "Agent Card" in JSON format, allowing the client agent to identify the best agent for a task.

Task Management

Communication between client and remote agent is task-oriented. The "Task" object is defined by the protocol and has a lifecycle.

Collaboration

Agents can send messages to each other to convey context, responses, artifacts, or user instructions.

UX Negotiation

Each message includes "parts", allowing the client and remote agent to negotiate the proper format and user interface capabilities.

Protocol Features

A2A provides a rich set of features for creating interacting agents

Universal Compatibility

Allows agents created by different providers or in different frameworks to interact with each other.

Enterprise-Grade Security

Support for enterprise authentication and authorization, with parity to OpenAPI authentication schemes.

Multimodality

Support for various modalities, including text, audio, video, forms, and other content types.

Asynchronous Tasks

Support for both quick tasks and long-running research, with real-time feedback.

Structured Data

Ability to exchange structured data between agents for more efficient interaction.

Open Community

Support and contributions from more than 50 technology partners, including Atlassian, SAP, Salesforce, and others.

Usage Examples

See how A2A can be used in real-world scenarios

Job Candidate Search

Hiring a developer can be significantly simplified with A2A collaboration. In a single interface, a user can task their agent with finding candidates matching a job position, location, and skill set.

The agent interacts with other specialized agents to search for potential candidates. The user receives these suggestions and can then task their agent with scheduling further interviews.

Demo Web Application

The Google A2A repository includes a demo web application that showcases agents interacting through the A2A protocol.

  • Frontend based on mesop
  • "Host Agent" based on Google ADK, which orchestrates user requests
  • Each "Remote Agent" is an A2AClient running inside a Google ADK agent
  • Supports displaying text content, thought bubbles, web forms, and images

Movie Agent

Uses TMDB API to search for movie information and answer questions. Demonstrates integration of external APIs with the A2A protocol.

View example on GitHub

Coder Agent

Generates full code files as artifacts. Shows how agents can create and transfer files through the A2A protocol.

View example on GitHub

Framework Integrations

A2A integrates with popular frameworks for creating agents

Google ADK

Google's official agent development toolkit with full A2A protocol support.

Learn More

LangGraph

Framework for creating agents using graphs with A2A protocol integration.

Learn More

CrewAI

Framework for creating agent teams with A2A protocol support for communication.

Learn More

Genkit

Framework for creating AI applications using Node.js and Go, integrates with A2A.

Learn More

Resources

Useful resources for learning about and using the A2A protocol

Partners

A2A is supported by more than 50 technology partners

Atlassian
Box
Cohere
Intuit
LangChain
MongoDB
PayPal
Salesforce
SAP
ServiceNow
UKG
Workday

Start Using A2A Today

Join the new era of agent interoperability and create more powerful and versatile agent systems.