
Knowledge Graph Memory Server

2025.04.20
38474
JavaScript知识图谱持久化记忆聊天机器人其它
Knowledge Graph Memory Server 是一个基于本地知识图谱的持久化记忆服务,主要用于帮助 Claude 在不同聊天会话中记住用户信息。该服务通过实体(Entities)、关系(Relations)和观察(Observations)来构建和管理知识图谱,支持创建、查询、更新和删除操作。
View on GitHub
Overview
基本能力
产品定位
Knowledge Graph Memory Server 是一个基于知识图谱的持久化记忆服务,主要用于存储和管理用户信息,支持跨会话记忆功能。
核心功能
- 实体管理:支持创建、删除和查询实体,每个实体包含唯一名称、类型和观察列表。
- 关系管理:支持创建和删除实体之间的关系,关系以主动语态描述。
- 观察管理:支持为实体添加或删除观察(即事实信息)。
- 图谱查询:支持读取整个知识图谱或搜索特定节点。
适用场景
- 聊天机器人个性化:存储用户偏好、身份信息等,实现个性化交互。
- 知识管理:用于构建和管理结构化知识库。
- 数据关联分析:通过实体关系分析数据之间的关联性。
工具列表
- create_entities:创建多个新实体。
- create_relations:创建多个新关系。
- add_observations:为现有实体添加观察。
- delete_entities:删除实体及其关联关系。
- delete_observations:删除实体的特定观察。
- delete_relations:删除特定关系。
- read_graph:读取整个知识图谱。
- search_nodes:基于查询搜索节点。
- open_nodes:按名称检索特定节点。
常见问题解答
- 如何配置存储路径:通过环境变量
MEMORY_FILE_PATH
指定自定义存储文件路径。 - 如何处理重复实体:
create_entities
会忽略已存在的实体名称。 - 如何处理不存在的实体:
add_observations
会失败,其他操作会静默跳过。
使用教程
使用依赖
- 确保已安装 Docker 或 Node.js(用于 NPX 方式)。
安装教程
Docker 方式
{
"mcpServers": {
"memory": {
"command": "docker",
"args": ["run", "-i", "-v", "claude-memory:/app/dist", "--rm", "mcp/memory"]
}
}
}
NPX 方式
{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}
自定义配置
{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
],
"env": {
"MEMORY_FILE_PATH": "/path/to/custom/memory.json"
}
}
}
}
调试方式
- 构建 Docker 镜像:
docker build -t mcp/memory -f src/memory/Dockerfile .
- 验证服务运行:检查日志或通过 API 调用(如
read_graph
)验证服务是否正常响应。