A bridge server connecting Model Context Protocol (MCP) with Agent-to-Agent (A2A) protocol.
A gateway server that bridges the Model Context Protocol (MCP) with the Agent-to-Agent (A2A) protocol, enabling MCP-compatible AI assistants (like Claude) to seamlessly interact with A2A agents.
This project serves as an integration layer between two cutting-edge AI agent protocols:
Model Context Protocol (MCP): Developed by Anthropic, MCP allows AI assistants to connect to external tools and data sources. It standardizes how AI applications and large language models connect to external resources in a secure, composable way.
Agent-to-Agent Protocol (A2A): Developed by Google, A2A enables communication and interoperability between different AI agents through a standardized JSON-RPC interface.
By bridging these protocols, this server allows MCP clients (like Claude) to discover, register, communicate with, and manage tasks on A2A agents through a unified interface.
also support cloud deployed Agent
Agent Management
Communication
Task Management
Transport Support
Before you begin, ensure you have the following installed:
git clone https://github.com/yw0nam/MCP-A2A-Gateway.git
cd MCP-A2A-Gateway
uv run mcp-a2a-gateway
Modify.env.example
file in the root of the project to '.env'
The A2A MCP Server supports multiple transport types:
stdio (default): Uses standard input/output for communication
streamable-http (recommended for web clients): HTTP transport with streaming support
sse: Server-Sent Events transport
Add below setting.json for sse or http
"mcp_a2a_gateway": {
"url": "http://0.0.0.0:10000/mcp"
}
For stdio:
"mcp_a2a_gateway": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"$INSTALLED_DIR",
"run",
"mcp-a2a-gateway"
]
}
Add this to cluade_config.json
"mcp_a2a_gateway": {
"command": "uv",
"args": ["--directory", "%INSTALLED_DIR", "run", "mcp-a2a-gateway"],
"env": {
"MCP_TRANSPORT": "stdio"
}
}
The server exposes the following MCP tools for integration with LLMs like Claude:
register_agent: Register an A2A agent with the bridge server
{
"name": "register_agent",
"arguments": {
"url": "http://localhost:41242"
}
}
list_agents: Get a list of all registered agents
{
"name": "list_agents",
"arguments": {"dummy": "" }
}
unregister_agent: Remove an A2A agent from the bridge server
{
"name": "unregister_agent",
"arguments": {
"url": "http://localhost:41242"
}
}
send_message: Send a message to an agent and get a task_id for the response
{
"name": "send_message",
"arguments": {
"agent_url": "http://localhost:41242",
"message": "What's the exchange rate from USD to EUR?",
"session_id": "optional-session-id"
}
}
get_task_result: Retrieve a task's result using its ID
{
"name": "get_task_result",
"arguments": {
"task_id": "b30f3297-e7ab-4dd9-8ff1-877bd7cfb6b1",
}
}
get_task_list: Get a list of all tasks and their statuses.
{
"name": "get_task_list",
"arguments": {}
}
We are actively developing and improving the gateway! We welcome contributions of all kinds. Here is our current development roadmap, focusing on creating a rock-solid foundation first.
This is our current focus. Our goal is to make the gateway as stable and easy to use as possible.
/health
endpoint to monitor the server's status.Want to contribute? Check out the issues tab or feel free to open a new one to discuss your ideas!
This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.
A server for interacting with WeChat, a popular messaging and social media app.
MCP server acting as an interface to the Facebook Ads, enabling programmatic access to Facebook Ads data and management features.
Enables interactive LLM workflows by adding local user prompts and chat capabilities directly into the MCP loop.
Interact with Slack workspaces to read and send messages directly through your AI assistant.
Create and publish unlimited podcast shows and episodes with ELEMENT.FM
Simple MCP Server to enable a human-in-the-loop workflow in tools like Cline and Cursor.
An ntfy MCP server for sending/fetching ntfy notifications to your self-hosted ntfy server from AI Agents 📤 (supports secure token auth & more - use with npx or docker!)
Schedule and manage Zoom meetings with AI assistance. Requires Zoom API credentials for configuration.
This server enables users to send emails through various email providers, including Gmail, Outlook, Yahoo, Sina, Sohu, 126, 163, and QQ Mail. It also supports attaching files from specified directories, making it easy to upload attachments along with the email content.
TikTok integration for getting post details and video subtitles