chandni-kaithavalappil
MCP Serverchandni-kaithavalappilpublic

a2a mcp poc

A Proof of Concept demonstrating Agent2Agent (A2A) and Model Context Protocol (MCP) integration

Repository Info

0
Stars
0
Forks
0
Watchers
0
Issues
Python
Language
-
License

About This Server

A Proof of Concept demonstrating Agent2Agent (A2A) and Model Context Protocol (MCP) integration

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

A2A + MCP Interoperability POC

This project demonstrates the integration of Google's Agent2Agent (A2A) protocol with Anthropic's Model Context Protocol (MCP) through a simple proof of concept application.

Project Structure

a2a_mcp_poc/
|-- agent_a/              # Intent Router Agent
|   |-- main.py
|-- agent_b/              # Weather Fetcher Agent
|   |-- main.py
|   |-- mcp_client.py
|-- agent_c/              # Joke Teller Agent
|   |-- main.py
|   |-- mcp_client.py
|-- mcp_servers/          # Mock MCP Servers
|   |-- weather_mcp_server.py
|   |-- joke_mcp_server.py
|-- README.md
|-- requirements.txt

Setup Instructions

  1. Create a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Start the MCP servers:
# Terminal 1
python mcp_servers/weather_mcp_server.py

# Terminal 2
python mcp_servers/joke_mcp_server.py
  1. Start the agents:
# Terminal 3
python agent_a/main.py

# Terminal 4
python agent_b/main.py

# Terminal 5
python agent_c/main.py
  1. Access the Streamlit interface:
streamlit run agent_a/main.py

Architecture

Agent A (Intent Router)

  • Provides a Streamlit interface for user interaction
  • Analyzes user intent and delegates tasks to appropriate agents
  • Communicates using A2A protocol

Agent B (Weather Fetcher)

  • Handles weather-related queries
  • Connects to weather MCP server
  • Returns weather information via A2A

Agent C (Joke Teller)

  • Handles joke-related queries
  • Connects to joke MCP server
  • Returns jokes via A2A

MCP Servers

  • Mock servers providing weather and joke data
  • Implemented using FastAPI
  • Simulate external API responses

Communication Flow

  1. User sends query via Streamlit interface
  2. Agent A analyzes intent and delegates to appropriate agent
  3. Agent B/C fetches data via MCP
  4. Agent B/C responds to Agent A via A2A
  5. Agent A displays final response to user

Testing

Run the test suite:

python -m pytest tests/

Notes

  • This is a local-only POC
  • Uses mock MCP servers for demonstration
  • No authentication required for basic functionality
  • Focus on clean delegation and response handling

Quick Start

1

Clone the repository

git clone https://github.com/chandni-kaithavalappil/a2a-mcp-poc
2

Install dependencies

cd a2a-mcp-poc
npm install
3

Follow the documentation

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

Repository Details

Ownerchandni-kaithavalappil
Repoa2a-mcp-poc
LanguagePython
License-
Last fetched8/10/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