AI Agent MCP 服务端实现

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库实现了一个 MCP 服务器端,遵循 Model Context Protocol 的请求/响应模型,能够接收来自 LLM 客户端的 JSON-RPC 请求,处理资源、工具、 API 等调用,并返回结构化的 JSON 响应。核心包含对 CLI 工具、企业 API 工具等的封装、路由与执行,以及对外暴露的多平台集成能力(如 Claude Code、Cursor、Windsurf、Codex CLI、Antigravity 等)。
  • 主要功能点

    • MCP 请求处理与路由:通过 MCP Server(使用 @modelcontextprotocol/sdk)建立,支持对 CallTool、ListTools 等请求的处理与响应。
    • 工具与 API 支持:实现 CLI 工具与企业 API 工具的执行路径,覆盖本地 CLI 操作、外部 API 调用等,提供统一的 MCP 接口。
    • 资源与工具管理:通过 mcp-installer、config-manager 等模块管理 MCP 服务器配置、服务器清单、以及在本地配置中的服务器条目(如 name、command、args、env、disabledTools 等)。
    • 跨平台集成:内置对多平台的支持(Claude Code、Antigravity、Cursor、Windsurf、Codex CLI、Copilot),并提供对应的 MCP 配置模板与写入逻辑。
    • 安全与验证:包含安全工具集合(如参数/路径/命令校验与过滤)、读写权限控制,以及对平台配置文件的有效管理。
    • 运输协议与输出:核心以 StdioTransport 等形式提供传输,便于与不同传输通道(如 STDIO、SSE、WebSocket 等)对接。
  • 安装与运行步骤

    1. 安装依赖并构建
      • 安装依赖并准备运行环境。
    2. 启动 MCP 服务器
      • 使用 node 执行打包后的入口脚本,例如 package/package/dist/index.js,搭配所需依赖与环境变量启动。
    3. 配置与注册 MCP 服务器
      • 通过配置文件(例如 .agent/mcp-servers 下的 config.json)注册要暴露的 MCP 服务器条目,字段包含 server 名称、启动命令 command、参数数组 args,以及可选的 env、enabled、disabledTools 等。
    4. 客户端对接
      • MCP 客户端通过 MCP 的请求格式(JSON-RPC)对接服务器,发送请求以读取资源、调用工具、获取 Prompts 等,服务器返回标准的 JSON-RPC 响应。
  • 服务器配置示例(给 MCP 客户端的启动信息,实际配置通常由 mcp-installer 生成或 manual 编辑)

    • serverName: bitwarden-mcp
    • command: npx
    • args: ["-y", "@bitwarden/mcp-server"]
    • env: BW_SESSION=${BW_SESSION}, BW_CLIENT_ID=${BW_CLIENT_ID}, BW_CLIENT_SECRET=${BW_CLIENT_SECRET}
    • enabled: true
    • 注释:该配置用于将 Bitwarden 的 MCP 服务端暴露给 MCP 客户端;具体的命名与路径需依据实际部署环境调整。
  • 基本使用方法(简要流程)

    • 部署 MCP 服务器后,LLM 客户端通过 MCP 的 JSON-RPC 调用来读取资源、执行工具、获取 Prompt 等,服务器端负责执行并返回结构化响应。
    • 开发者可通过 config-manager / mcp-installer 等模块进行服务器注册、写入平台配置、以及为不同平台生成兼容的 MCP 配置。
    • 如需扩展新的工具或 API 端点,可在工具实现中添加新的处理器,并在 MCP 服务端路由中注册对应名称。
  • 关键词 模型上下文协议, 自动化工具执行, 资源与配置管理, 跨平台集成, JSON-RPC

  • 分类 6

服务器信息