A curated list of Agent-to-Agent (A2A) libraries and SDKs, organized by programming language.
This list focuses exclusively on code libraries that implement or support the Agent-to-Agent (A2A) protocol for interoperable agent communication.
Agent-to-Agent (A2A) is an open protocol designed to enable secure, peer-to-peer communication and collaboration between autonomous AI agents, regardless of framework, runtime, or vendor. By standardizing the way agents exchange tasks, messages, and results, A2A allows developers to build interoperable, multi-agent systems capable of complex cross-application automation.
Key features of A2A include:
- Framework-agnostic: Works across different AI agent frameworks and programming languages.
- Peer-to-peer communication: Direct agent-to-agent messaging, with optional server-mediated routing.
- Async-first design: Supports long-running tasks and human-in-the-loop scenarios.
- Modality-agnostic: Handles text, files, forms, streams, and other data types.
- Opaque execution: Agents interact without exposing internal logic or proprietary tools.
- Enterprise-ready: Includes authentication, security, privacy, and monitoring considerations.
- Announcement Blog Post β Google's introduction to A2A.
- GitHub Repository β Source code, spec, and official samples.
- Official Documentation β Detailed technical reference and examples.
- Scope
- How to Read This List
- Libraries by Language
- UI / Visual Orchestration for A2A
- Related Ecosystem
- Contribution Guidelines
- License
Included
- A2A SDKs and client libraries
- A2A servers, registries, and transports
- Language-native agent libraries with A2A support
- Utilities directly enabling A2A communication
Excluded
- Non-A2A agent frameworks
- SaaS platforms or hosted products
- UI tools or prompt collections/templates
For broader agent framework coverage see awesome-ai-agents or awesome-agent-papers for new π research on genAI & agents.
Currently, libraries for the following programming languages are supported:
[ Python ] [ JavaScript / TypeScript ] [ Rust ] [ Java ] [ Go ] [ C# ]
ββ
ββ
ββ
ββ
ββ
Libraries are grouped by programming language. Each entry is described using a small set of consistent classifications focused on A2A protocol responsibilities and usability.
What part of the Agent-to-Agent protocol the library implements:
Clientβ initiates A2A tasks and conversationsServerβ receives, executes, and responds to A2A tasksClient + Serverβ full A2A node implementationSpec / Schemaβ protocol definitions, schemas, or validatorsToolingβ testing, debugging, CLI, or developer utilities for A2A
How opinionated or low-level the library is:
Low-levelβ raw protocol primitivesMid-levelβ helpers and lifecycle abstractionsHigh-levelβ batteries-included, minimal boilerplate
How agents communicate or integrate:
HTTP / RESTWebSocketgRPCJSON-RPCCustom transportPluggable transport
Current stability of the project:
Experimentalβ early-stage, APIs may changeUsableβ stable enough for real projectsProduction-readyβ battle-tested in production
Optional tags highlight notable characteristics:
- π Multi-agent
- π Auth / Security
- β‘ High-performance
- π§ͺ Research / Prototype
- π’ Enterprise-oriented
- π Framework integration
- π§© Extensible
- π Spec-faithful
Tip: Only include libraries that are publicly available, actively maintained, and relevant to A2A or agent orchestration.
-
The official Python SDK for the Agent2Agent (A2A) Protocol, enabling building A2Aβcompliant agents and servers.
- A2A Capability: Client + Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST (JSON-RPC), gRPC
- Maturity: Production-ready
- Notes: Official reference SDK with async support via
a2a-sdkpackage and full protocol coverage. - Tags: π Multi-agent, π’ Enterprise-oriented, π Spec-faithful
-
A Python agent framework with native A2A support via
to_a2a()that can expose agents as A2A servers using FastA2A.- A2A Capability: Client + Server
- Abstraction Level: High-level
- Transport / Integration: HTTP / REST
- Maturity: Usable
- Notes: Strong type-safety and FastAPI-style ergonomics; A2A is an integration, not the core focus.
- Tags: π Multi-agent, π Framework integration, π§© Extensible
-
An ASGI-based A2A server implementation designed to expose agents as A2A endpoints.
- A2A Capability: Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST
- Maturity: Experimental
- Notes: Tight FastAPI integration; often used together with Pydantic AI.
- Tags: π§ͺ Research / Prototype, π Framework integration
-
cA2A (CLI utility)
A simple CLI utility for interacting with A2A agents, useful for debugging or prototyping.
- A2A Capability: Tooling
- Abstraction Level: High-level
- Transport / Integration: HTTP / REST
- Maturity: Experimental
- Notes: Useful for manual inspection and protocol exploration.
- Tags: π§ͺ Research / Prototype
-
CrewAI is a multi-agent orchestration platform that supports A2A agent delegation, enabling agents to assign tasks to other agents and communicate via the A2A protocol. The following π docs showcase how A2A is implemented by crewAI.
- A2A Capability: Client + Server
- Abstraction Level: High-level
- Transport / Integration: Pluggable transport
- Maturity: Production-ready
- Notes: A2A is one of several supported delegation mechanisms.
- Tags: π Multi-agent, π’ Enterprise-oriented, π Framework integration
-
A lightweight library to build autonomous agents, automating the transport, LLM & tool integration.
- A2A Capability: Client + Server, Spec / Schema
- Abstraction Level: High-level
- Transport / Integration: HTTP / REST, WebSocket, gRPC, Custom transport
- Maturity: Experimental
- Notes: Optimized for rapid experimentation, includes abstractions for each A2A component (discovery, messaging, session management) and LLM & tooling.
- Tags: π§ͺ Research / Prototype, π§© Extensible, π Multi-agent, β Beginner-friendly
-
Official JavaScript/TypeScript SDK for A2A Protocol, enabling agent servers and clients in Node.js/TS projects.
- A2A Capability: Client + Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST (JSON-RPC), gRPC
- Maturity: Production-ready
- Notes: Official JS/TS reference SDK.
- Tags: π Multi-agent, π Spec-faithful
-
Official Java SDK for building A2Aβcompliant agents and servers.
- A2A Capability: Client + Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST (JSON-RPC), gRPC
- Maturity: Production-ready
- Notes: Official reference implementation for the JVM ecosystem.
- Tags: π Multi-agent, π Spec-faithful
-
Official Go SDK for implementing A2A servers and clients.
- A2A Capability: Client + Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST (JSON-RPC), gRPC
- Maturity: Production-ready
- Notes: Includes end-to-end examples for both client and server implementations.
- Tags: π Multi-agent, π Spec-faithful
-
tRPC-A2A-Go (community implementation)
Community Go implementation that follows the A2A protocol with examples and utilities.
- A2A Capability: Client + Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST
- Maturity: Experimental
- Notes: Includes session management and authentication helpers beyond the core spec.
- Tags: π§ͺ Research / Prototype, π§© Extensible
-
Rust implementation of the A2A protocol with examples and production-like use cases.
- A2A Capability: Client + Server
- Abstraction Level: Low-level
- Transport / Integration: HTTP / REST, WebSocket
- Maturity: Experimental
- Notes: Focuses on correctness and performance; suitable for systems-level integrations.
- Tags: π§ͺ Research / Prototype, β‘ High-performance
-
Official .NET implementation of the A2A Protocol for C# applications.
- A2A Capability: Client + Server
- Abstraction Level: Mid-level
- Transport / Integration: HTTP / REST (JSON-RPC), gRPC
- Maturity: Production-ready
- Notes: Designed for .NET and ASP.NET Core applications with support for modern .NET features.
- Tags: π Multi-agent, π Spec-faithful
At the time of writing, there are no visual or low-code tools that natively support the Agent-to-Agent (A2A) protocol.
Existing visual agent builders and workflow tools rely on centralized orchestration and do not implement A2A peer-to-peer semantics.
- n8n β Visual workflow automation with centralized orchestration; node-based flows using HTTP calls, not peer-to-peer agents.
- Flowise β Visual agent and chain builder on top of LangChain/LangGraph; centralized orchestration with no native agent interoperability.
- LangFlow β Visual LLM workflow designer focused on prompt and chain composition rather than autonomous agents.
- AutoGen Studio β UI for orchestrating AutoGen agents using a coordinator-based model; lacks protocol-level interoperability.
- CrewAI Studio β Visual agent orchestration built around a managerβworker model with centrally planned task execution.
Projects exploring agent-generated UI (e.g. A2UI) or visual workflows may integrate with A2A in the future, but no A2A-native UI tooling exists yet.
This section will be updated as the ecosystem evolves.
- A2A Protocol Specification β Official protocol documentation
- awesome-agents / awesome-ai-agents β Broader agent framework lists
- Multi-agent orchestration frameworks may integrate with A2A but are listed elsewhere
Contributions are welcome! Please follow these guidelines:
- Only add actively maintained libraries
- Include links, roles, model type, and maturity
- Submit via pull requests with descriptive information
See full guidelines: CONTRIBUTING.md
This list is released under the MIT License.
