所有文章
技术实践2026-03-1410 分钟

save_memory 实战:用 MCP 工具让 Claude 自动沉淀对话知识

详细介绍 KnowMine 三层 AI 记忆架构(Trace→Memory→Soul)和三个 MCP 工具的使用方法:save_memory 保存知识结晶、recall_memory 语义搜索历史记忆、get_soul 导出用户画像。

MCP工具save_memoryAI记忆Claude Code个人知识库RAG

为什么 AI 对话的价值在流失?

每次和 Claude、ChatGPT 对话,你可能产出了很多有价值的内容:一个关键技术决策、一个产品方向的顿悟、一个踩坑后总结的经验教训。但对话结束后,这些内容消失在历史记录的洪流中,下次需要时根本找不到。

KnowMine 的 AI 记忆系统通过 MCP(Model Context Protocol)协议,让 Claude Code 等 AI 工具在对话中自动识别并保存知识结晶。本文介绍三个核心 MCP 工具的使用方法。

三层记忆架构一览

在深入工具之前,先理解 KnowMine 的三层记忆设计:

┌─────────────────────────────────────────────┐
│  Layer 3: Soul(灵魂档案)                    │
│  ▸ 用户画像:角色、专业背景、知识图谱            │
│  ▸ 思维模式:决策风格、学习偏好                  │
│  ▸ 可导出为 System Prompt,用于任何 AI 平台     │
├─────────────────────────────────────────────┤
│  Layer 2: Memory(结构化记忆)                 │
│  ▸ 5 种类型:decision/insight/lesson/         │
│             preference/domain_knowledge      │
│  ▸ 向量化存储,支持语义搜索                     │
│  ▸ 0.90 相似度去重,强化不新建                  │
├─────────────────────────────────────────────┤
│  Layer 1: Trace(对话痕迹)                   │
│  ▸ 轻量对话片段快照                            │
│  ▸ 60 天后自动清理                             │
│  ▸ 可追溯记忆来源                              │
└─────────────────────────────────────────────┘

Layer 2(Memory)是核心——日常对话中最常用的层。Layer 3(Soul)是 Phase 2 功能,在你积累足够多的记忆后自动生成。

工具一:save_memory — 保存知识结晶

基本用法

save_memory 是 AI 在对话中主动调用的工具,也可以手动触发:

参数:
- content      (必填) 要保存的内容,应是完整的独立陈述
- memory_type  (必填) 记忆类型之一:
                  decision        决策及原因
                  lesson          经验教训/踩坑记录
                  insight         洞察/灵感
                  preference      用户偏好
                  domain_knowledge 领域专业知识
- context      (可选) 触发这条记忆的对话背景
- platform     (可选) 来源平台:claude/chatgpt/claude_code/cursor
- tags         (可选) 标签,不填则 AI 自动打标
- confidence   (可选) 置信度 0-1,默认 0.8

五种记忆类型详解

decision(决策) — 保存技术选型、产品决策及其原因

save_memory(
  content="选择 Drizzle ORM 而非 Prisma,核心原因是 Prisma 在 Serverless
           环境下有 2-3 秒冷启动延迟,严重影响用户体验",
  memory_type="decision",
  context="KnowMine 后端 ORM 选型讨论",
  platform="claude_code"
)

返回:{"action":"created","message":"记忆已保存 → 文件夹: 🔧 开发笔记"}

lesson(经验教训) — 记录踩坑经历,防止重蹈覆辙

save_memory(
  content="使用阿里云 OSS SDK V1 时遭遇坑:该版本没有 go.mod,
           不符合 Go 模块规范,需要大量 hack 才能使用。
           应优先使用官方 V2 SDK(alibabacloud-oss-go-sdk-v2)",
  memory_type="lesson"
)

insight(洞察) — 捕捉灵感和跨领域联想

save_memory(
  content="知识管理系统的真正价值不在于保存,而在于在正确时机浮现——
           就像 GPS 不是地图,而是知道你现在在哪,下一步该去哪",
  memory_type="insight"
)

preference(偏好) — 记录工作方式和个人偏好

save_memory(
  content="喜欢简洁代码风格,遵循 YAGNI 原则。
           三行相似代码好过一个提前的抽象,不为假设的未来需求设计",
  memory_type="preference"
)

domain_knowledge(领域知识) — 沉淀专业理解

save_memory(
  content="pgvector 向量搜索中,余弦相似度阈值设置:
           >0.95 几乎确定重复内容,
           0.85-0.95 高度相关但有差异,
           0.70-0.85 语义相关,
           <0.70 主题不同",
  memory_type="domain_knowledge"
)

智能去重机制

KnowMine 对每条新内容生成向量 embedding,与已有的 source='ai_memory' 记忆做余弦相似度对比。相似度 ≥ 0.90 时,不新建记忆,而是强化已有记忆:

第一次保存:"选 Drizzle,因为 Prisma 冷启动慢"
→ action: "created",创建新记忆

第二次保存:"Drizzle 比 Prisma 好,serverless 冷启动优化"
→ 相似度 0.93 ≥ 0.90
→ action: "reinforced",强化已有记忆,不新建

反馈:{"action":"reinforced","message":"已有类似记忆,已强化 (相似度: 93%)"}

这防止了知识库的碎片化——同一个决策被反复提及时,权重增加而非条目增加。

工具二:recall_memory — 语义搜索历史记忆

基本用法

recall_memory 使用向量语义搜索,不需要精确匹配关键词:

recall_memory(
  query="我之前对数据库选型有什么决策?",
  memory_type="decision",  // 可选,按类型过滤
  top_k=5                  // 返回数量,默认5
)

返回:{
  "count": 2,
  "memories": [
    {
      "id": "...",
      "content": "选择 Drizzle ORM 而非 Prisma...",
      "memoryType": "decision",
      "score": 0.87,
      "createdAt": "2026-03-14"
    }
  ]
}

搜索技巧

不需要精确关键词,用自然语言提问:

# 好的查询方式
"有哪些踩坑经验需要注意?"
"我对代码风格有什么偏好?"
"关于 pgvector 我知道哪些知识?"
"之前讨论过哪些产品方向决策?"

# 也支持英文查询(跨语言语义搜索)
"what database decisions did I make?"
"any lessons learned about ORM selection?"

语义搜索意味着即使你用中文保存、英文查询,或者用不同的表述,也能找到相关记忆。

工具三:get_soul — 导出用户画像

两种输出格式

format='full' — 返回结构化 JSON 画像(Phase 2 功能,积累 20+ 记忆后生成):

{
  "status": "ok",
  "soul": {
    "profile": {
      "role": "全栈开发者",
      "expertise": ["Next.js", "PostgreSQL", "AI工程"]
    },
    "thinkingPatterns": {
      "decisionStyle": "数据驱动,重视实际性能测试结果",
      "learningStyle": "边做边学,倾向于实际项目中验证理论"
    },
    "interactionPreferences": {
      "detailLevel": "适度详细,倾向结论先行",
      "responseStyle": "直接,避免废话"
    }
  }
}

format='system_prompt' — 返回可直接使用的 System Prompt 文本:

get_soul(format="system_prompt")

返回一段文本,可以粘贴到任何 AI 平台的 Custom Instructions:
"你正在与一位全栈开发者对话。他使用 Next.js 15 + Drizzle + Neon 构建 SaaS,
偏好 YAGNI 原则,对 Serverless 性能敏感。重要决策记录:..."

典型使用场景

  1. 开启新对话时get_soul() 获取用户画像,让 AI 立刻进入"懂你"状态
  2. 切换 AI 平台时get_soul(format='system_prompt') 导出文本,粘贴到新平台
  3. 团队协作时:分享 Soul 文件,让团队成员快速了解你的工作方式

自动分类:记忆保存到对应文件夹

KnowMine 根据 memory_type 自动将记忆分类到预设文件夹,无需手动整理:

memory_type自动分类到
decision, lesson🔧 开发笔记
insight💡 灵感洞察
domain_knowledge📖 学习资料
preference📌 随手记

6 个预设文件夹(开发笔记、灵感洞察、产品与市场、学习资料、反思总结、随手记)在账户创建时自动生成,开箱即用。

在 Claude Code 中使用

将 KnowMine 配置为 MCP 服务器后,Claude Code 会在对话中自动判断何时应该保存记忆。典型触发场景:

  • 做出技术选型决策后 → 自动调用 save_memory(memory_type='decision')
  • 遇到并解决了一个 bug → 自动调用 save_memory(memory_type='lesson')
  • 提出有洞察性的观点 → 自动调用 save_memory(memory_type='insight')

你也可以明确要求:"记住这个决策" / "把这个保存到记忆库" — Claude 会立刻调用工具。

为什么选择 KnowMine 而非 Claude 自带记忆?

能力Claude 内置记忆KnowMine AI 记忆
数据主权存在 Anthropic 服务器存在你自己的数据库
跨平台仅 Claude.ai任何 MCP 支持的 AI
搜索能力有限向量语义搜索
Web UI 管理完整的 Web 界面
导出 System Prompt一键生成
自定义分类6个预设+自定义文件夹

连接 KnowMine MCP,开始积累你的 AI 记忆knowmine.app

开始构建你的 AI 原生知识库

免费开始使用,连接 Claude、ChatGPT 等多种 AI

免费开始
save_memory 实战:用 MCP 工具让 Claude 自动沉淀对话知识 - KnowMine Blog