使用说明(Markdown 格式)

  • 项目简介 Memory System MCP 服务器是一个实现 MCP 协议的后端服务,专注于通过标准化的接口向 LLM 客户端提供上下文信息与功能。核心能力包括:管理知识图谱中的资源(Entity/Relation),注册并执行 Tools,以及提供符合 MCP 2025-06-18 规范的 Prompt/输出结构。服务器支持 Neo4j 主存储、文件回退存储,以及通过标准 MCP JSON-RPC 进行请求/响应通信,且具备日志通知、错误码体系和可扩展的中介逻辑。

  • 主要功能点

    • MCP 核心能力:通过标准的 MCP JSON-RPC 接口接收请求(如读取资源、执行工具、获取知识图谱信息),并返回规范化的 JSON-RPC 响应。
    • 资源管理(Resources):以知识图谱的实体与关系为核心资源,提供创建、查询、删除、更新等操作。
    • 工具注册与执行(Tools):支持对外部功能的调用,返回结构化输出,具备输出模式的类型安全(outputSchema)。
    • Prompt 与输出(Prompts/Outputs):提供可扩展的提示模板与结构化输出,帮助 LLM 高效理解返回结果。
    • 存储后端与容错:首选 Neo4j 作为图数据库, unavailable 时自动回退到本地 JSON 文件存储,具备自动容错与切换。
    • 结构化输出与错误码:遵循 MCP 规范的输出结构,统一的错误码体系(包含自定义 -32000 区段代码)。
    • 日志与通知:通过 MCP 日志通知实时向客户端推送日志信息,支持动态日志级别调整。
    • 多传输通道:默认通过标准输入输出(stdio),并具备对 SSE/WebSocket 等传输的潜在扩展能力。
  • 安装步骤

    1. 安装 Node.js 18.x 及以上环境(推荐 Node.js v18+)。
    2. 将仓库克隆到本地并进入项目根目录。
    3. 安装依赖并构建:
      • npm install
      • npm run build
    4. 配置环境变量(示例,实际请根据本地环境调整):
      • NEO4J_URI、NEO4J_USER、NEO4J_PASSWORD:可选,若不配置则回退使用文件存储
      • MEMORY_FILE_PATH:本地文件回退存储路径,默认 memory_fallback.json
    5. 启动 MCP 服务器:
      • npm start
    6. 测试运行(直接通过 MCP 客户端或测试脚本与服务器交互,Server 使用 stdio 传输进行 MCP 通信)。
  • 服务器配置(MCP 客户端需要的启动命令与参数) 说明:MCP 客户端需要为服务器提供一个启动命令以及参数,以便建立与 MCP 服务器的连接。下面给出基于仓库信息的准确示例配置(以 JSON 表示,方便直接粘贴到客户端配置中)。请注意,具体路径与环境变量请按你的部署环境调整。

    { "server": "memory", "command": "node", "args": ["dist/index.js"], "env": { "NEO4J_URI": "neo4j://localhost:7687", "NEO4J_USER": "neo4j", "NEO4J_PASSWORD": "password", "MEMORY_FILE_PATH": "./data/memory.json" }, "notes": "请在服务器所在目录执行构建后再启动,确保 dist/index.js 已生成。若不使用 Neo4j,可将 NEO4J_* 环境变量留空,服务器将回退到本地文件存储。" }

  • 基本使用方法

    • 启动后,客户端可以通过 MCP 的工具调用接口与知识图谱交互,例如创建实体、创建关系、查询节点、以及使用增强的查询(如带边界的关系查询)。
    • 服务器提供 12 种工具的输出均采用类型安全的 outputSchema,便于 LLM 以结构化格式解析响应。
    • 通过日志通知可以实时接收服务器运行状态和错误信息,必要时可调整日志级别。
    • 如 Neo4j 出现问题,系统会自动回退到文件存储,确保服务的持续可用性。

信息

分类

AI与计算