mcp-server-memories-off

cafe3310/mcp-server-memories-off

3.4

If you are the rightful owner of mcp-server-memories-off and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A lightweight knowledge management MCP service designed for long-term learning and knowledge utilization by LLMs.

Tools
5
Resources
0
Prompts
0

mcp-server-memories-off

愿景

提供一个轻量级知识管理 MCP 服务,让你的 LLM 可以长期持续学习、输出、使用知识。

该服务希望帮助个人或小型项目从日常文本、对话、项目笔记等,结构化地提取和整合实体和其间的关系,让知识的捕捉与整理变得顺畅。进而,这个服务也许能协助你搭建个性化的知识助手,在沟通、管理、项目梳理、信息整合加工等方面,以「模仿你」的形式提供帮助。

其初始版本基于 Anthropic 的 memory mcp

特性目标

  • 便携轻量,本地优先:基于本地文件,不需要部署或使用大规模在线服务,不与任何模型、服务或架构绑定。
  • 结构化知识:通过 LLM 能力,将你丢给它的任何文本中的信息,转化为实体、关系、观察,构建个人知识图谱。
  • 灵活检索:支持通过实体名、类型、观察内容的关键词检索,让 LLM 获取长期记忆并在对话中直接使用。
  • 数据可读性与备份:原始数据保持可读,提供简单的备份功能。

目标不会包括:

  • 大规模知识:保持轻量级,适合个人或小型项目使用。
  • 复杂关系:不用把小工具整成 SQL。
  • 在线服务:不考虑联网,数据存储在本地文件中。
  • 多用户协作:不会考虑。
  • 权限:不会考虑。
  • 多语言:只考虑中文。

应用例子

个人使用场景

  • 提取知识:将文档、日常对话或大段聊天记录发给 LLM,自动提取关键知识点、人物、项目信息、协作关系、个人风格等,构建你的专属知识库。
  • 个性化内容生成:借助知识图谱,LLM 能更好地理解你的思考习惯和人际网络,有针对性地模仿你的表达,生成符合你个性风格的沟通、总结或项目文档。

项目使用场景

  • 项目知识库:小团队可用作项目级别的知识库,持续积累和管理知识,比如联合支付能力 MCP 服务,记录用户购物偏好、行为习惯等。
  • 优化 Agent 服务质量:让你的 Agent 记住更多历史数据与业务诉求,动态调整流程或输出,如记住并优化利用支付能力 MCP 服务推销时的有效策略,提高应用场景中的转化率与满意度。

已有工具

  • 管理实体和关系

    • upsert_entities(...entity): 创建或更新多个实体,保留原类型,添加观察内容
    • create_relations(...relation): 创建实体之间的关系
    • upsert_observations(entity_name, ...observation): 为已有的实体添加观察内容
    • delete_entities(...entity_name): 删除实体及其关联关系
    • delete_observations(entity_name, ...observation): 删除实体中的特定观察内容
    • delete_relations(...relation): 删除实体之间的关系
  • 获取实体和关系信息

    • open_nodes(...entity_name): 获取节点和其间关系
  • 分类管理

    • list_entity_types(): 列出所有实体类型和实体数量
    • list_relation_types(): 列出所有关系类型和关系数量
  • 知识融合与整理

    • rename_entity(entity_name, new_entity_name): 重命名实体
    • merge_entity_types(...entity_types, target_entity_type): 合并实体类型
    • merge_relation_types(...relation_types, target_relation_type): 合并关系类型
    • merge_entities: 合并实体
  • 检索图谱

    • read_graph(): 获取整个知识图谱
    • search_nodes_anywhere(keywords): 根据查询字符串搜索各种节点(支持实体名、类型、观察内容等,空格为 or)
    • search_nodes_smart(queryRegex): 简化的搜索接口。对名称命中的节点返回全文;对其余部分命中的节点返回较少信息(entity_name, entity_type, where_contains_keyword),避免 token 浪费
    • read_subgraph(...entity_name, max_depth): 获取包含指定实体节点的子图,返回实体和关系
    • has_entities(...entity_name): 检查实体是否存在
  • 备份和图谱管理

    • backup_graph(): 备份整个知识图谱
    • read_graph_manual(): 读取知识图谱的所有使用说明
    • put_graph_manual(name, description, ...target): 添加或替换一条使用说明
    • remove_graph_manual(name): 删除一条使用说明

Todolist

  • 管理实体和关系

    • create_relations -> upsert_relations: 创建或更新关系,同时让关系具备多个谓词
  • 获取实体和关系信息

  • 知识融合与整理

    • 中 - list_orphan_entities: 支持列出零散(无关系)的实体
  • 检索图谱

    • 高 - read_subgraph_names: 获取以某些节点为中心的子知识图谱,仅返回(中心节点全部信息、关系、关联节点名称和类型),避免 token 浪费
    • 本地的向量搜索,使用 sqlite_vec 等轻量级 embedding 和搜索解决方案
  • 备份

    • MEM_EDIT_LOG_DIR: 完整的变更审计日志,用于回溯历史或回滚到某个状态
  • 时间线记忆

    • 低 - 支持实体、关系、观察的“创建时间”概念
    • 低 - 支持实体、关系、观察的“有效期”概念
    • 低 - 支持实体、关系、观察的“深刻度”和“被用于做什么”的概念
  • 配置

    • 支持声明多个配置文件,用于多领域知识整理
    • 支持自定义工具集介绍,便于多领域知识联动或用于 a2a 场景

配置例子

该 package 已经发布在 npmjs , 可以在任何支持 mcp 协议的 LLM 客户端中配置:

命令行:

npx -y mcp-server-memories-off

环境变量:

环境变量说明默认值
MEM_NAME工具名称memory
MEM_PATH知识图谱存储文件路径$HOME/mcp-server-memories-off.yaml
MEM_LOG_DIR日志文件目录系统临时目录(如 \tmp\)

一个典型配置:

// in mcp.json
{
  // ... ...
  "memory": {
    "command": "npx",
    "args": [ "-y", "mcp-server-memories-off" ],
    "env": { "MEM_PATH": "你的路径" }
  },
  // ... ...
}

如何构建

构建:

bun run build

运行:

node ..../dist/index.js