# A2A Protocol — Agent-to-Agent Communication Standard > Google's open protocol for AI agents to discover, communicate, and collaborate across frameworks. SDKs for Python, TypeScript, Java, Go, and .NET. 23,000+ stars, Apache 2.0. ## Install Save the content below to `.claude/skills/` or append to your `CLAUDE.md`: ## Quick Use **Python:** ```bash pip install a2a-sdk ``` **TypeScript/JavaScript:** ```bash npm install @a2a-js/sdk ``` **Go:** ```bash go get github.com/a2aproject/a2a-go ``` **Java:** Available via Maven. **.NET:** `dotnet add package A2A` Read the full specification: [a2a-protocol.org](https://a2a-protocol.org/latest/) --- ## Intro A2A (Agent-to-Agent) is an open protocol by Google enabling AI agents built on different frameworks to discover capabilities, negotiate interaction formats, and collaborate securely — without exposing internal logic. With 23,000+ GitHub stars and Apache 2.0 license, it's now hosted by the Linux Foundation's Agentic AI Foundation. While MCP standardizes how agents connect to tools, A2A standardizes how agents talk to each other. SDKs are available for Python, TypeScript, Java, Go, and .NET, with 40+ official sample implementations. Best for: developers building multi-agent systems where agents from different vendors need to communicate. Works with: any agent framework (LangChain, CrewAI, AutoGen, Claude Agent SDK, etc.). Complements: MCP (tool integration) — A2A handles agent-to-agent collaboration. --- ## A2A Protocol — Architecture & Concepts ### Core Concepts #### Agent Cards Every A2A agent publishes an "Agent Card" — a JSON document describing its capabilities, supported interaction modes, and authentication requirements. Other agents discover and evaluate capabilities through these cards. ```json { "name": "Research Agent", "description": "Performs web research and synthesizes reports", "capabilities": ["web_search", "summarization", "citation"], "interaction_modes": ["sync", "streaming", "async"], "authentication": { "type": "oauth2" } } ``` #### Communication Modes | Mode | Use Case | |------|----------| | **Synchronous** | Quick request-response (< 30s) | | **Streaming** | Real-time progressive results | | **Asynchronous** | Long-running tasks with callbacks | #### Rich Data Exchange Agents can exchange text, files, structured JSON, and binary data — not just text messages. ### How A2A Differs from MCP | Aspect | MCP | A2A | |--------|-----|-----| | **Purpose** | Agent ↔ Tool integration | Agent ↔ Agent communication | | **Analogy** | USB port for peripherals | Language for conversations | | **Discovery** | Tool manifests | Agent Cards | | **Interaction** | Request/response | Sync, streaming, async | | **State** | Stateless tool calls | Stateful task management | **They complement each other:** An agent uses MCP to call tools and A2A to collaborate with other agents. ### Official SDKs | Language | Package | Install | |----------|---------|---------| | Python | a2a-sdk | `pip install a2a-sdk` | | TypeScript | @a2a-js/sdk | `npm install @a2a-js/sdk` | | Go | a2a-go | `go get github.com/a2aproject/a2a-go` | | Java | a2a-java | Maven | | .NET | A2A | `dotnet add package A2A` | ### Sample Implementations 40+ official samples available across all languages, including: - Multi-agent research systems - Customer support agent collaboration - Code review agent pipelines - Financial analysis agent networks ### FAQ **Q: What is the A2A Protocol?** A: An open standard by Google (now Linux Foundation) that enables AI agents from different frameworks to discover each other, communicate via JSON-RPC 2.0, and collaborate on tasks — without exposing internal logic. **Q: Is A2A free?** A: Yes, Apache 2.0 license. All SDKs and specifications are free and open-source. **Q: How does A2A relate to MCP?** A: They're complementary. MCP handles agent-to-tool integration (like a USB port), while A2A handles agent-to-agent communication (like a shared language). Use both together for full agent interoperability. --- ## Source & Thanks > Created by [Google](https://github.com/a2aproject), hosted by Linux Foundation. Licensed under Apache 2.0. > > [A2A](https://github.com/a2aproject/A2A) — ⭐ 23,000+ Thank you to Google and the A2A project team for building the definitive agent interoperability standard. --- ## Quick Use **Python:** `pip install a2a-sdk` **TypeScript:** `npm install @a2a-js/sdk` **Go:** `go get github.com/a2aproject/a2a-go` Full spec: [a2a-protocol.org](https://a2a-protocol.org/latest/) --- ## Intro A2A (Agent-to-Agent) is an open protocol released by Google that lets AI agents built on different frameworks discover capabilities, negotiate interaction formats, and collaborate securely. With 23,000+ GitHub stars and Apache 2.0 license, it's now hosted by the Linux Foundation. MCP standardizes how agents connect to tools; A2A standardizes how agents talk to each other. SDKs for Python, TypeScript, Java, Go, and .NET, plus 40+ official samples. Best for developers building multi-agent systems where agents from different vendors need to communicate. Relationship to MCP: complementary — MCP handles tool integration, A2A handles agent-to-agent collaboration. --- ## A2A vs MCP | Aspect | MCP | A2A | |--------|-----|-----| | Purpose | Agent ↔ Tools | Agent ↔ Agent | | Analogy | USB port | Shared language | | Discovery | Tool manifest | Agent Card | ### FAQ **Q: What is A2A?** A: An open standard from Google for agent-to-agent communication, letting agents from different frameworks discover, communicate, and collaborate. **Q: Is it free?** A: Apache 2.0, fully free and open source. --- ## Source & Thanks > Created by [Google](https://github.com/a2aproject). Licensed under Apache 2.0. > > [A2A](https://github.com/a2aproject/A2A) — ⭐ 23,000+ --- Source: https://tokrepo.com/en/workflows/a2a-protocol-agent-agent-communication-standard-0c013210 Author: Agent Toolkit