使用说明

项目简介

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) 进行数据传输,简化了部署和集成。
  • 基础功能示例: 提供了一个获取当前时间的工具示例,展示了如何扩展和添加更多工具。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/htondro/simple-python-mcp.git
    cd simple-python-mcp
  2. 安装依赖:

    pip install -r requirements.txt
  3. 配置 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': 服务器的简短描述,方便客户端用户理解服务器的功能。

基本使用方法

  1. 启动 MCP 服务器: 无需手动启动服务器,客户端程序 'chatbot.py' 会自动启动 'mcp_server.py' 作为子进程。

  2. 运行 MCP 客户端 (chatbot.py):

    python chatbot.py
  3. 与 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.
  4. 退出程序: 在终端中输入 'exit' 并回车即可退出 chatbot 程序。

信息

分类

AI与计算