mdemg MCP 服务端
使用说明(Markdown 格式)
-
项目简介
- 该仓库包含一个 MCP 服务器实现,旨在为 LLM 客户端提供统一的资源管理、工具执行以及与提示/模板相关的能力渲染等核心后端服务。服务器通过 JSON-RPC 与客户端通信,支持多种传输方式(如标准输入输出、SSE、WebSocket 等在相关实现中有扩展空间),并提供与 Cursor IDE 的集成示例。
-
主要功能点
- MCP 核心能力
- 资源管理:对内存、向量、图等资源进行托管、访问和持久化管理。
- 工具注册与执行:注册可调用的外部工具,允许 LLM 客户端通过 RPC 调用并获取结果。
- 会话与能力声明:对会话、能力、可用工具等进行声明与管理。
- 与 Cursor 集成
- 提供一个可供 Cursor 调用的 MCP 服务器实现,支持标准的启动与配置方式。
- 安全与扩展
- 服务器端对工具和资源进行权限与边界控制,具备扩展点以接入更多传输协议和后端存储。
- MCP 核心能力
-
安装步骤
-
- 构建 MCP 服务器
- 进入 mdemg 项目目录,使用 Go 构建 MCP 服务端子模块(路径在 cmd/mcp-server)。
-
- 启动 Neo4j/内存库等后端(如本仓库所需的 Neo4j 服务,和其他依赖服务,例如 Embedding 提供者等)。
-
- 运行 MCP 服务器
- 启动二进制后,服务器会通过输出或端口文件等方式告知实际监听端口,便于 MCP 客户端连接。具体执行命令请参考仓库中的 README.md 提示。
-
-
服务器配置(MCP 客户端必须的连接信息,JSON 配置示例) 注:以下配置用于 MCP 客户端与服务器的对接,实际部署时请将路径与参数替换为真实环境值。 { "server_name": "mdemg-mcp", "command": ["/path/to/mdemg/bin/mdemg-mcp"], "args": [], "env": { "MDEMG_ENDPOINT": "http://localhost:9999" } // 备注:MDEMG_ENDPOINT 为 MCP 服务端对外暴露的端点,Cursor/MCP 客户端将通过该端点建立 JSON-RPC 通道 }
-
基本使用方法
- 启动与连接
- 将上面的 JSON 配置提供给 MCP 客户端,按照客户端要求的启动方式启动服务器进程。
- 客户端在连接时会通过命令和参数获取服务器能力、可用资源与工具信息,并通过 JSON-RPC 调用来读取资源、执行工具以及获取提示模板等。
- 调用与工作流
- 客户端通过注册的工具(Tools)执行指定外部功能,服务器返回执行结果。
- 客户端可通过资源检索、工具调用和会话管理等能力,与服务器共同构建对话上下文、执行推理任务。
- 安全与扩展
- 服务器端提供能力声明、会话管理与多模态传输支持,后续可扩展到 SSE/WebSocket 等传输方式,提升与 LLM 客户端的交互体验。
- 启动与连接
-
备注
- 本实现主要聚焦于 MCP 服务器端的核心能力与对 Cursor 的集成示例,具备可运行的服务器代码与明确的功能边界。实际落地时可能需结合具体部署环境与前端/客户端的版本对接细节进行微调。