使用说明
项目简介
Memory MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,专注于为大型语言模型 (LLM) 提供持久化的知识图谱记忆功能。它允许 LLM 创建、读取、更新和删除知识图谱中的实体和关系,从而在对话中保持上下文记忆。该项目使用 Swift 语言开发,是官方 TypeScript Memory MCP Server 的 Swift 版本实现。
主要功能点
- 知识图谱存储: 持久化存储实体及其关系,支持跨会话记忆。
- 实体管理: 支持创建、检索、更新和删除具有自定义类型的实体。
- 关系追踪: 定义和管理实体之间以主动语态表示的关系。
- 观察系统: 记录和管理关于实体的观察信息,支持时间轴记录。
- 强大的搜索: 通过名称、类型或观察内容搜索相关实体。
- 持久化存储: 数据以简单的 JSON 格式持久化存储,重启服务器数据不丢失。
- 提供工具: 内置多种工具,允许 LLM 通过调用工具与知识图谱进行交互,例如创建实体、创建关系、添加观察、删除实体、搜索节点等。
安装步骤
方式一:一键安装 (curl)
curl -fsSL https://raw.githubusercontent.com/okooo5km/memory-mcp-server/main/install.sh | bash
此命令会自动下载最新版本并安装到 '~/.local/bin' 目录,并配置 PATH 环境变量。
方式二:从源码构建
-
克隆仓库:
git clone https://github.com/okooo5km/memory-mcp-server.git cd memory-mcp-server -
构建项目:
swift build -c release -
安装二进制文件:
mkdir -p ~/.local/bin cp $(swift build -c release --show-bin-path)/memory-mcp-server ~/.local/bin/确保 '~/.local/bin' 目录已添加到 PATH 环境变量。
服务器配置
为了让 MCP 客户端(例如 Claude.app, Cursor, Chatwise 等)连接到 Memory MCP Server,需要在客户端的 MCP 服务器配置中添加以下信息。
通用配置 (JSON 格式):
{ "mcpServers": { "memory": { // 服务器名称,可以自定义,例如 "memory" "command": "memory-mcp-server", // 启动服务器的命令,确保 memory-mcp-server 可执行文件在 PATH 环境变量中 "env": { "MEMORY_FILE_PATH": "/path/to/your/memory.json" // (可选) 知识图谱数据存储路径,默认为当前工作目录下的 memory.json。可以自定义路径。 } } } }
参数说明:
- '"memory"': 服务器名称,客户端用此名称引用该服务器。可以根据需要自定义。
- '"command": "memory-mcp-server"': 指定启动 Memory MCP Server 的命令。确保 'memory-mcp-server' 可执行文件可以在您的 PATH 环境变量中找到。如果您使用一键安装或手动安装到 '~/.local/bin' 并且配置了 PATH,则可以直接使用 'memory-mcp-server'。
- '"env"': 环境变量配置。
- '"MEMORY_FILE_PATH": "/path/to/your/memory.json"': (可选) 指定知识图谱数据存储的文件路径。如果不配置,默认会在服务器启动的当前工作目录下创建 'memory.json' 文件。您可以根据需要修改为绝对路径或相对路径。
特定客户端配置示例 (无需修改,仅供参考):
- Claude.app: 在 Claude.app 的设置中,找到 MCP 服务器配置,添加上述 JSON 配置。
- Cursor: 在 Cursor 编辑器的 'Settings - mcp.json' 文件中添加上述 JSON 配置。
- Chatwise: 在 Chatwise 的 'Settings - Tools' 中添加 Memory MCP Server,并填写上述配置信息。
基本使用方法
-
启动 Memory MCP Server: 在终端中运行 'memory-mcp-server' 命令启动服务器。服务器默认监听标准输入输出 (stdio)。
-
配置 MCP 客户端: 根据您使用的 MCP 客户端 (如 Claude.app, Cursor, Chatwise 等) 的文档,配置 MCP 服务器连接信息,填入上面提供的 JSON 配置。
-
在 LLM 系统提示中使用工具: 在 LLM 的系统提示中,引导 LLM 使用提供的工具与 Memory MCP Server 交互,例如使用 'create_entities' 创建实体,使用 'search_nodes' 搜索信息等。 可以参考示例系统提示:
You have access to a Knowledge Graph memory system. Use it to remember important details about the user, their preferences, and any facts they've shared. When you discover important information, save it using memory tools: - 'create_entities' - 'create_relations' - 'add_observations' Before answering questions, check your memory: - 'search_nodes' - 'open_nodes' - 'read_graph' Prioritize information from your memory when responding. -
LLM 调用工具与服务器交互: 当 LLM 需要使用记忆功能时,它会根据系统提示和工具描述,生成包含工具名称和参数的 JSON-RPC 请求发送给 Memory MCP Server。服务器接收请求并执行相应的操作,然后将结果返回给 LLM。
通过以上步骤,您的 LLM 就可以利用 Memory MCP Server 提供的知识图谱记忆功能,实现更智能和更具上下文感知能力的对话。
信息
分类
数据库与文件