forgewebO1
MCP Server
forgewebO1
public

Awesome A2A

Awesome-A2A: A curated list of Agent2Agent Protocoll (A2A)

Repository Info

14
Stars
0
Forks
14
Watchers
0
Issues
TypeScript
Language
Creative Commons Zero v1.0 Universal
License

About This Server

Awesome-A2A: A curated list of Agent2Agent Protocoll (A2A)

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

# Awesome-A2A (Agent2Agent Protocol) [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)

<div align="center">
  <img src="resources/a2a_mcp_readme.png" width="500px" alt="A2A Protocol Diagram">
  <p><em>A2A Protocol: Enabling communication between different agent frameworks</em></p>
  <p>
    <a href="https://storage.googleapis.com/gweb-developer-goog-blog-assets/original_videos/A2A_demo_v4.mp4" target="_blank">
      <strong>ā–¶ļø Watch the A2A Protocol Demo Video</strong>
    </a>
  </p>
</div>

## Overview

šŸ”„ **Agent2Agent (A2A) Protocol** is an open standard by Google that enables seamless communication and interoperability between AI agents built on different frameworks or by different vendors. It allows agents to discover each other, negotiate interaction methods, and collaborate on tasks efficiently.  

This curated list provides everything you need to **quickly understand, run, and explore A2A**, including demonstrations, use cases, core concepts, and learning resources.

## šŸ“‹ Contents

- [Overview](#overview)
- [Sample Implementations Demo](#-sample-implementations-demo)
  - [JavaScript/TypeScript Agents](#-javascripttypescript-agents)
  - [Python Agents](#-python-agents)
  - [Hosts](#-hosts)
  - [Demo Application](#-demo-application)
- [Core Concepts](#-core-concepts)
- [How to Get Started](#-how-to-get-started)
- [FAQ](#-faq)
- [Resources](#-resources)
- [Contributing](#-contributing)

## šŸš€ Sample Implementations Demo

### šŸ¤– JavaScript/TypeScript Agents
*   **[Movie Agent](https://github.com/google/A2A/tree/main/samples/js/src/agents/movie-agent)**: This agent uses the TMDB API to answer questions about movies.

    <img src="resources/movie-agent.png" width="600px" alt="Movie Agent UI">
    <img src="resources/movie-agent-a2a-cli.png" width="600px" alt="Movie Agent CLI interaction">
    <img src="resources/movie-agent-json.png" width="600px" alt="Movie Agent JSON response">
    <p align="left"><em>Movie Agent: Agent interface, Host CLI interaction, and AgentCard JSON</em></p>

*   **[Coder Agent](https://github.com/google/A2A/tree/main/samples/js/src/agents/coder)**: This is a simple code-writing agent that emits full code files as artifacts.

### šŸ Python Agents
*   **[LangGraph](https://github.com/google/A2A/tree/main/samples/python/agents/langgraph)**: Sample agent which can convert currency using tools. Showcases multi-turn interactions, tool usage, and streaming updates.
*   **[CrewAI](https://github.com/google/A2A/tree/main/samples/python/agents/crewai)**: Sample agent which can generate images. Showcases multi-turn interactions and sending images through A2A.
*   **[Google ADK](https://github.com/google/A2A/tree/main/samples/python/agents/google_adk)**: Sample agent to (mock) fill out expense reports. Showcases multi-turn interactions and returning/replying to webforms through A2A.

### 🧰 Hosts
*   **[CLI](https://github.com/google/A2A/tree/main/samples/python/hosts/cli)**: Simple command-line client to interact with any A2A agent. Supports streaming and optional push notification listening.
*   **[Multi-Agent Orchestrator](https://github.com/google/A2A/tree/main/samples/python/hosts/multiagent)**: An ADK-based "Host Agent" that manages connections to other A2A agents and delegates tasks based on instructions.

### šŸ–„ļø Demo Application
*  This demo application showcases agents talking to other agents over A2A.

    <img src="resources/demo-ui-cmd.png" width="600px" alt="Demo UI CLI">
    <img src="resources/demo-ui-web.png" width="600px" alt="Demo UI Web">
    <p align="left"><em>Demo Application: Command-line start up and web interface for multi-agent orchestration</em></p>

## 🧠 Core Concepts
*   **Agent Discovery:** Clients find agents and their capabilities by fetching the [`AgentCard`](https://google.github.io/A2A/#/documentation?id=agent-card) JSON.
*   **Task Lifecycle:** Tasks progress through states defined in [`TaskState`](https://google.github.io/A2A/#/documentation?id=core-objects).
*   **Communication:** Uses `Message` objects containing `Part`s (text, file, data). Task outputs are represented as `Artifact`s, also containing `Part`s.
*   **Streaming:** Long-running tasks can provide real-time updates using SSE via [`tasks/sendSubscribe`](https://google.github.io/A2A/#/documentation?id=streaming-support). Updates are sent as `TaskStatusUpdateEvent` and `TaskArtifactUpdateEvent`.
*   **Push Notifications:** Agents can proactively notify clients about task updates using webhook URLs provided via [`tasks/pushNotification/set`](https://google.github.io/A2A/#/documentation?id=set-task-push-notifications). 
*   **Authentication:** Defined in `AgentCard` and `PushNotificationConfig`. Can involve various schemes (e.g., API keys, OAuth, JWT). 
*   **Forms:** Structured data can be requested and submitted using `DataPart` within Messages/Artifacts (demonstrated in ADK sample).

## šŸ› ļø How to Get Started
* Run and Experience A2A Demo ([Sample Implementations Demo](#-sample-implementations-demo))
* Study Core Concepts ([Core Concepts](#-core-concepts))
* Reference Common Libraries to build your own A2A Agent
    - JavaScript/TypeScript ([Client](https://github.com/google/A2A/tree/main/samples/js/src/client)/[Server](https://github.com/google/A2A/tree/main/samples/js/src/server))
    - Python ([Common](https://github.com/google/A2A/tree/main/samples/python/common))
* Dive into Documentation to understand A2A in depth ([Official A2A Documentation](https://google.github.io/A2A))

## ā“ FAQ 
šŸ”¹ **Is A2A another implementation of MCP?**  
No, A2A (Agent2Agent Protocol) and MCP (Model Context Protocol) serve different purposes and are complementary. MCP standardizes how AI agents connect to external tools, data sources, and resources, facilitating seamless integration with various services. In contrast, A2A focuses on enabling direct communication and collaboration between AI agents themselves, allowing them to interact in their natural modalities. Together, MCP and A2A enhance the interoperability and functionality of AI systems by connecting agents to both external resources and to each other.

## šŸ“š Resources
* [Github: google/A2A](https://github.com/google/A2A)
* [Official A2A Documentation](https://google.github.io/A2A)
* [Official A2A Blog](https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/)
* [Official A2A llms.txt](https://raw.githubusercontent.com/google/A2A/refs/heads/main/llms.txt)
* [JSON-RPC 2.0](https://www.jsonrpc.org/specification)

## šŸ¤ Contributing

We welcome contributions! Please read the [CONTRIBUTING.md](CONTRIBUTING.md) file for details.

---

## šŸ“£ Stay Updated

For the latest updates on Awesome-A2A and related resources, follow us on Twitter: [@aidev_community](https://x.com/aidev_community)





Quick Start

1

Clone the repository

git clone https://github.com/forgewebO1/Awesome-A2A
2

Install dependencies

cd Awesome-A2A
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

OwnerforgewebO1
RepoAwesome-A2A
Language
TypeScript
LicenseCreative Commons Zero v1.0 Universal
Last fetched8/8/2025

Recommended MCP Servers

šŸ’¬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
šŸ”—

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
šŸ•·ļø

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers
⚔

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation