mcp-knowledge-graph

mcp-knowledge-graph

一个改进的持久性记忆实现,使用本地知识图谱,并提供可自定义的 `--memory-path` 参数。这使得 Claude 能够在多次对话中记住关于用户的信息。

AI记忆系统
访问服务器

Tools

create_entities

Create multiple new entities in the knowledge graph

create_relations

Create multiple new relations between entities in the knowledge graph. Relations should be in active voice

add_observations

Add new observations to existing entities in the knowledge graph

delete_entities

Delete multiple entities and their associated relations from the knowledge graph

delete_observations

Delete specific observations from entities in the knowledge graph

delete_relations

Delete multiple relations from the knowledge graph

read_graph

Read the entire knowledge graph

search_nodes

Search for nodes in the knowledge graph based on a query

open_nodes

Open specific nodes in the knowledge graph by their names

README

知识图谱记忆服务器

这是一个改进的持久化内存实现,使用本地知识图谱,并允许自定义 --memory-path

这使得 Claude 能够在多次对话中记住关于用户的信息。

[!NOTE] 这是原始 Memory Server 的一个分支,旨在不使用临时的 npx 安装方法。

服务器名称

mcp-knowledge-graph

服务器名称截图

读取函数

核心概念

实体

实体是知识图谱中的主要节点。每个实体都有:

  • 一个唯一的名称(标识符)
  • 一个实体类型(例如,“人”、“组织”、“事件”)
  • 一个观察列表

示例:

{
  "name": "John_Smith",
  "entityType": "person",
  "observations": ["Speaks fluent Spanish"]
}

关系

关系定义了实体之间的有向连接。它们总是以主动语态存储,并描述实体如何交互或相互关联。

示例:

{
  "from": "John_Smith",
  "to": "Anthropic",
  "relationType": "works_at"
}

观察

观察是关于实体的离散信息片段。它们是:

  • 以字符串形式存储
  • 附加到特定实体
  • 可以独立添加或删除
  • 应该是原子性的(每个观察一个事实)

示例:

{
  "entityName": "John_Smith",
  "observations": [
    "Speaks fluent Spanish",
    "Graduated in 2019",
    "Prefers morning meetings"
  ]
}

API

工具

  • create_entities

    • 在知识图谱中创建多个新实体
    • 输入:entities (对象数组)
      • 每个对象包含:
        • name (字符串): 实体标识符
        • entityType (字符串): 类型分类
        • observations (字符串数组): 相关观察
    • 忽略具有现有名称的实体
  • create_relations

    • 在实体之间创建多个新关系
    • 输入:relations (对象数组)
      • 每个对象包含:
        • from (字符串): 源实体名称
        • to (字符串): 目标实体名称
        • relationType (字符串): 主动语态的关系类型
    • 跳过重复关系
  • add_observations

    • 向现有实体添加新观察
    • 输入:observations (对象数组)
      • 每个对象包含:
        • entityName (字符串): 目标实体
        • contents (字符串数组): 要添加的新观察
    • 返回每个实体添加的观察
    • 如果实体不存在则失败
  • delete_entities

    • 删除实体及其关系
    • 输入:entityNames (字符串数组)
    • 级联删除关联关系
    • 如果实体不存在则静默操作
  • delete_observations

    • 从实体中删除特定观察
    • 输入:deletions (对象数组)
      • 每个对象包含:
        • entityName (字符串): 目标实体
        • observations (字符串数组): 要删除的观察
    • 如果观察不存在则静默操作
  • delete_relations

    • 从图中删除特定关系
    • 输入:relations (对象数组)
      • 每个对象包含:
        • from (字符串): 源实体名称
        • to (字符串): 目标实体名称
        • relationType (字符串): 关系类型
    • 如果关系不存在则静默操作
  • read_graph

    • 读取整个知识图谱
    • 无需输入
    • 返回包含所有实体和关系的完整图结构
  • search_nodes

    • 根据查询搜索节点
    • 输入:query (字符串)
    • 搜索范围:
      • 实体名称
      • 实体类型
      • 观察内容
    • 返回匹配的实体及其关系
  • open_nodes

    • 按名称检索特定节点
    • 输入:names (字符串数组)
    • 返回:
      • 请求的实体
      • 请求的实体之间的关系
    • 静默跳过不存在的节点

与 Claude Desktop 一起使用

设置

将此添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-memory"
      ]
    }
  }
}

自定义记忆路径

您可以为记忆文件指定自定义路径:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory", "--memory-path", "/path/to/your/memory.jsonl"]
    }
  }
}

如果未指定路径,则默认使用服务器安装目录中的 memory.jsonl。

系统提示

利用记忆的提示取决于用例。更改提示将有助于模型确定创建记忆的频率和类型。

这是一个用于聊天个性化的示例提示。您可以在 Claude.ai 项目 的“自定义说明”字段中使用此提示。

按照以下步骤进行每次互动:

1. 用户识别:
   - 您应该假设您正在与 default_user 互动
   - 如果您尚未识别 default_user,请主动尝试这样做。

2. 记忆检索:
   - 始终以仅说“Remembering...”开始您的聊天,并从您的知识图谱中检索所有相关信息
   - 始终将您的知识图谱称为您的“记忆”

3. 记忆
   - 在与用户交谈时,请注意属于以下类别的任何新信息:
     a) 基本身份(年龄、性别、地点、职称、教育程度等)
     b) 行为(兴趣、习惯等)
     c) 偏好(沟通方式、首选语言等)
     d) 目标(目标、指标、愿望等)
     e) 关系(个人和职业关系,最多 3 度分离)

4. 记忆更新:
   - 如果在互动期间收集到任何新信息,请按如下方式更新您的记忆:
     a) 为经常出现的组织、人员和重大事件创建实体
     b) 使用关系将它们连接到当前实体
     b) 将关于它们的事实存储为观察

许可证

此 MCP 服务器在 MIT 许可证下获得许可。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。有关更多详细信息,请参阅项目存储库中的 LICENSE 文件。

推荐服务器

mcp-server-qdrant

mcp-server-qdrant

这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。

官方
精选
Knowledge Graph Memory Server

Knowledge Graph Memory Server

为 Claude 实现持久性记忆,使用本地知识图谱,允许 AI 记住用户的信息,并可在自定义位置存储,跨对话保持记忆。

精选
本地
mcp-codex-keeper

mcp-codex-keeper

作为开发知识的守护者,为 AI 助手提供精心策划的最新文档和最佳实践访问权限。

精选
Perplexity Deep Research MCP

Perplexity Deep Research MCP

一个服务器,它允许 AI 助手使用 Perplexity 的 sonar-deep-research 模型进行网络搜索,并提供引用支持。

精选
RAT MCP Server (Retrieval Augmented Thinking)

RAT MCP Server (Retrieval Augmented Thinking)

🧠 MCP 服务器,实现了 RAT(检索增强思维)—— 结合了 DeepSeek 的推理能力和 GPT-4/Claude/Mistral 的回复,并在交互之间保持对话上下文。

本地
MCP - Titan Memory Server

MCP - Titan Memory Server

启用神经记忆序列学习,通过记忆增强模型来改进代码理解和生成,具有状态管理、新颖性检测和模型持久化等功能。

本地
Neo4j MCP Clients & Servers

Neo4j MCP Clients & Servers

这使您可以使用 Claude Desktop 或任何 MCP 客户端,通过自然语言来完成 Neo4j 和您的 Aura 账户中的任务。

本地
mcp-reasoner

mcp-reasoner

一个为 Claude Desktop 设计的系统推理 MCP 服务器实现,具备束搜索和思维评估能力。 (Alternatively, a slightly more technical translation:) 一个为 Claude Desktop 设计的系统性推理 MCP 服务器实现,具有束搜索和思想评估功能。

本地
Zanny's Persistent Memory Manager

Zanny's Persistent Memory Manager

一个定制的 MCP 服务器,允许使用自然语言命令和关键词检测来存储、检索和管理基于文本的信息。 (Alternatively, a slightly more formal translation:) 一个定制的 MCP 服务器,它允许通过自然语言指令和关键词检测,实现对文本信息的存储、检索和管理。

本地
MCP Reasoner

MCP Reasoner

一个为 Claude Desktop 设计的系统性推理 MCP 服务器,采用束搜索 (Beam Search) 和蒙特卡洛树搜索 (Monte Carlo Tree Search) 来促进复杂问题解决和决策过程。

本地