🌐 English | 中文 | 日本語 | Deutsch
- 📋 Overview
- 🚀 Getting Started
- 📚 Resources
- 📦 Official Samples
- 🛠️ Tools
- 🤝 Community Implementations
- 🎯 Community Samples
- 👥 Community
- 🤝 Contributing
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: https://github.com/google-a2a/A2A
-
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
Project Name | Description | Link |
---|---|---|
Google ADK | Expense report filling agent, showcasing multi-turn interactions and web form handling | google_adk |
AG2 + MCP | MCP-enabled agent based on AG2 framework | ag2 |
Azure AI Foundry | Agent based on Azure AI Foundry services | azureaifoundry_sdk |
LangGraph | Currency conversion agent with tool usage and streaming updates | langgraph |
CrewAI | Image generation agent with multi-turn interactions and image transmission | crewai |
LlamaIndex | File parsing and chat agent with file upload and streaming updates | llama_index_file_chat |
Marvin | Contact information extraction agent | marvin |
MindsDB | Enterprise data agent supporting database queries | mindsdb |
Semantic Kernel | Travel agent based on Microsoft Semantic Kernel framework | semantickernel |
AutoGen | AutoGen framework example | autogen |
Hello World | Basic example agent | helloworld |
Veo Video Generation | Video generation agent | veo_video_gen |
Analytics | Analytics agent | analytics |
A2A Telemetry | Telemetry data agent | a2a_telemetry |
A2A MCP | MCP protocol agent | a2a_mcp |
Birthday Planner ADK | Birthday planning agent | birthday_planner_adk |
Headless Agent Auth | Headless agent authentication example | headless_agent_auth |
Project Name | Description | Link |
---|---|---|
CLI | Command line client | cli |
Multiagent | Multi-agent orchestrator | multiagent |
Project Name | Description | Link |
---|---|---|
Server | Go language A2A server implementation | server |
Client | Go language A2A client implementation | client |
Models | Shared data structures | models |
Project Name | Description | Link |
---|---|---|
Movie Agent | Movie information search agent using TMDB API | movie-agent |
Coder Agent | Code generation agent | coder |
Essential tools for A2A protocol development, testing, and validation.
Name | Author | Description | Stars |
---|---|---|---|
a2a-python | Official Python SDK for the Agent2Agent (A2A) Protocol | ||
a2a-js | @google-a2a | Official JavaScript SDK for the Agent2Agent (A2A) Protocol - A JavaScript library that helps run agentic applications as A2AServers | |
a2a-java | @a2aproject | Official Java SDK for the Agent2Agent (A2A) Protocol - A Java library that helps run agentic applications as A2AServers | |
a2a-go | @a2aproject | Official Go SDK for the Agent2Agent (A2A) Protocol | |
a2ajava | @vishalmysore | A pure Java implementation of Google's A2A protocol for Spring Boot applications, featuring both client and server implementations | |
a2a4j | @a2ap | A2A4J is a comprehensive Java implementation of the Agent2Agent Protocol, including server, client, examples, and a starter — ready to use out of the box. | |
legion-a2a | @TheRaLabs | A TypeScript implementation of the A2A protocol with a focus on modularity and extensibility | |
trpc-a2a-go | @trpc-group | Go A2A implementation by the tRPC team featuring full client/server support, in-memory task management, streaming responses, session management, multiple auth methods (JWT, API Key, OAuth2), and comprehensive examples | |
jira-a2a | @tuannvm | The Jira A2A system is a DevOps workflow automation platform using the tRPC-A2A-Go framework. It consists of independent Go agents that communicate via A2A messages. | |
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 | |
a2a-server | @chrishayuk | A lightweight A2A python implementation | |
a2a-cli | @chrishayuk | A command-line client for the A2A | |
A2A Test Suit | @robert-at-pretension-io | A2A Test Suite | |
Grasp | @adcentury | A Self-hosted Browser Using Agent with built-in MCP and A2A support | |
swissknife | @daltonnyx | A multi-agent chat application with MCP support, aiming to expose agents via the A2A protocol and connect to remote A2A agents as a client | |
artinet-sdk | @the-artinet-project | A JS/TS SDK for the Agent2Agent Protocol with a focus on developer experience and comprehensive features | |
a2a-validation-tool | @llmx-de | A desktop application for testing and validating Agent-to-Agent (A2A) protocol implementations |
Name | Author | Description | Stars |
---|---|---|---|
a2a-agent-coder | @sing1ee | A Coder Agent implementation with A2A Server and Client | |
agentic-trading | @kweinmeister | A sample application demonstrating Google ADK and A2A interoperability for trading automation | |
python-a2a-tutorial | @sing1ee | A comprehensive tutorial for implementing A2A in Python with practical examples | |
a2a-python-currency | @sing1ee | A tutorial implementation of a Currency Agent using the A2A Python SDK | |
a2a-mcp-openrouter | @sing1ee | Demonstrates A2A + MCP integration using OpenRouter as LLM provider, showcasing unified interface for agent-to-agent communication and tool invocation | |
a2a_llama_index_file_chat | @sing1ee | A LlamaIndex-based file chat agent supporting file upload/parsing, conversational interactions, streaming responses, and in-line citations |
Contributions are welcome! Please read the contributing guidelines first.