SecureYeoman MCP 服务器

使用说明

  • 项目简介

    • SecureYeoman 是一个面向 LLM 客户端的自建、企业级后端框架,MCP(Model Context Protocol)服务器是其中的核心组件之一,用于托管资源、注册工具、定义并渲染提示模板,并通过标准化的 JSON-RPC 与客户端对接,提供安全、可扩展的上下文服务。
  • 主要功能点

    • MCP 核心能力:
      • 资源(Resources)管理:提供数据访问入口,便于 LLM 调用和查询。
      • 工具(Tools)注册与执行:让 LLM 能调用外部函数/服务。
      • 提示模板(Prompts)定义与渲染:支持可定制的交互模式。
      • 会话管理与能力声明:支持多会话、多租户、审计与合规性控制。
      • 多传输协议支持:HTTP、stdio、SSE、WebSocket 等,确保与不同客户端的互操作性。
    • 安全与治理:RBAC、审计、密钥和访问控制等机制,确保环境安全和可控性。
    • 与 OpenAPI/REST 接口协同:提供 API 描述与文档,便于集成与测试。
    • 模块化设计:资源、工具、Prompts 及 MCP 路由等模块化实现,方便扩展与自定义。
  • 安装步骤

    • 克隆仓库并安装依赖:
      • 使用 Node.js 环境,执行项目依赖安装、构建和打包(具体命令请参考仓库提供的 CI/本地构建脚本)。
    • 构建并启动 MCP 服务器(示例路径来自仓库结构):
      • 运行打包后的 MCP CLI 或相应 dist 入口来启动 MCP 服务,确保后端核心服务正常运行。
    • 连接配置:
      • MCP 客户端需要指向 MCP 服务器,通常通过配置传输方式与核心 URL。仓库提供的示例配置如下,供客户端参考使用(下面为服务器对接配置示例,不是代码,仅作配置参考):
        • MCP 服务器名称: secureyeoman-mcp
        • 启动命令: node
        • 启动参数: ["packages/mcp/dist/cli.js"]
        • 环境变量示例:
          • MCP_TRANSPORT: stdio
          • MCP_CORE_URL: http://127.0.0.1:18789
          • SECUREYEOMAN_TOKEN_SECRET: <your-32-char-token-secret>
      • 注意:以上配置用于 MCP 客户端连接 MCP 服务器,具体字段和格式请按照 MCP 客户端的要求组织,服务器本身实现无需客户端代码即可使用。
  • 服务器配置(供 MCP 客户端参考的 JSON 配置说明)

    • serverName: secureyeoman-mcp
    • command: node
    • args: ["packages/mcp/dist/cli.js"]
    • env: { MCP_TRANSPORT: "stdio", MCP_CORE_URL: "http://127.0.0.1:18789", SECUREYEOMAN_TOKEN_SECRET: "<your-32-char-token-secret>" }
    • 注释:该配置用于 MCP 客户端启动时自动连接到 MCP 服务器。具体字段由客户端解析,服务器端实现需要暴露的只是 MCP 能力与对等通信能力。
  • 基本使用方法

    • 启动 MCP 服务器后,MCP 客户端通过配置好的传输通道(如 stdio、SSE、WebSocket)与 MCP 服务器建立连接,发送 JSON-RPC 请求来读取资源、调用工具、获取 Prompts,并接收 JSON-RPC 响应。
    • 客户端可以按需注册资源、工具、Prompts,并通过服务器端的会话管理进行多轮对话,确保上下文和能力在会话链路中保持一致。
    • 如需扩展,请在服务器端新增资源、工具、Prompts 的定义和注册点,或增强传输协议支持。
  • 兼容与扩展

    • MCP 的传输协议支持可以组合使用,服务器端提供稳定的 JSON-RPC 格式与响应。
    • 开发者可在服务端增加鉴权、审计、配额等治理能力,确保多租户与企业级合规要求。
  • 参考与进一步信息

    • 仓库内有针对 MCP 的路由、工具、资源、提示模板等实现,以及相应的测试用例和文档,便于开发者快速理解与接入。

服务器信息