mcp-knowledge-graph
mcp-knowledge-graph 是一款专为 AI 模型设计的本地知识图谱服务器,旨在通过结构化存储赋予 AI“持久记忆”。它解决了大模型在对话结束后容易遗忘上下文信息的痛点,允许用户在不同会话间存储、检索实体、关系及观察记录,从而构建连续且个性化的智能交互体验。
该工具特别适合开发者、AI 研究者以及希望深度定制本地 AI 工作流的进阶用户。其核心亮点在于独特的"AIM"安全机制:通过强制使用 .aim 目录命名和 _aim 文件标记,有效防止了意外覆盖非相关数据文件,确保了本地数据存储的严谨性与安全性。此外,mcp-knowledge-graph 支持灵活的双层存储逻辑,既能自动识别项目根目录实现局部记忆隔离,也支持配置全局路径(如 Dropbox 同步文件夹)以跨设备共享记忆库。系统默认提供主数据库,同时允许用户按需创建多个命名数据库来分类管理不同领域的知识。作为兼容标准 MCP 协议的开源方案,它能无缝接入 Claude Code/Desktop 等平台,是构建私有化、长周期 AI 记忆系统的理想选择。
使用场景
资深全栈开发者李明正在同时维护三个微服务项目,并需要频繁切换上下文来处理不同项目的业务逻辑和历史决策。
没有 mcp-knowledge-graph 时
- 记忆断层严重:每次开启新对话或切换项目时,AI 都会“失忆”,李明不得不反复粘贴之前的架构决策、API 定义和待办事项。
- 信息碎片化:关键的项目知识散落在聊天记录、本地笔记和代码注释中,缺乏统一的结构化存储,检索效率极低。
- 上下文污染风险:试图在一个长对话中维持所有项目信息,导致 AI 混淆不同项目的变量名和业务规则,产生幻觉或错误建议。
- 协作同步困难:团队成员无法共享统一的 AI 记忆库,每个人都要重新向 AI“培训”项目背景,重复劳动成本高。
使用 mcp-knowledge-graph 后
- 持久化记忆自动加载:通过在项目根目录创建
.aim文件夹,mcp-knowledge-graph 自动将实体、关系和观察结果存入本地知识图谱,下次对话直接继承历史上下文。 - 结构化知识管理:利用
aim_前缀工具将分散的信息整理为互联的知识节点,李明可以随时查询“用户服务模块的上次重构原因”等具体细节。 - 多数据库隔离机制:针对个人学习、工作项目和健康记录建立独立的命名数据库(如
work、personal),彻底杜绝了不同领域知识的相互干扰。 - 跨设备无缝同步:配置
--memory-path指向 Dropbox 同步目录后,李明在公司电脑和家庭笔记本上都能访问同一套实时更新的项目记忆库。
mcp-knowledge-graph 通过将非结构化的对话转化为本地持久化的知识图谱,让 AI 真正拥有了随项目成长的长期记忆能力。
运行环境要求
- Linux
- macOS
- Windows
不需要 GPU
未说明

快速开始
MCP 知识图谱
通过本地知识图谱为 AI 模型提供持久化内存。
使用实体、关系和观察,在多轮对话中存储和检索信息。兼容 Claude Code/Desktop 以及任何与 MCP 兼容的 AI 平台。
为什么使用 .aim 和 aim_ 前缀?
AIM 代表 AI 内存——这是本系统的核心概念。三个 AIM 元素提供了清晰的组织结构和安全性:
.aim目录:使 AI 内存文件井然有序且易于识别aim_工具前缀:在多工具设置中将相关内存功能归类在一起_aim安全标记:每个内存文件都以{"type":"_aim","source":"mcp-knowledge-graph"}开头,以防止意外覆盖无关的 JSONL 文件
这种一致的 AIM 命名方式,使得哪些目录、工具和文件属于 AI 内存系统一目了然。
重要提示:理解 .aim 目录与 _aim 文件标记的区别
两个名称相似但用途不同的概念:
.aim= 项目本地目录名称(必须精确命名为.aim,项目检测才能生效)_aim= 文件安全标记(出现在 JSONL 文件内部:{"type":"_aim","source":"mcp-knowledge-graph"})
对于项目本地存储:
- 目录必须命名为项目根目录下的
.aim - 示例:
my-project/.aim/memory.jsonl - 系统会专门查找这个确切的名称
对于全局存储 (--memory-path):
- 可以是您希望的任意目录
- 示例:
~/yourusername/.aim/、~/memories/、~/Dropbox/ai-memory/、~/Documents/ai-data/ - 完全灵活——选择适合您的位置即可
存储逻辑
文件位置优先级:
- 有
.aim的项目——使用.aim/memory.jsonl(项目本地) - 无项目或无
.aim——使用配置的全局目录 - 上下文区分——添加后缀:
memory-work.jsonl、memory-personal.jsonl
安全机制:
- 每个内存文件都以
{"type":"_aim","source":"mcp-knowledge-graph"}开头 - 系统拒绝写入没有此标记的文件
- 防止意外覆盖无关的 JSONL 文件
主数据库概念
主数据库是您的主要内存存储——在未指定特定数据库时默认使用。它在列表中始终名为 default,并以 memory.jsonl 的形式存储。
- 默认行为:所有内存操作都会使用主数据库,除非您指定其他数据库
- 始终可用:存在于项目本地和全局位置
- 主要存储:您跨所有对话持续存在的主要知识图谱
- 命名数据库:可选的附加数据库(
work、personal、health),用于按主题组织内容
核心功能
- 主数据库:默认用于所有操作的主要内存存储
- 多数据库:可选的命名数据库,用于按主题组织记忆
- 项目检测:自动使用
.aim目录进行项目本地内存管理 - 位置覆盖:强制操作使用项目或全局存储
- 安全操作:内置保护机制,防止覆盖无关文件
- 数据库发现:列出两地的所有可用数据库
快速入门
全局内存(推荐)
将以下内容添加到您的 claude_desktop_config.json 或 .claude.json 中。两种常见方法:
选项 1:默认 .aim 目录(简单)
{
"mcpServers": {
"Aim-Memory-Bank": {
"command": "npx",
"args": [
"-y",
"mcp-knowledge-graph",
"--memory-path",
"/Users/yourusername/.aim"
]
}
}
}
选项 2:Dropbox/云同步(便携式)
若需在多台设备上访问记忆,可以使用同步文件夹。这就是本 MCP 服务器作者保存自己记忆的方式:
{
"mcpServers": {
"Aim-Memory-Bank": {
"command": "npx",
"args": [
"-y",
"mcp-knowledge-graph",
"--memory-path",
"/Users/yourusername/Dropbox/ai-memory"
]
}
}
}
这会在您指定的目录中创建内存文件:
memory.jsonl——主数据库(所有操作的默认数据库)memory-work.jsonl——工作数据库memory-personal.jsonl——个人数据库- 等等。
项目本地内存
在任何项目中,创建一个 .aim 目录:
mkdir .aim
现在,内存工具从该项目运行时,会自动使用 .aim/memory.jsonl(项目本地的主数据库),而不是全局存储。
AI 如何使用数据库
配置完成后,AI 模型会默认使用主数据库,也可以通过 context 参数指定命名数据库。新数据库会自动创建——无需额外设置:
// 主数据库(默认——无需上下文)
aim_memory_store({
entities: [{
name: "John_Doe",
entityType: "person",
observations: ["在会议上见过"]
}]
})
// 工作数据库
aim_memory_store({
context: "work",
entities: [{
name: "Q4_Project",
entityType: "project",
observations: ["截止日期为 2024 年 12 月"]
}]
})
// 个人数据库
aim_memory_store({
context: "personal",
entities: [{
name: "Mom",
entityType: "person",
observations: ["生日是 3 月 15 日"]
}]
})
// 在特定位置的主数据库
aim_memory_store({
location: "global",
entities: [{
name: "Important_Info",
entityType: "reference",
observations: ["存储于全局主数据库"]
}]
})
文件组织
全局设置:
/Users/yourusername/.aim/
├── memory.jsonl # 主数据库(默认)
├── memory-work.jsonl # 工作数据库
├── memory-personal.jsonl # 个人数据库
└── memory-health.jsonl # 健康数据库
项目设置:
my-project/
├── .aim/
│ ├── memory.jsonl # 项目主数据库(默认)
│ └── memory-work.jsonl # 项目工作数据库
└── src/
可用工具
aim_memory_store——存储新记忆(人物、项目、概念)aim_memory_add_facts——向现有记忆添加事实aim_memory_link——连接两条记忆aim_memory_search——按关键词搜索记忆aim_memory_get——按精确名称检索特定记忆aim_memory_read_all——读取某个数据库中的所有记忆aim_memory_list_stores——列出可用数据库aim_memory_forget——遗忘记忆aim_memory_remove_facts——从记忆中移除特定事实aim_memory_unlink——移除记忆之间的链接
参数
context(可选)——指定命名数据库(work、personal等)。默认为主数据库location(可选)——强制使用“project”或“global”存储位置。默认为自动检测
数据库发现
使用 aim_memory_list_stores 可查看所有可用的数据库:
{
"project_databases": [
"default", // 主数据库(项目本地)
"project-work" // 命名数据库
],
"global_databases": [
"default", // 主数据库(全局)
"work",
"personal",
"health"
],
"current_location": "project (.aim 目录已检测到)"
}
要点:
- “default” = 在两个位置都是主数据库
- 当前位置 显示您正在使用项目存储还是全局存储
- 主数据库在任何地方都存在——它是您的主要记忆存储
- 命名数据库 是针对特定主题的可选补充
配置示例
重要提示: 始终指定 --memory-path 来控制您的记忆文件存储位置。
自动批准读取操作(推荐):
{
"mcpServers": {
"Aim-Memory-Bank": {
"command": "npx",
"args": [
"-y",
"mcp-knowledge-graph",
"--memory-path",
"/Users/yourusername/.aim"
],
"autoapprove": [
"aim_memory_search",
"aim_memory_get",
"aim_memory_read_all",
"aim_memory_list_stores"
]
}
}
}
故障排除
“文件不包含所需的 _aim 安全标记”错误:
- 该文件可能不属于本系统
- 手动创建的 JSONL 文件需要以
{"type":"_aim","source":"mcp-knowledge-graph"}作为第一行 - 如果您是手动创建的文件,请添加
_aim标记,或删除后让系统重新创建
记忆存储到意外位置:
- 检查您是否位于包含
.aim文件夹的项目目录中(使用项目本地存储) - 否则将使用配置的全局
--memory-path目录 - 使用
aim_memory_list_stores查看所有可用数据库及当前位置 - 使用
ls .aim/或ls /Users/yourusername/.aim/查看您的记忆文件
相似数据库过多:
- AI 模型会尝试使用一致的名称,但可能会产生变体
- 如有需要,可手动删除不需要的数据库文件
- 鼓励 AI 使用简单、一致的数据库名称
- 请记住:主数据库始终作为默认可用——命名数据库是可选的
系统要求
- Node.js 18+
- 兼容 MCP 的 AI 平台
许可证
MIT
版本历史
v1.3.22025/12/22v1.3.12025/12/22v1.3.02025/12/22v1.2.32025/12/22v1.2.22025/12/22v1.2.12025/12/22v1.2.02025/08/26v1.0.12025/04/24常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
funNLP
funNLP 是一个专为中文自然语言处理(NLP)打造的超级资源库,被誉为"NLP 民工的乐园”。它并非单一的软件工具,而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。 面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点,funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具,还独特地收录了丰富的垂直领域资源,如法律、医疗、金融行业的专用词库与数据集,甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性,从基础的字典词典到前沿的 BERT、GPT-2 模型代码,再到高质量的标注数据和竞赛方案,应有尽有。 无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师,还是从事人工智能研究的学者,都能在这里找到急需的“武器弹药”。对于开发者而言,它能大幅减少寻找数据和复现模型的时间;对于研究者,它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神,极大地降低了中文自然语言处理的开发与研究成本,是中文 AI 社区不可或缺的宝藏仓库。
cs-video-courses
cs-video-courses 是一个精心整理的计算机科学视频课程清单,旨在为自学者提供系统化的学习路径。它汇集了全球知名高校(如加州大学伯克利分校、新南威尔士大学等)的完整课程录像,涵盖从编程基础、数据结构与算法,到操作系统、分布式系统、数据库等核心领域,并深入延伸至人工智能、机器学习、量子计算及区块链等前沿方向。 面对网络上零散且质量参差不齐的教学资源,cs-video-courses 解决了学习者难以找到成体系、高难度大学级别课程的痛点。该项目严格筛选内容,仅收录真正的大学层级课程,排除了碎片化的简短教程或商业广告,确保用户能接触到严谨的学术内容。 这份清单特别适合希望夯实计算机基础的开发者、需要补充特定领域知识的研究人员,以及渴望像在校生一样系统学习计算机科学的自学者。其独特的技术亮点在于分类极其详尽,不仅包含传统的软件工程与网络安全,还细分了生成式 AI、大语言模型、计算生物学等新兴学科,并直接链接至官方视频播放列表,让用户能一站式获取高质量的教育资源,免费享受世界顶尖大学的课堂体验。
lobehub
LobeHub 是一个致力于工作与生活的智能体协作平台,旨在帮助用户发现、构建并与不断成长的 AI 智能体队友协同工作。它解决了当前 AI 应用中单点交互效率低、难以形成规模化协作网络的问题,将“智能体”确立为工作的基本单元,让人类与 AI 能够共同进化。 无论是开发者、研究人员还是普通用户,都能通过 LobeHub 轻松设计多智能体协作流程。平台支持一键安装 MCP 插件、访问丰富的智能体市场,并提供本地与云端数据库管理、多用户协作等高级功能。其独特的技术亮点包括对多种大模型服务商的兼容、本地大模型部署支持、视觉识别、语音对话(TTS/STT)、文生图以及思维链(Chain of Thought)等能力。此外,LobeHub 还具备分支对话、工件生成、文件上传与知识库集成等实用特性,并适配桌面端、移动端及 PWA 场景,支持自定义主题。 通过开源与自托管选项,LobeHub 为构建人机共演的未来协作网络提供了灵活、可扩展的基础设施。
scikit-learn
scikit-learn 是一个基于 Python 构建的开源机器学习库,依托于 SciPy、NumPy 等科学计算生态,旨在让机器学习变得简单高效。它提供了一套统一且简洁的接口,涵盖了从数据预处理、特征工程到模型训练、评估及选择的全流程工具,内置了包括线性回归、支持向量机、随机森林、聚类等在内的丰富经典算法。 对于希望快速验证想法或构建原型的数据科学家、研究人员以及 Python 开发者而言,scikit-learn 是不可或缺的基础设施。它有效解决了机器学习入门门槛高、算法实现复杂以及不同模型间调用方式不统一的痛点,让用户无需重复造轮子,只需几行代码即可调用成熟的算法解决分类、回归、聚类等实际问题。 其核心技术亮点在于高度一致的 API 设计风格,所有估算器(Estimator)均遵循相同的调用逻辑,极大地降低了学习成本并提升了代码的可读性与可维护性。此外,它还提供了强大的模型选择与评估工具,如交叉验证和网格搜索,帮助用户系统地优化模型性能。作为一个由全球志愿者共同维护的成熟项目,scikit-learn 以其稳定性、详尽的文档和活跃的社区支持,成为连接理论学习与工业级应用的最