Understanding MCP Architecture: Single-Server vs Multi-Server Cl…
@commitbyrajat
About Understanding MCP Architecture: Single-Server vs Multi-Server Cl…
MCP architecture demo with single-server & multi-server clients using LangGraph, AI-driven tool calls, and async communication.
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"langgraph-mcp-integration": {
"command": "python",
"args": [
"server/weather_server.py"
]
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Understanding MCP Architecture: Single-Server vs Multi-Server Clients?
This blog post explains the Multi-Client Protocol (MCP) architecture by comparing single-server and multi-server clients. It provides example MCP servers for math operations and weather information, along with client scripts that use LangGraph’s ReAct agent and GPT‑4o to invoke tools. It is intended for developers building AI‑driven applications that need to interact with multiple external services.
How to use Understanding MCP Architecture: Single-Server vs Multi-Server Clients?
Clone the repository, sync dependencies with rye sync, start the weather server (rye run python server/weather_server.py), then run either rye run python client/single_server_client.py or rye run python client/multi_server_client.py. The blog shows how to define MCP servers using FastMCP and clients using MultiServerMCPClient with stdio and SSE transports.
Key features of Understanding MCP Architecture: Single-Server vs Multi-Server Clients
- Example Math server with
addandmultiplytools - Example Weather server with a
get_weathertool - Single‑server client using stdio transport
- Multi‑server client supporting both stdio and SSE transports
- Integration with LangGraph ReAct agent and GPT‑4o model
- Sequence diagram illustrating the full MCP communication flow
Use cases of Understanding MCP Architecture: Single-Server vs Multi-Server Clients
- Solving a mathematical expression by invoking a remote math server
- Querying current weather from a dedicated weather server
- Running both math and weather queries concurrently through a multi‑server client
FAQ from Understanding MCP Architecture: Single-Server vs Multi-Server Clients
What transports do the example servers use?
The Math server runs with stdio transport; the Weather server runs with SSE (Server‑Sent Events) transport.
How do I start the servers?
Run python server/math_server.py (uses stdio) and python server/weather_server.py (uses SSE). The blog shows starting the weather server in the background with &.
What tools are available on the example servers?
The Math server exposes add(a, b) and multiply(a, b). The Weather server exposes get_weather(location) which returns a hardcoded sunny string.
What dependencies are required?
The repository uses rye for dependency management. You must run rye sync before executing the scripts. The code also relies on mcp, langgraph, and other Python packages.
Can I use the multi‑server client with other MCP servers?
Yes. The MultiServerMCPClient dictionary accepts any number of server configurations with command/args (for stdio) or url (for SSE) and transport. This allows connecting to arbitrary MCP servers.
Frequently asked questions
What transports do the example servers use?
The Math server runs with `stdio` transport; the Weather server runs with `SSE` (Server‑Sent Events) transport.
How do I start the servers?
Run `python server/math_server.py` (uses stdio) and `python server/weather_server.py` (uses SSE). The blog shows starting the weather server in the background with `&`.
What tools are available on the example servers?
The Math server exposes `add(a, b)` and `multiply(a, b)`. The Weather server exposes `get_weather(location)` which returns a hardcoded sunny string.
What dependencies are required?
The repository uses `rye` for dependency management. You must run `rye sync` before executing the scripts. The code also relies on `mcp`, `langgraph`, and other Python packages.
Can I use the multi‑server client with other MCP servers?
Yes. The `MultiServerMCPClient` dictionary accepts any number of server configurations with `command`/`args` (for stdio) or `url` (for SSE) and `transport`. This allows connecting to arbitrary MCP servers.
Basic information
More Reasoning MCP servers
Agenticstore — The Open Source Standard For Local Mcp Tooling
agenticstoreAgenticStore: The secure toolkit for AI agents. Instantly equip Claude Desktop, Cursor, and Windsurf with 27+ MCP tools, persistent memory, and SearXNG search, all protected by a built-in PII prompt firewall to protect your data from being exposed to AI agents.
iFlytek Workflow MCP Server
iflytekThis a simple implementation of an MCP server using iFlytek. It enables calling iFlytek workflows through MCP tools.
quarkus-langchain4j-workshop
quarkusioQuarkus LangChain4J Workshop that demonstrates both single AI service capabilities and Agentic AI orchestration
MCP Sandbox
danstarnsTurn any JavaScript module into a sandboxed MCP (Model Context Protocol) server with automatic reflection and type inference.
Agentic Tools MCP Server
PimzinoA comprehensive Model Context Protocol (MCP) server providing AI assistants with powerful task management and agent memories capabilities with project-specific storage.
Comments