使用说明
项目简介
simple-python-mcp 是一个使用 Python 编写的 Model Context Protocol (MCP) 服务器的简单实现。它旨在帮助开发者快速理解和上手 MCP 协议,并提供一个可扩展的框架,用于构建能够为大型语言模型 (LLM) 提供上下文信息和工具能力的后端服务。
主要功能点
- MCP 协议实现: 实现了 MCP 协议的核心功能,能够处理来自 MCP 客户端的 JSON-RPC 请求。
- 工具注册与执行: 支持注册和执行外部工具,例如示例中提供的 'get_current_time' 工具,允许 LLM 通过服务器调用这些工具。
- JSON-RPC 通信: 使用 JSON-RPC 协议与客户端进行通信,实现了标准的请求-响应模式。
- Stdio 传输: 通过标准输入/输出 (stdio) 进行数据传输,简化了部署和集成。
- 基础功能示例: 提供了一个获取当前时间的工具示例,展示了如何扩展和添加更多工具。
安装步骤
-
克隆仓库:
git clone https://github.com/htondro/simple-python-mcp.git cd simple-python-mcp -
安装依赖:
pip install -r requirements.txt -
配置 API 密钥 (可选): 如果你希望运行 'chatbot.py' 客户端与 Claude 模型交互,需要在项目根目录下创建 '.env' 文件,并添加 Anthropic API 密钥:
ANTHROPIC_API_KEY=your_api_key_here注意: '.env' 文件已添加到 '.gitignore' 中,不会被提交到代码仓库,保证了密钥的安全性。
服务器配置
MCP 服务器需要通过 MCP 客户端启动和连接。以下是客户端配置 MCP 服务器连接的 JSON 格式信息,请提供给 MCP 客户端使用。
{ "serverName": "simple-python-mcp-server", "command": "python", "args": ["mcp_server.py"], "description": "Simple Python MCP Server for tool execution" }
配置参数说明:
- 'serverName': 服务器的名称,客户端用于标识和管理连接。可以自定义,例如 "simple-python-mcp-server"。
- 'command': 启动服务器的命令。这里使用 'python' 命令来运行 Python 脚本。
- 'args': 传递给启动命令的参数,指定要运行的服务器脚本为 'mcp_server.py'。
- 'description': 服务器的简短描述,方便客户端用户理解服务器的功能。
基本使用方法
-
启动 MCP 服务器: 无需手动启动服务器,客户端程序 'chatbot.py' 会自动启动 'mcp_server.py' 作为子进程。
-
运行 MCP 客户端 (chatbot.py):
python chatbot.py -
与 Chatbot 交互: 在终端中,你可以像与普通聊天机器人一样进行交互。当你的问题需要使用工具时(例如询问时间),chatbot 会调用 MCP 服务器上的工具来获取答案。
示例交互:
User: What time is it? Assistant: Let me check the current time for you. Found 1 tool calls Tool get_current_time result: 2024-03-26 15:30:45 Assistant: The current time is 2024-03-26 15:30:45. -
退出程序: 在终端中输入 'exit' 并回车即可退出 chatbot 程序。
信息
分类
AI与计算