RecallNest MCP 服务器

使用说明(Markdown 格式,可直接参考执行步骤)

  • 项目简介 RecallNest 作为一个 MCP 原生的服务器端实现,为本地索引的记忆数据提供统一的上下文服务。它实现了 MCP 的核心能力:资源管理、工具注册与执行、以及基于记忆的提示与渲染,方便在 LLM 客户端(如 Claude Code、Codex、以及其他遵循 MCP 的客户端)中调用。

  • 主要功能点

    • MCP 服务器实现与暴露工具
      • 工具包括:search_memory、explain_memory、distill_memory、brief_memory、pin_memory、export_memory,以及 list_assets、list_pins、memory_stats 等,用以检索、解释、蒸馏、持久化 Pin/Brief、导出等场景。
    • 资源管理与存储
      • 基于 LanceDB 的向量存储与文本检索,支持向量检索、BM25(FTS)检索,以及后续的排序、去重、以及时效/重要性权重等评分策略。
    • 模型上下文与检索配置
      • 提供多检索画像(default/writing/debug/fact-check)和混合检索/向量检索的组合策略,便于在不同场景下调整检索行为。
    • 底层传输与协议
      • 使用 MCP 的 Stdio 传输实现,服务器通过标准输入输出与 MCP 客户端通信,返回 JSON-RPC 风格的响应。
    • 安全性与鲁棒性
      • 包含资产/记忆的 Pin/Brief 的持久化、导出、以及素材的索引与回溯能力。错误处理与日志信息用于诊断和稳定运行。
  • 安装与运行步骤

    1. 安装依赖
      • 需要在支持 Bun 的环境中运行(脚本以 Bun 脚本形式提供)。执行 bun install 以安装依赖。
    2. 启动 MCP 服务器
      • 使用命令方式启动(服务器通过 STDIO 与客户端通信)。常见启动方式为: bun run src/mcp-server.ts
      • 启动后,服务器将通过标准输入/输出与 MCP 客户端建立连接,等待 JSON-RPC 请求。
    3. 连接与测试
      • MCP 客户端需按 MCP 约定通过 JSON-RPC 与该服务器建立连接,调用诸如 search_memory、explain_memory 等工具,获取带结构化文本的响应。
    4. 运行环境配置(推荐)
      • 请确保本地环境具备嵌入向量服务所需的 API key(如 JINA API key)以及本地数据目录的读写权限。
      • 服务器侧数据存放于配置中指定的 LanceDB 路径,CLI/UI 也可通过相关函数对数据进行管理与导出。
  • 服务器配置(MCP 客户端配置示例说明,JSON 格式,不作为可执行代码) 注意:以下配置用于 MCP 客户端连接 RecallNest 的 MCP 服务端。服务端的实际启动命令为上文第2步所示的启动指令。配置中包含 serverName、command 与 args 等,用于描述如何启动和连接服务器。

    { "serverName": "recallnest", // MCP 服务器在对话中的唯一标识,需与服务端实现一致 "command": "bun", // 启动服务器所用命令 "args": ["run", "src/mcp-server.ts"] // 服务器入口脚本及参数 // 注释: RecallNest 的 MCP 服务器通过 STDIO 与客户端通信,使用上述命令即可启动服务端进程并保持与客户端的 JSON-RPC 通信 }

  • 基本使用方法

    • 启动后,MCP 客户端可通过 MCP 标准接口向 RecallNest 发送 JSON-RPC 请求以执行:
      • search_memory / explain_memory / distill_memory / brief_memory
      • pin_memory / export_memory
      • list_assets / list_pins / memory_stats
    • 客户端可以通过返回的文本/结构化数据来展示检索结果、解释理由、以及导出内容的路径等信息。
    • 服务器侧会管理会话、能力声明,并提供多种传输模式(示例中使用 STDIO 传输),以满足 LLM 客户端的调用需求。

服务器信息