Mnemosyne MCP 服务器端
使用说明(简要易用版)
-
项目简介 Mnemosyne MCP 服务器是一个完整的后端实现,遵循 MCP(Model Context Protocol)规范,托管资源(Graphs、文档等)、暴露工具接口供 LLM 调用,并提供提示模板与上下文渲染能力。服务器通过标准的 JSON-RPC 形式与客户端通信,支持多种传输方式,便于在本地开发、Kubectl context 或云端集成使用。
-
主要功能点
- 资源与工作区管理:提供知识图谱、文档、工作区等资源的创建、读取、更新和删除(CRDT 驱动的结构化存储)。
- 工具注册与执行:注册可供 LLM 调用的工具,执行外部功能并返回结果。
- 提示模板管理与渲染:定义和渲染用于 LLM 的 Prompt 模板,支持可定制化的交互模式。
- JSON-RPC 端点:服务端对外暴露 MCP JSON-RPC 风格的请求处理能力,便于与 LLM 客户端通信。
- 多传输协议支持:包含标准输入输出(stdio)传输、WebSocket、SSE 等,适配本地开发和远程部署场景。
- 会话与认证:会话管理、能力声明和可扩展的权限控制,支持本地开发模式与云端集成。
-
安装步骤
- 在本地开发环境中安装并建立可运行的 MCP 服务端实例(开发中使用 uv 工具链进行本地安装与运行)。
- 将 MCP 服务端与本地后端(FastAPI/FastAPI 服务)关联,确保网络透传正常工作。
- 启动服务器实例以对接 Claude Code、Codex/Goose 等客户端。
-
服务器配置(示例,JSON 配置,需提供给 MCP 客户端以便注册服务器) 说明:MCP 客户端在连接 MCP 服务器时通常需要一个 JSON 配置,包含服务器名称、启动命令、参数及必要环境变量。本示例遵循仓库中常见的命名与字段。
{ "mcpServers": { "mnemosyne-graph": { "type": "stdio", "command": "uv", "args": ["run", "neem-mcp-server"], "env": { "MNEMOSYNE_FASTAPI_URL": "http://127.0.0.1:8080" } // 说明 // - server name: mnemosyne-graph(MCP 服务的唯一标识) // - type: stdio(通过 stdio 与客户端通信,常用于本地开发) // - command/args: 启动服务器的命令及参数 // - MNEMOSYNE_FASTAPI_URL: FastAPI 后端的地址,MCP 服务端将对外暴露的接口会通过该地址访问后端服务 } } }
注释要点
- 服务器名称 mnemosyne-graph 应与仓库中测试和配置约定保持一致,确保 Claude Code 等客户端能够识别该 MCP 服务器。
- 如果在 kubernetes/ kubectl 环境中使用,需确保端口转发或 Service 暴露到可达地址,并在 ENV 中配置 MNEMOSYNE_FASTAPI_URL 指向后端服务地址。
- 根据实际部署修改 MNEMOSYNE_FASTAPI_URL、需要的证书、鉴权方式及其他环境变量。
-
基本使用方法
- 本地开发:安装后通过 uv run neem-mcp-server 启动服务器,确保 FastAPI 后端可访问。
- 与客户端对接:在 Claude Code、Codex、Goose 等客户端中注册 MCP 服务器,提供上述 JSON 配置(服务器名称、启动命令、参数、环境变量等)。
- 使用 MCP 客户端提交资源读取、工具调用、Prompts 渲染等请求,服务器返回标准的 JSON-RPC 响应或通知。
- 运行时监控:服务器提供健康检查、日志输出和健康探针,方便快速判断后端是否与 FastAPI 后端连通。
-
额外信息
- 仓库提供了完整的服务器实现、Hocuspocus 协议适配、CRDT 基础操作、以及大量工具集和测试用例,建议在实际生产前阅读相关工具的使用文档和示例。
- 如需集成示例,请参考仓库中的 README 与测试用例,以确保初始化、认证、端点访问和工具调用的流程正确。