多服务器客户端工具

一个模块化的模型上下文协议(MCP)项目,展示单个AI客户端如何连接到多个独立服务器,包括算术计算、天气查询、货币转换和LLM集成。

  • by Abhishek3689
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Abhishek3689/Mcp-Multiserver-Client

使用说明

🧠 带LLM的MCP多服务器客户端

模块化 模型上下文协议(MCP) 该项目展示了单个AI客户端如何连接到多个独立的服务器。

此存储库演示了:

  • 🔢 算术计算器服务器
  • 🌤️ Weather API服务器
  • 💱 实时货币转换器服务器
  • 🤖 由Groq的LLaMA 3.1 8B/任何LLM驱动的LLM客户端
  • ⚡ 使用 FastMCP, LangChain,以及 紫外线 包管理器

该项目非常适合学习如何构建现实世界的MCP工具,并将其集成到统一的AI助手中。


🚀 特性

1.算术计算器服务器

一个简单的MCP工具,执行以下操作:

  • 加法
  • 减法
  • 乘法
  • 部门

支持符号(*)和文本(multiply)运营。


2.气象服务器

提供:

  • 当前天气
  • 天气预报
  • 两个城市的比较

使用外部天气API和通过环境变量管理的API密钥。


3.货币兑换服务器

使用开放API进行实时转换:

  • USD → INR
  • INR → EUR
  • GBP → USD
  • 还有更多…

返回带速率和转换值的JSON。


4.统一的AI客户端

使用以下方式构建的集中式客户端:

  • LangChain 用于LLM处理
  • ChatGroq(LLaMA 3.1 8B)/您可以使用任何LLM 用于推理
  • 多服务器MCPClient 用于动态工具加载

客户端自动:

  • 读取所有已注册的工具
  • 允许LLM决定何时调用哪个工具
  • 组合工具响应以生成最终的用户友好输出

🛠️ 技术栈

组件 技术
MCP服务器 FastMCP
MCP客户端 LangChain+多服务器MCPClient
LLM Groq Calma
包管理器 uv
API调用 httpx
环境管理 python dotenv

使用此回购的步骤

🔑 环境变量

创建一个 .env 项目根目录中的文件:

  • WEATHER_API_KEY=您的_API_KEY_here
  • GROQ_API_KEY=您的_项目_KEY_here

⚠️ 重要提示:
天气服务器需要 有效的Weather API密钥.
使用您自己的API密钥
每个用户都必须获得 拥有API密钥 从天气服务提供商处获取,并将其放在他们的个人信息中 .env 文件。

天气API密钥的示例来源:

  • https://weatherapi.com

1.克隆存储库

git clone https://github.com/Abhishek3689/Mcp-Multiserver-Client.git

2.使用uv安装依赖项

uv init
uv add fastmcp langchain langchain-core langchain-groq langchain-mcp-adapters httpx python-dotenv

3.运行客户端

python client.py

或

uv run client.py