使用说明

项目简介

PuTi MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,它允许开发者注册和管理工具 (Tools),并通过标准的 JSON-RPC 协议与 MCP 客户端进行通信。该项目旨在简化 LLM 应用与外部功能集成的过程,提供一个可扩展和易于管理的工具服务框架。

主要功能点

  • 工具注册与管理: 允许开发者将 Python 函数注册为 MCP 工具,并由服务器进行管理。
  • 动态工具调用: MCP 客户端可以通过 JSON-RPC 协议请求服务器执行已注册的工具。
  • 标准 MCP 协议支持: 基于 'fastmcp' 库,实现了 MCP 协议的核心功能,支持工具列表、工具调用等操作。
  • 多种传输协议支持: 虽然示例中使用了 Stdio,但 'fastmcp' 库本身支持多种传输协议(如 SSE, WebSocket)。
  • 易于扩展: 通过简单的装饰器即可将 Python 函数注册为 MCP 工具,方便功能扩展。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/aivoyager/puti.git
    cd puti
  2. 安装依赖:

    pip install -r requirements.txt

服务器配置

MCP 服务器的配置主要涉及启动命令及其参数。以下是基于 'mcpp/server.py' 文件生成的 MCP 客户端配置信息示例 (JSON 格式):

{
  "serverName": "puti-mcp-server",
  "command": "python",
  "args": [
    "mcpp/server.py"
  ],
  "description": "PuTi MCP 服务器,提供工具调用服务"
}

参数注释:

  • 'serverName': MCP 服务器的名称,可以自定义。
  • 'command': 启动 MCP 服务器的命令,这里是 'python',因为服务器代码是 Python 脚本。
  • 'args': 启动命令的参数列表,这里指定了服务器脚本的路径 'mcpp/server.py'。
  • 'description': 服务器的描述信息,方便客户端用户理解服务器用途。

注意: MCP 客户端需要根据此配置信息来启动和连接 PuTi MCP Server。 实际部署时,请确保 'mcpp/server.py' 脚本路径的正确性。

基本使用方法

  1. 启动 MCP 服务器: 在项目根目录下,运行以下命令启动 MCP 服务器 (Stdio 传输方式):

    python mcpp/server.py

    服务器启动后,将监听 Stdio 输入输出。

  2. 使用 MCP 客户端连接服务器: 参考 'mcpp/client.py' 或 'test/mcpp/client.py' 中的示例代码,编写 MCP 客户端程序,并配置上述服务器配置信息,连接到 PuTi MCP Server。

  3. 客户端调用工具: 客户端连接成功后,即可通过 MCP 协议发送 JSON-RPC 请求,调用服务器上注册的工具,例如 'get_flight_time' 或 'debate'。

示例代码 (客户端调用工具):

请参考 'mcpp/client.py' 或 'test/mcpp/client.py' 中的代码示例,了解如何在客户端调用服务器端注册的工具。 客户端代码需要使用 'ClientSession' 与服务器建立连接,并使用 'call_tool' 方法调用工具。

# 示例代码请参考 mcpp/client.py 或 test/mcpp/client.py

信息

分类

AI与计算