Skip to content

a2a projects with MCP servers, langchain tools, aisuite, openai, groq, ollama, claude

Notifications You must be signed in to change notification settings

gauthiii/a2aProjects

Repository files navigation

A2A Projects – Overview

What is A2A?

A2A (Agent-to-Agent protocol) is a standard way for agents to talk to each other over HTTP using a shared message format (JSON-RPC + structured messages).

How A2A differs from MCP

MCP (Model Context Protocol) and A2A solve different layers of the stack:

  • MCP is about tools
    It exposes functions/APIs like get_weather(city) or search_docs(query).
    Agent → MCP server (tools).

  • A2A is about agents
    It lets full agents (with their own tools, memory, logic) talk to each other.
    Agent A ↔ Agent B (conversation/requests).

Projects

Project Title The Chain and Run Commands
Travel Planner × Weather Stylist
(A2A + MCP Demo)
A2A connects: Travel Planner Agent ↔ Weather Stylist Agent.
MCP connects: Weather Stylist Agent → Weather MCP Server → OpenWeather API.

1. Start Weather Stylist Agent:
uv run uvicorn weather_stylist_agent:app --port 8080
2. Start Travel Planner Agent:
uv run uvicorn travel_planner_agent:app --port 8081
3. Call the chain:
uv run talk_to_agent.py
Currency & Stocks Pair
(A2A + MCP Demo)
A2A connects: Currency Pair Agent ↔ Stock Data Agent.
MCP connects:
• Currency Pair Agent → Currency MCP Server → Exchange Rate API
• Stock Data Agent → Stock MCP Server → Yahoo Finance API.

Run Order:
1. Start Currency Pair (A2A) Agent:
uv run uvicorn currency_pair_agent:app --port 8081
2. Start Stock Data (A2A) Agent:
uv run uvicorn stock_data_agent:app --port 8082
3. Test or Orchestrate Communication:
uv run python test.py
Vacation Planner × Airbnb
(A2A + MCP Demo)
A2A connects: Flight Agent ↔ Airbnb Agent.
MCP connects:
• Flight Agent → Flights MCP Server → Google Flights API (via RapidAPI)
• Airbnb Agent → Airbnb MCP Server → Airbnb Search & Listing Tools.

Run Order:
1. Start Flights MCP Server:
uv run python flights_mcp_server.py
2. Start Airbnb (A2A) Agent:
uv run uvicorn airbnb_a2a:app --port 8090
3. Start Flight (A2A) Agent:
uv run uvicorn flights_a2a:app --port 8091
4. Run the Orchestrator / Tester:
uv run python tester.py
Reddit × Google Docs
(A2A + MCP Demo)
A2A connects: Google Docs Agent ↔ Reddit Agent.
MCP connects:
• Reddit Agent → Reddit MCP Server → Reddit API (hot threads, comments, summaries)
• Google Docs Agent → Google Docs MCP Server → Google Docs & Drive API.

Run Order:
1. Start Reddit (A2A) Agent:
uv run uvicorn reddit_a2a:app --port 8130
2. Start Google Docs (A2A) Agent:
uv run uvicorn docs_a2a:app --port 8131
3. Run A2A Client / Orchestrator:
uv run python a2a_client.py

Flow: User → Planner → Google Docs Agent → Reddit Agent → Reddit MCP → Google Docs MCP → Final Write to Doc

How to run this project

1. Clone the repo

git clone https://github.com/gauthiii/a2aProjects
cd a2aProjects

2. Create a .env file

OPENAI_API_KEY=your_openai_key_here  
OPENWEATHER_API_KEY=your_openweather_key_here  

# Optional
ANTHROPIC_API_KEY=your_anthropic_key_here
GROQ_API_KEY=
GEMINI_API_KEY=

GMAIL_CLIENT_ID=
GMAIL_CLIENT_SECRET=

EXCHANGE_RATE_API_KEY=
RAPID_GOOGLE_FLIGHTS_API=

3. Install dependencies with uv

uv sync

About

a2a projects with MCP servers, langchain tools, aisuite, openai, groq, ollama, claude

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published