使用说明
模型上下文协议(MCP)客户端
通过将大型语言模型(LLM)连接到一系列外部工具,释放其全部潜力!该项目提供了一个基于 模型上下文协议(MCP),使您的LLM能够发现、理解和调用自定义功能。通过STDIO或SSE无缝集成工具,利用谷歌强大的Gemini模型编排复杂任务,并跨平台聊天 多回合对话.
🚀 核心概念
现代法学硕士非常强大,但往往仅限于他们接受培训的信息 模型上下文协议(MCP) 是一种规范,允许LLM安全有效地发现和调用外部工具。
该项目实现了一个充当智能编排器的MCP客户端。它接受用户的查询,咨询LLM(如Gemini)以制定计划,然后调用托管在各种MCP服务器上的必要工具来收集信息并执行任务,同时支持 上下文感知的多回合交互.
🏛️ 建筑
该架构旨在实现可扩展性和灵活性,允许您在不修改核心客户端逻辑的情况下添加新的工具和服务器。
✨ 特性
- ✅ 多回合对话支持:在聊天回合中保持记忆,以实现更智能、上下文感知的交互。
- 🌐 多服务器连接:同时连接到多个MCP服务器。
- 🔌 灵活运输:支持两者
stdio用于基于本地流程的服务器和sse(服务器发送事件)用于远程基于HTTP的服务器。 - 🧠 LLM驱动的编排:使用Gemini解释复杂的请求,计划工具使用,并提供智能响应。
- 🖥️ 可选Web UI(FastAPI):带有Swagger/ReDoc文档的RESTful API,用于直观浏览和使用。
- 🔍 工具发现:从所有连接的服务器动态检测和加载可用工具。
- ⚙️ 基于UI的配置和日志:从web界面配置API密钥、工具和服务器。轻松查看日志和调试会话。
- ⚡ 异步架构:基于
asyncio以获得无阻塞性能。 - 🧾 可读配置:基于JSON的服务器配置和
.env用于安全的凭证管理。 - 🛠 开发人员友好日志:检查代理推理和工具调用是否完全透明。
🏁 入门指南
1.先决条件
- Python 3.10+
- Google AI Studio API密钥
2.安装
git clone https://github.com/Abdulabin/Model-Context-Protocol.git
cd Model-Context-Protocol
pip install -r requirements.txt
3.配置
.env文件(API密钥):
GEMINI_API_KEY="YOUR_API_KEY_HERE"
工具服务器配置(mcp-servers-configs.json):
{
"mcpServers": {
"arxiv_server": {
"disabled": false,
"transport_type": "stdio",
"command": "python",
"args": ["mcp_servers/arxiv_server.py"]
},
"remote_tool_server": {
"disabled": true,
"transport_type": "sse",
"url": "http://localhost:8001/mcp"
}
}
}
🚀 用法
CLI使用情况💻
python mcp_client.py
然后问以下问题:
查找最近3篇关于“大型语言模型”的论文,并对第一篇进行总结。
客户端理解多步骤过程,将任务委托给适当的工具,并返回一个答案——所有这些都有交互的内存。
web界面🌐
使用以下命令启动UI:
uvicorn app:app
在浏览器中打开:
- Swagger用户界面: http://localhost:8000/docs
- 重新记录: http://localhost:8000/redoc
Web UI功能:
- 🧠 带记忆聊天(多回合对话)
- 🛠 添加/编辑工具服务器
- 🔐 设置API键和模型配置
- 📜 查看详细的交互日志
🧾 工具配置JSON模式(UI兼容)
支持两者 stdio 和 sse示例UI可加载配置:
[
{
"mcpServers": {
"LocalScript": {
"disabled": false,
"command": "python3",
"args": ["script.py"],
"transport_type": "stdio"
},
"WeatherAPI": {
"disabled": true,
"transport_type": "sse",
"url": "http://api.weather.com/sse",
"timeout": 30
}
}
}
]
🧭 Web应用程序中的页面
| 第页 | 目的 |
|---|---|
| 🏠 主页 | 简介和概述 |
| ⚙️ 设置 | 添加API密钥、选择模型、管理工具 |
| 💬 聊天 | 使用LLM+工具聊天(多回合) |
| 📜 日志 | 调试和监控工具调用和计划 |
🎯 理想用例
- 🤖 配备实时工具的AI助手
- 📚 使用API的学术研究机器人
- 🧪 AI开发环境
- 🎓 结合LLMs和工具的教育演示
✅ 总结
MCP客户端 通过无缝配置、可扩展架构和对智能、, 多回合对话无论你是在构建智能代理、研究助理还是开发工具,它都是你通往下一级人工智能集成的门户。
连接您的工具。配置您的模型。开始聊天。 🚀
