SynaBun MCP 服务器
使用说明(Markdown 版)
-
项目简介 SynaBun MCP 服务器是一个完整的后端实现,遵循 MCP(Model Context Protocol)标准,旨在为 LLM 客户端提供可管理的上下文资源、工具集和提示模板。核心特性包括本地向量记忆(使用 SQLite 存储与本地嵌入模型)、46 套工具、以及用于与 Claude Code 等工具链集成的钩子和交互能力。支持多传输协议,便于在不同环境中与 LLM 客户端对接。
-
主要功能点
- MCP 核心能力:提供资源(Memories)、工具(Tools)、Prompts 的注册、执行、查询以及 JSON-RPC 风格的请求/响应。
- 本地向量记忆:将文本信息嵌入成向量,使用本地 Transformer 模型(384 维度)并保存在 SQLite 数据库中,支持语义检索、时间衰减、跨项目检索等。
- 资源与类别管理:基于自定义类别、父子结构、描述导向的路由规则,支持类别创建、更新、删除、列表、以及对现有记忆的类别变更传播。
- Tools 集合:包括 Memory、Browser、Whiteboard、Cards、Loop、TicTacToe 等多组工具,支持调用外部功能、浏览器自动化、白板操作等。
- Neural Interface 集成:通过本地嵌入的神经接口实现对浏览器、UI、三维图等的交互与协作。
- 本地化依赖:本地 Embedding、SQLite、无外部 API 调用、无 Docker 依赖。
- 多传输协议:支持 Stdio、HTTP、以及通过前端 UI 的交互实现多个传输协议,便于嵌入在不同开发环境中。
-
安装步骤(简要)
- 确保 Node.js 版本 >= 22.x。
- 下载代码后,执行 npm install 安装依赖。
- 进入 mcp-server 目录,执行 npm run build 构建 MCP 服务端。
- 启动 MCP 服务器,默认会在 data/memory.db 创建并初始化数据库、下载本地嵌入模型缓存。
- 根据需要启动神经接口前端(Neural Interface)和 UI,配合 MCP 进行上下文服务。
-
服务器配置(MCP 客户端需要的最小信息) 说明:这是面向 MCP 客户端使用的配置描述,非服务器端代码。用于 Claude Code 等工具在其项目中注册并调用 SynaBun MCP 服务器。配置以 JSON 格式表达,包含服务器名称、命令及参数等信息。示例(文字说明,不作为可执行代码): { "server": "SynaBun", "command": "node", "args": ["/path/to/SynaBun/mcp-server/run.mjs"], "description": "SynaBun MCP 服务端,提供 Memory/Tools/Prompts 等 46 个工具给 LLM 客户端使用", "notes": "此配置仅用于客户端注册与连接,实际参数可能因部署环境而异。客户端不需要对 MCP 服务器有额外的实现细节。" } 说明:
- server: MCP 服务端的显示名称,客户端通过该名称在配置中引用。
- command: 启动 MCP 服务器的命令(不要求客户端执行,只用于参考部署时的启动指令)。
- args: 启动命令的参数,需指向仓库中的入口脚本,如 run.mjs。
- 以上信息用于生成在 MCP 客户端中的启动注册,确保客户端能够通过 JSON-RPC 连接并调用 MCP 提供的工具与资源。
-
基本使用方法(简要)
- 启动:在仓库根目录执行 npm start(或按 setup 指定的流程)启动 MCP 服务器及神经接口 UI。
- 连接:MCP 客户端(如 Claude Code/其他 MCP 客户端)通过 JSON-RPC 调用向 SynaBun MCP 服务器请求资源、调用工具、获取 Prompts、执行同步等。
- 管理与扩展:通过 MCP 提供的工具集(Memory、Browser、Whiteboard、Cards、Loop、TicTacToe 等)进行记忆、任务与交互管理;类别、标签、项目等元数据可通过工具进行创建与调整,服务器端会自动处理描述与描述规则的刷新。
- 监控与维护:服务器支持多传输协议、会话管理、嵌入模型 warmup、数据库迁移、事件通知与工具列表变更通知等,详见仓库文档。
-
重要提示
- 该实现包含完整的 MCP 服务端逻辑、工具注册、HTTP、Stdio 等传输实现、以及本地嵌入/向量检索、类别系统、Neural Interface 集成等,属于完整可运行的 MCP 服务器实现。
- 若用于生产,请参考仓库中的具体配置与环境变量说明,确保数据目录、数据库路径、 embedding 模型缓存路径等配置正确无冲突。