Tukuy MCP 服务器

markdown

Tukuy MCP 服务器使用说明

  • 项目简介

    • Tukuy 提供一个基于 Model Context Protocol (MCP) 的服务器实现,用于向 LLM 客户端暴露资源、工具和提示模板等能力,客户端通过 JSON-RPC 与服务器交互,实现资源访问、工具调用和提示渲染等功能。
    • 服务器核心职责包括会话管理、能力声明、多传输协议支持(如标准输入/输出、SSE、WebSocket),以及对外部工具的注册、执行和上下文管理。
  • 主要功能点

    • 资源与数据访问:通过 MCP 服务器统一暴露资源,让 LLM 客户端获取或操作数据。
    • 工具注册与执行:将工具/功能注册为可调用的 MCP Tool,LLM 客户端可以通过 MCP 调用外部功能。
    • Prompt 模板管理与渲染:支持自定义的 Prompt 模板,方便 LLM 的交互流程。
    • JSON-RPC 通信:服务器与客户端通过标准的 JSON-RPC 进行请求与响应交换。
    • 会话与能力声明:服务器端维护会话状态、能力清单,确保交互的安全性和可扩展性。
    • 多传输协议:如 Stdio、SSE、WebSocket 等传输通道,满足不同客户端的接入方式。
  • 安装步骤

    • 使用带 MCP 支持的安装选项安装 Tukuy:
      • 通过包管理工具安装 Tukuy 并启用 MCP 支持分支,例如执行类似的安装命令以包含 MCP 功能的扩展。
    • 除了核心依赖,确保安装了用于 MCP 的额外组件,例如 Tukuy 的 MCP 额外依赖分组。
  • 服务器配置(MCP 客户端使用的配置信息,JSON 格式,包含 server name、command、args 等)

    • 基础配置示例(仅描述字段,不包含代码块)
      • server name(名称,用于在客户端配置中标识该MCP服务器)
      • command(启动命令,例如 python)
      • args(启动参数,例如 ["-m", "tukuy.mcp_server"])
    • 以 Tukuy 为例,Claude Desktop/Claude Code 客户端常见配置项如下:
      • 服务器名:tukuy
      • 启动命令:python
      • 启动参数:["-m", "tukuy.mcp_server"]
    • 进阶配置(含环境变量的可选配置):
      • 可以通过设置环境变量控制暴露的插件分组、排除危险插件等,例如:
        • TUKUY_MCP_ONLY:用于限定暴露的插件分组,逗号分隔
        • TUKUY_MCP_EXCLUDE:用于排除特定的插件组或插件
    • 配置文件在客户端需要以 JSON 结构描述,包含以下字段:
      • serverName: tukuy
      • command: python
      • args: ["-m", "tukuy.mcp_server"]
      • env 可选字段:键值对,用于向 MCP 服务器进程注入环境变量
    • 注:以上配置用于 MCP 客户端在启动时连接 MCP 服务器,实际 JSON 配置在具体客户端实现中可能有略微差异,请参照客户端所需的字段及格式进行调整。
  • 基本使用方法

    • 启动 MCP 服务器
      • 在服务器端执行启动命令以启动 Tukuy 的 MCP 服务模块,使其对外提供资源、工具和提示模板的访问。
    • 与 MCP 客户端对接
      • 客户端通过 JSON-RPC 调用 Tukuy MCP 服务器提供的能力(读取资源、调用工具、获取 Prompt 等)。
    • 使用要点
      • 客户端通过配置将 Tukuy MCP 服务器注册为可用的后端服务,并在对话中按 MCP 规范向服务器发起请求。
      • 服务器需要正确处理会话和能力声明,确保对资源、工具、模板的访问符合策略和安全要求。
  • 运行与测试

    • 参考仓库内 README 中关于 MCP 服务器的描述和示例配置,结合本地/Lab 环境实际网络设置进行测试。
    • 测试要覆盖资源读取、工具调用、模板渲染及多传输通道的稳定性。
  • 参考要点

    • MCP 服务器应实现标准的 JSON-RPC 请求/响应循环,能够对不同请求类型(资源、工具、 prompts)给出一致的 JSON-RPC 响应。
    • 安全性与沙箱策略:服务器端应能结合 SafetyPolicy 进行能力限制和资源访问控制。
    • 插件化能力:服务器暴露的工具、资源、transformer、prompt 等均来自 Tukuy 的插件/技能体系,确保扩展性。
    • 传输适配:在实现中尽量保持对常见传输协议的兼容,以便 Claude Desktop、Claude Code 等 MCP 客户端的接入。
  • 进一步了解

    • 你可以参考 Tukuy 的 MCP 服务器实现及相关示例,确保部署时按 MCP 客户端要求的版本与接口进行交互。

服务器信息