Boucle Broca MCP Server

使用说明(Markdown 格式)

  • 项目简介 Boucle 框架中的 MCP 服务器实现,用于通过 Model Context Protocol 与外部 LLM 客户端进行通信,提供对内存(Broca)操作、工具调用和提示模板等能力的对外访问。服务器通过 JSON-RPC 收发请求,支持标准的初始化、工具列出和工具调用等方法。

  • 主要功能点

    • MCP 核心接口:处理 initialize、tools/list、tools/call 等 JSON-RPC 请求,返回规范化的 JSON-RPC 响应。
    • Broca 内存访问:通过 MCP 工具暴露对内存的记忆、检索、笔记、关系等操作。
    • 工具执行:提供 broca_remember、broca_recall、broca_journal、broca_relate、broca_supersede、broca_stats 等工具调用能力,以及对插件工具的发现与执行。
    • 传输与兼容性:当前实现以 stdio 传输为主,未来可扩展为 HTTP 等传输,符合 MCP 客户端的跨进程通信需求。
    • 安全与日志:集成基本的错误处理与日志输出,便于排查与审计。
  • 安装步骤

    • 安装并配置 Rust 开发环境。
    • 克隆或下载源码后,在仓库根目录执行 cargo build --release 构建。
    • 构建完成后,使用以下命令启动 MCP 服务器(stdio 传输):
      • boucle mcp --stdio
    • 也可以通过指定端口开启 HTTP 传输(若实现扩展): boucle mcp --port 8080
    • 服务器启动后,MCP 客户端即可通过 JSON-RPC 与其交互。
  • 服务器配置(JSON 配置,供 MCP 客户端了解如何连接服务器) { "server_name": "Boucle Broca MCP Server", "command": "./target/release/boucle", "args": ["mcp", "--stdio"] } 说明:

  • server_name: 服务器在对外协作中的标识名称。

  • command: 启动二进制的路径。客户端本身不需要该字段进行调用,但用于理解服务器如何启动。

  • args: 启动时携带的参数,当前实现以 stdio 传输为主,使用 --stdio 选项。

  • 基本使用方法

    1. 启动服务器:boucle mcp --stdio
    2. 与客户端通信:通过 JSON-RPC 2.0 的请求/响应格式进行交互,例如使用 initialize 初始化会话,随后使用 tools/list 获取可用工具,使用 tools/call 调用具体工具。
    3. 应用场景:多代理协作、跨代理记忆共享、对话式上下文注入防护等。
  • 重要说明

    • MCP 客户端在实际应用中需要实现向服务器发送 JSON-RPC 请求并解析响应的能力。
    • 服务器端当前实现主要通过标准输入输出进行通信,便于嵌入式或桌面环境的快速整合。

服务器信息