Plandb MCP 服务端

以下为使用指南(以便快速接入 MCP 客户端):

  • 项目简介
    • plandb 是一个本地 SQLite 任务图管理工具。其 MCP 组件实现了 Model Context Protocol,允许 LLM 客户端通过 JSON-RPC 方式读取资源、注册并执行 Tools、以及获取和渲染 Prompt 模板等上下文服务。
    • MCP 服务端采用 STDIO 形式的 JSON-RPC 请求/响应循环,读取标准输入的 JSON-RPC 请求并输出相应的响应到标准输出。
  • 主要功能点
    • MCP 核心:接收初始化、工具列表、工具调用等请求并返回标准化 JSON-RPC 响应。
    • 资源与工具:托管可访问的数据资源与可执行的外部工具,LLM 可以调用外部功能。
    • 上下文与 prompts:定义并渲染 Prompt 模板,提供可定制的交互模式。
    • 会话与能力声明:服务器端维护会话状态,并对客户端能力进行声明。
    • 多传输入口:尽管 MCP 部分以 STDIO 为主,仓库也提供 CLI、HTTP 接口等入口,方便本地开发和集成。
  • 安装步骤
    • 通过 Rust 工具链构建:
      • 在仓库根目录执行:cargo build --release
    • 构建完成后得到的二进制可直接执行,进入 MCP 模式。
  • 服务器配置(MCP 客户端所需的配置信息) 下面的 JSON 配置用于 MCP 客户端将服务器注册为名为 "plandb" 的 MCP 服务端。注释为说明用途,不作为代码执行的一部分: { "mcpServers": { "plandb": { "name": "plandb", "command": "plandb", "args": ["mcp"] } // 如需要扩展,后续可添加更多 MCP 服务端实例 } } 注解说明:
    • name: 服务端在用户侧的标识名称,需与服务端实现对齐。
    • command: 启动 MCP 服务端的可执行名称,与生成的二进制保持一致(本仓库的 Rust 二进制名为 plandb)。
    • args: 启动参数,MCP 的入口选项为 "mcp",表示以 MCP 服务器模式启动。
  • 基本使用方法
    • 启动 MCP 服务端(确保命令能在环境 PATH 中找到):
      • 运行 plandb mcp(或按客户端集成方式通过配置启动)。
    • 客户端初始交互流程(简述):
      • 客户端向服务器发送初始化请求,获取能力信息。
      • 客户端通过 tools/list 获取工具集合,通过 tools/call 调用具体工具。
      • 客户端请求资源、Prompts,并按需渲染、执行上下文任务。
    • 若使用 HTTP/CLI/其他接入点,参阅仓库 README 的 MCP 设置与提示。
  • 设计与集成要点
    • MCP 服务器通过 JSON-RPC 与客户端通信,按规范处理 initialize、tools/list、tools/call 等方法。 通过整合的数据库组件,服务器能够在背后管理会话、能力声明和任务图状态,提供统一的上下文服务入口。

服务器信息