
Contents
- ๐ Overview
- ๐ Getting Started
- ๐ Resources
- ๐ป Implementations
- ๐ด AgentCard
- ๐ค Community Implementations
- ๐ฅ Community
- ๐ค Contributing
Overview
A2A (Agent2Agent) is an open protocol from Google enabling AI agents to communicate securely and collaborate. It breaks down silos between isolated agent systems, allowing for complex cross-application automation.
Key Features:
- ๐ฏ Simple: Uses HTTP, JSON-RPC, SSE
- ๐ข Enterprise Ready: Focuses on security and privacy
- โก Async First: Handles long-running tasks
- ๐ Modality Agnostic: Supports text, files, forms, streams
- ๐ Opaque Execution: Agents interact without sharing internal logic
Official Links:
- ๐ Website: google.github.io/A2A
- ๐ฆ GitHub: github.com/google/A2A
Getting Started
-
Learn the Basics
- ๐ Read the technical documentation
- ๐ฅ Watch the demo video
-
Run Samples
- ๐ฅ Clone the official repo
- ๐ Follow instructions in
/samples
-
Build Your Own
- ๐ ๏ธ Use official libraries or adapt samples
- ๐๏ธ Start with a basic A2A agent or client
Resources
Official Documentation
- ๐บ๐ธ Technical Documentation
- ๐บ๐ธ JSON Specification
- ๐บ๐ธ Agent Card Specification
Community Documentation
- ๐บ๐ธ A2A TypeScript Guide - A comprehensive guide for implementing A2A in TypeScript
- ๐บ๐ธ A2A vs MCP - Comparison between A2A and Model Context Protocol
- ๐บ๐ธ Understanding A2A Protocol - Deep dive into A2A protocol concepts
- ๐บ๐ธ A2A Sample Methods and JSON Responses - Detailed examples of A2A methods and responses
- ๐บ๐ธ Python A2A: A powerful and easy-to-use library for implementing Google's Agent2Agent (A2A) protocol - Link
- ๐จ๐ณ A2A ๅ่ฎฎไป็ป - A2A ๅ่ฎฎ็ไธญๆไป็ป
Implementations
Official Samples
Python
- ๐ Common Library: Core HTTP, JSON-RPC, SSE handling - Link
- ๐ Host (Client): Command-line client example - Link
- ๐ Host (Agent): Orchestrator agent delegating to A2A agents - Link
JavaScript/TypeScript
- ๐ Server Library: Core server implementation - Link
- ๐ Client Library: Client implementation - Link
- ๐ Host (Client): Command-line client example - Link
Community Implementations
| Name | Author | Description |
|---|---|---|
| legion-a2a | @TheRaLabs | A TypeScript implementation of the A2A protocol with a focus on modularity and extensibility |
| a2a-go | @a2aserver | A Go library for building A2A servers, with example implementations |
| a2a-rs | @EmilLindfors | An idiomatic Rust implementation following hexagonal architecture principles |
| a2a_min | @pcingola | A minimalistic Python SDK for A2A communication |
| a2adotnet | @azixaka | A C#/.NET implementation of the A2A protocol |
| nestjs-a2a | @thestupd | A module for integrating the A2A protocol into NestJS applications |
| python-a2a | @themanojdesai | An easy-to-use Python library for implementing the A2A protocol |
| Aira | @IhateCreatingUserNames2 | An A2A network implementation for hosting, registering, discovering, and interacting with agents |
| Cognisphere | @IhateCreatingUserNames2 | An AI agent development framework built on Google's ADK, facilitating agent creation potentially for A2A networks |
Framework Integrations
Python
- ๐ LangGraph: Currency conversion (Features: Tools, Streaming, Multi-turn) - Link
- ๐ CrewAI: Image generation (Features: Non-textual Artifacts (Files)) - Link
- ๐ Google ADK: Expense reimbursement (Features: Multi-turn, Forms (DataPart)) - Link
- ๐ Python A2A: A powerful and easy-to-use library for implementing Google's Agent2Agent (A2A) protocol - Link
JavaScript/TypeScript
- ๐ Genkit: Movie info / Code generation (Features: Tools, Artifacts (Files), Async) - Link
Community Samples
JavaScript/TypeScript
- ๐ a2a-agent-coder: A Coder Agent implementation with A2A Server and Client - Link
AgentCard
Community
- ๐ GitHub Issues
- ๐ฌ GitHub Discussions
Contributing
Related Articles
Related Articles
Explore more content related to this topic
A2UI Introduction - Declarative UI Protocol for Agent-Driven Interfaces
Discover A2UI, the declarative UI protocol that enables AI agents to generate rich, interactive user interfaces. Learn how A2UI works, who it's for, how to use it, and see real-world examples from Google Opal, Gemini Enterprise, and Flutter GenUI SDK.
Agent Gateway Protocol (AGP): Practical Tutorial and Specification
Learn the Agent Gateway Protocol (AGP): what it is, problems it solves, core spec (capability announcements, intent payloads, routing and error codes), routing algorithm, and how to run a working simulation.
Integrating A2A Protocol - Intelligent Agent Communication Solution for BeeAI Framework
Using A2A protocol instead of ACP is a better choice for BeeAI, reducing protocol fragmentation and improving ecosystem integration.
A2A vs ACP Protocol Comparison Analysis Report
A2A (Agent2Agent Protocol) and ACP (Agent Communication Protocol) represent two mainstream technical approaches in AI multi-agent system communication: 'cross-platform interoperability' and 'local/edge autonomy' respectively. A2A, with its powerful cross-vendor interconnection capabilities and rich task collaboration mechanisms, has become the preferred choice for cloud-based and distributed multi-agent scenarios; while ACP, with its low-latency, local-first, cloud-independent characteristics, is suitable for privacy-sensitive, bandwidth-constrained, or edge computing environments. Both protocols have their own focus in protocol design, ecosystem construction, and standardization governance, and are expected to further converge in openness in the future. Developers are advised to choose the most suitable protocol stack based on actual business needs.
Building an A2A Currency Agent with LangGraph
This guide provides a detailed explanation of how to build an A2A-compliant agent using LangGraph and the Google Gemini model. We'll walk through the Currency Agent example from the A2A Python SDK, explaining each component, the flow of data, and how the A2A protocol facilitates agent interactions.