MCP LangChain代理演示
一个演示项目,展示如何使用LangChain、LangGraph和模型上下文协议(MCP)服务器构建人工智能代理,以实现工具集成。
特性
- 多服务器MCP客户端:同时连接到多个MCP服务器
- 数学服务器:本地基于Python的MCP服务器,提供数学运算(加法、乘法)
- 天气服务器:用于天气信息的基于HTTP的MCP服务器
- AI代理集成:使用LangChain和LangGraph创建智能代理
- OpenRouter AI:与用于LLM服务的OpenRouter API集成
项目结构
mcpdemolangchain/
├── client.py # Main client application
├── mathserver.py # Math MCP server (FastMCP)
├── weather.py # Weather MCP server setup
├── requirements.txt # Python dependencies
├── .env # Environment variables
├── .python-version # Python version specification
└── README.md # This file安装
- 克隆存储库:
git clone
cd mcpdemolangchain- 安装依赖项:
pip install -r requirements.txt- 设置环境变量:
cp .env.example .env # If you have an example file
# Edit .env and add your OpenRouter API key用法
运行数学服务器
python mathserver.py运行天气服务器
# Start the weather server (implementation depends on weather.py)
python weather.py运行客户端应用程序
python client.py依赖项
- 兰开夏:LangChain的OpenAI集成
- python dotenv:环境变量管理
- langchain mcp适配器:LangChain的MCP适配器
- fastmcp:快速MCP服务器实施
- 主控程序:模型上下文协议库
- 兰格拉夫:基于图的代理框架
- 语言链:核心LangChain库
关键组件
数学服务器(mathserver.py)
- 使用FastMCP构建
- 提供
add和multiply工具 - 使用stdio传输进行通信
客户端应用程序(client.py)
- 用途
MultiServerMCPClient连接到多个MCP服务器 - 与OpenRouter AI集成以提供LLM服务
- 使用LangChain/LangGraph创建智能代理
- 演示工具调用和响应处理
配置
该项目使用环境变量进行配置:
OPENROUTER_API_KEY:用于LLM服务的OpenRouter API密钥
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 如果适用,添加测试
- 提交拉取请求
许可证
该项目是开源的,可在 MIT许可证.
致谢
- LangChain为强大的代理框架
- 用于基于图的代理编排的LangGraph
- 用于标准化工具集成的模型上下文协议(MCP)
- OpenRouter用于提供可访问的LLM服务
