Knowledge Graph Memory Server

Knowledge Graph Memory Server

site icon
2025.04.20 38474
JavaScript知识图谱持久化记忆聊天机器人其它
Knowledge Graph Memory Server 是一个基于本地知识图谱的持久化记忆服务,主要用于帮助 Claude 在不同聊天会话中记住用户信息。该服务通过实体(Entities)、关系(Relations)和观察(Observations)来构建和管理知识图谱,支持创建、查询、更新和删除操作。
View on GitHub

Overview

基本能力

产品定位

Knowledge Graph Memory Server 是一个基于知识图谱的持久化记忆服务,主要用于存储和管理用户信息,支持跨会话记忆功能。

核心功能

  1. 实体管理:支持创建、删除和查询实体,每个实体包含唯一名称、类型和观察列表。
  2. 关系管理:支持创建和删除实体之间的关系,关系以主动语态描述。
  3. 观察管理:支持为实体添加或删除观察(即事实信息)。
  4. 图谱查询:支持读取整个知识图谱或搜索特定节点。

适用场景

  1. 聊天机器人个性化:存储用户偏好、身份信息等,实现个性化交互。
  2. 知识管理:用于构建和管理结构化知识库。
  3. 数据关联分析:通过实体关系分析数据之间的关联性。

工具列表

  1. create_entities:创建多个新实体。
  2. create_relations:创建多个新关系。
  3. add_observations:为现有实体添加观察。
  4. delete_entities:删除实体及其关联关系。
  5. delete_observations:删除实体的特定观察。
  6. delete_relations:删除特定关系。
  7. read_graph:读取整个知识图谱。
  8. search_nodes:基于查询搜索节点。
  9. open_nodes:按名称检索特定节点。

常见问题解答

  1. 如何配置存储路径:通过环境变量 MEMORY_FILE_PATH 指定自定义存储文件路径。
  2. 如何处理重复实体create_entities 会忽略已存在的实体名称。
  3. 如何处理不存在的实体add_observations 会失败,其他操作会静默跳过。

使用教程

使用依赖

  1. 确保已安装 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"
      }
    }
  }
}

调试方式

  1. 构建 Docker 镜像
docker build -t mcp/memory -f src/memory/Dockerfile .
  1. 验证服务运行:检查日志或通过 API 调用(如 read_graph)验证服务是否正常响应。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。