local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Supports recording information about Python usage, such as command preferences (python3 vs python) through the memory management system
Enables storing and retrieving context about TypeScript projects the user is working on through the memory system
mcp-服务器内存
这是一个MCP服务器,用于与内存文本文件进行交互,以帮助 Claude 进行聊天上下文。
每一行都是一段回忆。
这些工具允许 Claude(和其他 MCP 客户端)在聊天过程中管理记忆:
memory_add(memory: string)
- 附加内存memory_search(query: string)
- 返回匹配的记忆(子字符串完全匹配) - 稍后可能允许 glob/regexmemory_delete(query: string)
- 删除匹配的记忆(子字符串完全匹配)memory_list()
- 返回所有记忆- 仅供参考
memory_update
==memory_delete
+memory_add
例如,
- 我提到我的名字 => “与韦斯交谈”
- 提及女儿的年龄 => “Wes 的女儿 8 岁”
- 说正在从事 TypeScript 项目 => “正在从事 TypeScript 项目”
- 而且,这很关键,可以基于 Claude(助理/法学硕士)所说或所做的事情......
- 值得注意的是,工具使用(即
run_command
)...假设第一次尝试使用该工具失败(即python
命令不存在),然后后续工具使用成功(即使用python3
而不是python
)=> Claude 可以记录“使用 python3,python 不存在”...
- 值得注意的是,工具使用(即
- 我要求克劳德摆脱关于 X 的记忆 => memory_delete(query: X)
- 我更正了我的名字 => memory_search("oldname") + memory_delete(每个匹配的记录,或一个公共子集查询) + memory_add("newname")
然后,当新的聊天开始时,Claude 会自动获取最近的记忆(部分或全部) ,或者可以请求获取记忆(部分/更多/全部)。然后可以利用这些记忆来影响回复/工具等等。
设计
一个简单的内存文本文件,为什么:
- ChatGPT 的记忆功能很好,本质上是一个文本文件
- 也许它是在幕后构建的,但如果你回顾你的记忆,它就会以文本文件的形式呈现。
- 我对
mcp-server-commands
的类似提醒功能进行了测试,效果很好(当 Claude 拥有它们时)。 - 非结构化文本简化了工具和参数,基本上管理字符串列表。
提示机制:
- 为模型提供提示,让它知道何时存储记忆也很重要。目前还不清楚如何才能最好地做到这一点,但是……
- 训练:OpenAI 承认,一些模型需要经过训练才能知道何时存储记忆。就像模型需要训练才能使用工具一样。
- 提示:系统提示组件可能包含触发存储记忆的提醒。
- 仅凭工具:在我对 Claude 的测试中,仅凭工具规范,即使在工具响应中添加了提示/建议,我也无法让 Claude 存储记忆。所以仅凭这一点是不够的。看来 Claude 使用工具的训练只是为了完成提示/请求,因此我相信在提示部分添加提醒/提示会很有效。
待办事项/想法
我不知道这些是否值得花时间,只是在这里列出一些未来的想法。或许是为了阻止自己继续做这些事 :)
- 新近因素:一种根据新近程度重新排列记忆的方法?
- 然后,顺序与模糊内存查询相关(即在 typescript 项目和 python 项目上工作,然后我要求启动一个新项目,可以建议最近使用的项目吗?)
- 淡忘旧记忆?
This server cannot be installed
MCP 服务器允许 Claude 和其他 LLM 通过文本文件存储管理跨对话的持久记忆,从而支持添加、搜索、删除和列出记忆条目的命令。