DeepSeek Harness 记忆 MCP 怎么移除?overlay、数据目录与工具注销
移除 DeepSeek Harness 的记忆 MCP,要分三层做:先撤加载配置,再重启让工具注销,最后按 provider 清数据目录与全局包。 很多人只做了第一层,结果“配置没了但记忆还在磁盘上”,或者“工具还在列表里”。DSH 对上游只负责连接与工具暴露,不负责下载、初始化或删除 provider 的数据;这条边界决定了清理必须手动完成。
DeepSeek Harness:三个 provider 的数据落点
删配置之前,先确认你用的是哪一个记忆后端,因为它们的落点完全不同。 对照如下:(来源)
| provider | 默认数据位置 | 覆盖变量 |
|---|---|---|
| Memorix | ~/.memorix/data | MEMORIX_DATA_DIR |
| Reference Memory | $HOME/.dsh-mcp-reference-memory.jsonl | MEMORY_FILE_PATH |
| Engram | ~/.engram | ENGRAM_DATA_DIR、ENGRAM_PROJECT |
如果当初在 patch 的 config.env 里改过路径,以实际配置为准。不要直接按默认路径删,先搜一遍 patch 文件里的环境变量。
DeepSeek Harness:撤掉加载配置的三条路径
记忆 MCP 默认关闭,靠 --patch 或 patch 行加载;移除时要按你当初的加载方式反向操作。 三种:(来源)
- 启动参数加载 — 从命令里去掉
--patch .../memorix.cordis.yml。预期:下次启动不再加载该 MCP。 - profile patch 加载 — 从
$DSH_HOME/profiles/<name>/cordis.patch.yml删除对应insert行。预期:只影响这个 profile。 - home patch 加载 — 从
$DSH_HOME/cordis.patch.yml删除对应行。预期:该 home 下所有 profile 都不再加载。
删除 patch 行时不要整段覆盖文件,里面可能还有别的插件配置。只删目标 insert,保留其他行和缩进结构。
DeepSeek Harness:MCP 重连与工具注销
移除配置后工具不一定立刻消失,崩溃重连与配置移除是两条不同的路径。 官方行为:(来源)
- 子进程崩溃 — 触发带退避的自动重连与工具重新同步。预期:停机期间工具仍列出,调用失败;重连成功后恢复。
- 重连预算耗尽 — 工具被注销,重连停止,直到重新加载或重启。预期:不是“配置被删了”,而是运行时放弃了。
- 主动移除配置 — 重启后不再连接,工具按 serverName 注销。预期:新会话看不到
mcp__前缀。 - 初始发现是异步的 — 启动后稍等再检查工具列表。预期:不会因为“刚启动没看到”就误判失败。
区分“运行时重连失败”和“配置已移除”,能避免反复改 patch。
DeepSeek Harness:验证工具注销
配置撤掉不等于工具立刻消失,必须重启并新开会话验证。 步骤:(来源)
- 重启 DSH 进程 — 让 MCP 客户端停止并注销工具。预期:启动日志不再出现该 serverName。
- 新建会话 — 旧会话可能保留工具快照。预期:新会话的工具列表里没有
mcp__<serverName>__...。 - 搜索工具名 — 让模型列一下可用工具,或看工具面板。预期:对应前缀完全消失。
- 检查端口/子进程 — stdio 模式不应再有 provider 子进程。预期:没有残留的 memorix、server-memory 或 engram 进程。
如果工具还在,先确认改的是不是当前启动用的 profile 与 home;再看是不是还有另一份 patch 在加载同一个 serverName。
DeepSeek Harness:清数据与全局包
数据清理是可选的第二层:只停用就保留,彻底移除再删。 按 provider 分别处理:(来源)
- Memorix — 删除
~/.memorix/data或自定义目录;如果不再使用,可npm uninstall -g memorix。预期:本地记忆与全局命令都消失。 - Reference Memory — 删除
~/.dsh-mcp-reference-memory.jsonl;如果不再使用,可npm uninstall -g @modelcontextprotocol/server-memory。预期:知识图谱 JSONL 与全局包都清理。 - Engram — 删除
~/.engram;如果不再使用,删除对应的 Go 安装二进制。预期:项目记忆与命令都清理。
删除前先备份需要的记忆文件。MCP 的记忆通常是长期积累的偏好与项目事实,误删后很难重建。
DeepSeek Harness:保留、备份与重装
如果只是暂时不用,保留数据、只撤加载配置是更稳的做法。 三种策略:(来源)
- 暂时停用 — 去掉
--patch或 patch 行,保留数据目录。预期:重新加载即可恢复。 - 迁移到另一台机器 — 复制 provider 数据目录,再在新机器上配同样的环境变量。预期:记忆跟着走。
- 彻底清理 — 撤配置、删数据、卸全局包。预期:不留残留,但不可逆。
重装时注意:stdio 桥接器在启动子进程前会移除名称像凭据的变量和所有 DSH_* 变量。如果 provider 需要额外密钥,要显式写进 config.env,不要指望父进程环境自动传入。
三个 provider 的命令速查
清理动作按 provider 分开做,别用一条命令套三种。 速查如下:
# Memorix:删数据 + 卸全局包
rm -rf "${MEMORIX_DATA_DIR:-$HOME/.memorix/data}"
npm uninstall -g memorix
# Reference Memory:删 JSONL + 卸全局包
rm -f "${MEMORY_FILE_PATH:-$HOME/.dsh-mcp-reference-memory.jsonl}"
npm uninstall -g @modelcontextprotocol/server-memory
# Engram:删数据目录 + 清理 Go 安装
rm -rf "${ENGRAM_DATA_DIR:-$HOME/.engram}"
执行前先把变量替换成你实际配置的路径;如果 patch 里改过 config.env,以 patch 为准。删除后重启 DSH,并新建会话确认 mcp__ 工具已经消失。
DeepSeek Harness 常见问题
Q:删了记忆 MCP,模型还会“记得”之前的事吗? 会话内的历史仍在,模型仍能看到当前对话;跨会话记忆来自 provider,数据没删就还在,只是不再被加载。
Q:MCP 子进程崩溃后工具消失,和卸载有关吗? 不一定。官方说明子进程崩溃会触发带退避的重连,重连预算耗尽后工具才注销;这时重启或重新加载即可,不一定是配置被删。
Q:能不能只删某个 serverName 的工具?
可以。把对应 insert 行移除并重启即可;同一个 MCP 客户端可以配置多个 serverName,删一个不影响其他。
一句话收束: 记忆 MCP 的“卸载”有三层:配置、工具、数据;只做第一层是停用,三层都做才是清理。
常见问题
DeepSeek Harness 里,不够。删掉 --patch 或 patch 行只会停止加载客户端配置,provider 自己的数据目录、全局 npm 包或 Go 二进制仍在磁盘上。要彻底清理,还要按 Memorix、Reference Memory、Engram 各自的落点手动删除。
DeepSeek Harness 里,可能是进程还没重启,或者旧会话保留了工具快照。DeepSeek Harness 的 MCP 工具按 mcp__<serverName>__<tool> 暴露;移除配置后应重启并新建会话检查,旧会话不一定会立即刷新。
DeepSeek Harness 里,Memorix 默认在 ~/.memorix/data,可用 MEMORIX_DATA_DIR 覆盖;Reference Memory 默认写入 $HOME/.dsh-mcp-reference-memory.jsonl,可用 MEMORY_FILE_PATH 覆盖;Engram 默认使用 ~/.engram,可用 ENGRAM_DATA_DIR 或 ENGRAM_PROJECT 覆盖。
DeepSeek Harness 里,不会。记忆 MCP 的数据由 provider 自己管理,与会话日志是两套存储。移除 MCP 不会删除 sessions;同样,删 sessions 也不会清掉 provider 的记忆数据。
DeepSeek Harness 里,从启动参数里去掉 --patch,或把对应 insert 行从 profile patch 中移除,然后重启。provider 的数据目录保留,之后重新加载同一份配置即可继续使用。
相关术语
- 记忆 MCP
- 记忆 MCP 是通过 MCP 协议接入 DeepSeek Harness 的第三方记忆服务,工具以 mcp__<serverName>__<tool> 暴露,数据由上游 provider 自己管理。— DeepSeek Harness 官方文档 - 连接第三方记忆 MCP 服务
- Memorix
- Memorix 是官方参考配置中的本地记忆 MCP 服务,默认数据目录为 ~/.memorix/data,可用 MEMORIX_DATA_DIR 覆盖,无需模型或 embedding 服务即可运行。— DeepSeek Harness 官方文档 - 连接第三方记忆 MCP 服务
- Reference Memory
- MCP Reference Memory 是官方参考配置中的本地知识图谱记忆服务,默认把 JSONL 写到 $HOME/.dsh-mcp-reference-memory.jsonl,可用 MEMORY_FILE_PATH 覆盖。— DeepSeek Harness 官方文档 - 连接第三方记忆 MCP 服务
- Engram
- Engram 是官方参考配置中的记忆 MCP 服务,默认使用 ~/.engram,并从 DSH 工作目录检测 Git 项目,可用 ENGRAM_DATA_DIR 或 ENGRAM_PROJECT 覆盖。— DeepSeek Harness 官方文档 - 连接第三方记忆 MCP 服务
来源
- DeepSeek Harness 官方文档 - 连接第三方记忆 MCP 服务· deepseek-ai
- DeepSeek Harness 官方参考 - 技能· deepseek-ai