BOND MCP Server 集成实现

使用说明(Markdown格式)

  • 项目简介
    • BOND 仓库中实现了基于 MCP 的后端服务体系,包含多个独立的 MCP 服务器(如 QAIS、ISS),以及面板端用于资源、工具和会话管理的前后端系统。核心目标是以标准化的 JSON-RPC 协议向 LLM 客户端提供上下文、工具调用和提示渲染能力,确保跨组件的安全、可扩展协作。
  • 主要功能点
    • MCP 服务器实现
      • 通过 JSON-RPC 提供初始化、工具列表、工具调用等接口,支持与 Claude 等 LLM 客户端互操作。
      • 提供工具授权/能力约束,确保不同实体(doctrine/project/perspective/library 等)在运行时具备合适的能力集合。
    • 面板与管理
      • 面板端使用 Express/Node.js 实现,提供 Doctrine API、状态管理、链接关系、模块化插件等特性,帮助管理与监控后端 MCP 服务。
    • 资源与工具治理
      • 资源以“实体/种类”形式托管,工具分权限、可切换,具有日志广播与状态通知能力。
    • 智能存储与记忆机制
      • QAIS/ISS 等组件实现记忆、语义检索、情感/执念向量等能力,支持对话上下文的持续性与上下文管理。
    • 跨模块协作
      • 面板和 MCP 服务器通过统一的接口进行交互,支持多种传输协议(如 STDIO、WebSocket),方便不同前端/后端组件对接。
  • 安装与运行步骤
    1. 依赖安装
      • Node.js 及相关依赖(panel、server 等)。
      • Python 运行环境(用于各 MCP 服务器脚本,如 qais_mcp_server.py、iss_mcp_server.py,以及 mcp_invoke.py 等)。
    2. 启动 MCP 服务器
      • 逐个启动 MCP 服务器:QAIS、ISS 等。示例(以理解为目的,具体路径请结合实际环境执行):
        • python QAIS/qais_mcp_server.py
        • python ISS/iss_mcp_server.py
      • 启动 Panel(面板端):
        • 启动 Node.js/Express 服务器,监听端口 3000,并连接相应 MCP 服务器地址。
    3. 启动面板前端
      • 在 panel 目录下安装并运行前端构建/开发服务器(如 npm install、npm run build 或相似流程,具体以实际项目为准)。
    4. 配置与调试
      • 根据需要在环境变量中配置 BOND_ROOT、MCP_URL 等以便 Panel 与 MCP 服务器正确对接。
      • 确认面板的 MCP URL 指向正确的 MCP 服务端点(如 http://localhost:3002/ 等)。
  • 服务器配置(MCP 客户端需要的配置信息) 以下为示例描述性信息,实际配置请以客户端使用说明中的 JSON 配置结构为准。MCP 客户端需要提供服务器启动命令及参数,以便与 MCP 服务器建立连接:
    • QAIS-MCP
      • server name: "QAIS-MCP"
      • command: "python"
      • args: ["QAIS/qais_mcp_server.py"]
      • 注释: 启动 QAIS 的 MCP 服务,提供 qais_resonate、qais_exists、qais_store 等工具的对外调用入口
    • ISS-MCP
      • server name: "ISS-MCP"
      • command: "python"
      • args: ["ISS/iss_mcp_server.py"]
      • 注释: 启动 ISS 的 MCP 服务,提供 iss_analyze、iss_compare、iss_limbic、iss_status 等工具入口
    • 说明
      • 以上命令仅为示意,实际环境需确保 Python 环境可执行且路径正确,必要时设置 BOND_ROOT/数据目录等环境变量。
      • 客户端通过 JSON 配置将 server_name、command、args 等信息组合成一个连接/启动项,以便在运行时启动对应的 MCP 服务进程,并通过 JSON-RPC 与之通信。
  • 基本使用方法
    • 启动后,通过 MCP 客户端向 QAIS/ISS 等服务器发起请求,执行工具、获取分析结果、检索语义信息等。
    • 面板通过 /api/mcp 接口与各 MCP 服务交互,进行工具调用、状态查询、以及汇总展示。
    • 使用 Warm Restore、记忆检索等能力时,请确保相应的数据路径(handoffs、state、data)可写入并具备正确的权限。

服务器信息