MCP-Server
Multi-Server Model Context Protocol (MCP) Demo
Eine vollständige Demonstration zum Erstellen und Integrieren mehrerer Model Context Protocol (MCP)-Server mit einem LangGraph ReAct-Agenten, der von Groq und Echtzeit-OpenWeatherMap-Daten angetrieben wird.
Dieses Projekt zeigt, wie ein LLM-Agent dynamisch Tools über verschiedene MCP-Server und Transportprotokolle (stdio und streamable-http) in einem einheitlichen Arbeitsablauf entdecken und nutzen kann.
🏗️ Architektur
flowchart LR
subgraph Agent["LangGraph ReAct Agent (client.py)"]
ChatGroq["LLM: Groq (Qwen / ChatGroq)"]
MultiMCP["MultiServerMCPClient"]
end
subgraph MathServer["Math MCP Server (mathserver.py)"]
MathTools["Tools: add, sub, mul, div"]
end
subgraph WeatherServer["Weather MCP Server (weatherserver.py)"]
WeatherTools["Tool: get_weather (OpenWeatherMap API)"]
end
MultiMCP -- "stdio transport (subprocess)" --> MathServer
MultiMCP -- "streamable-http (http://127.0.0.1:8000/mcp)" --> WeatherServerKomponenten
Math MCP Server (
mathserver.py):Erstellt mit FastMCP.
Läuft über
stdio-Transport.Stellt arithmetische Tools bereit:
add,sub,mul,div.Wird automatisch als Hintergrund-Subprozess vom MCP-Client gestartet.
Weather MCP Server (
weatherserver.py):Erstellt mit FastMCP, das über
streamable-http-Transport unterhttp://127.0.0.1:8000/mcpläuft.Verwendet
httpx, um aktuelle meteorologische Daten von der OpenWeatherMap API abzurufen.Stellt das Tool
get_weatherbereit (gibt Temperatur, Wetterbeschreibung, gefühlte Temperatur und Luftfeuchtigkeit zurück).
Orchestrator-Client (
client.py):Verbindet sich gleichzeitig mit beiden MCP-Servern über
MultiServerMCPClientauslangchain-mcp-adapters.Stellt die Tools zusammen und treibt einen LangGraph ReAct-Agenten mit Groqs schneller LLM-Inferenz (
ChatGroq) an.
Related MCP server: AIE8-MCP Server
📁 Projektstruktur
Mcp_demo/
├── client.py # ReAct Agent & Multi-Server MCP client orchestrator
├── mathserver.py # FastMCP server running on stdio transport
├── weatherserver.py # FastMCP server with OpenWeatherMap API on HTTP transport
├── requirements.txt # Python package dependencies
├── pyproject.toml # Project configuration & metadata
├── .env.example # Environment variables template
├── .gitignore # Git ignore rules (protects .env and caches)
└── README.md # Project documentation🚀 Erste Schritte
1. Voraussetzungen
Python 3.10+
OpenWeatherMap API Key (kostenloser Tarif)
2. Installation
Repository klonen und Abhängigkeiten installieren:
git clone https://github.com/sreeshanthkprakash-stack/MCP-Server.git
cd MCP-Server
# Create and activate virtual environment
python -m venv .venv
# On Windows:
.venv\Scripts\activate
# On Linux/macOS:
source .venv/bin/activate
# Install dependencies
pip install -r requirements.txt3. Umgebungskonfiguration
Erstellen Sie eine .env-Datei im Stammverzeichnis (oder kopieren Sie von .env.example):
GROQ_API_KEY=your_groq_api_key_here
OPENWEATHER_API_KEY=your_openweather_api_key_here🧪 Anwendung ausführen
Schritt 1: Weather MCP Server starten
Da der Wetterserver über HTTP kommuniziert, starten Sie ihn zuerst in einem Terminal:
python weatherserver.pyDer Wetterserver beginnt mit dem Abhören von
http://127.0.0.1:8000/mcp.
Schritt 2: Agent-Client ausführen
Öffnen Sie ein zweites Terminalfenster (stellen Sie sicher, dass Ihre virtuelle Umgebung aktiv ist) und führen Sie aus:
python client.pyBeispiel für erwartete Ausgabe
math_response The result of the expression ((15*20)+200)/4 is 125.
weather_response Weather in Hyderabad: haze, temperature 29.5°C (feels like 32.1°C), humidity 65%📦 Abhängigkeiten
mcp: Offizielles Model Context Protocol SDK (FastMCP)langchain-mcp-adapters: Verbindet LangChain mit MCP-Servernlanggraph: Graphbasierte Agenten-Orchestrierungs-Laufzeitlangchain-groq: Hochgeschwindigkeits-LLM-Inferenz mit Groqhttpx: Async-HTTP-Client für Wetter-API-Anfragenpython-dotenv: Sicheres Laden von Umgebungsvariablen
📄 Lizenz
Dieses Projekt ist Open Source und unter der MIT-Lizenz verfügbar.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceDemonstrates custom MCP servers for math and weather operations, enabling multi-agent orchestration using LangChain, Groq, and MCP adapters for both local and remote tool integration.1
- FlicenseBqualityDmaintenanceAn MCP server that provides web search capabilities through the Tavily API and weather data retrieval tools. It demonstrates how to integrate external APIs into AI applications and build agentic workflows with LangGraph.3
- Flicense-qualityCmaintenanceA demonstration MCP server that provides math (add/multiply) and weather tools, connecting via stdio and streamable HTTP, and integrates with LangChain and LangGraph for agentic workflows.
- Flicense-qualityDmaintenanceAn MCP server that provides weather and web search tools, orchestrated by a LangGraph agent with OpenAI for natural language interaction.8
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Agent-native collaboration network: orchestrate a team of long-running agents from any MCP client.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sreeshanthkprakash-stack/MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server