如果你同时维护过两个以上 AI Agent 项目,大概率遇到过同一个尴尬场景:Agent 在上一轮对话里刚刚确认了项目结论,换一个会话、换一个 Agent,或者重启一下服务,它就把之前的结论全忘了。上下文窗口再大,本质上也只是短期记忆;会话一关,什么都不会留下。这种“每次从零开始”的体验,和真人协作完全不同——人会把结论记在脑子里、写在文档里、同步给同事,而 Agent 默认什么都不会保留。
更麻烦的是多 Agent 协作。规划 Agent 定好了技术方案,执行 Agent 完全不知道;执行 Agent 踩过的坑,下一个任务还会原封不动再踩一遍。问题往往不在模型能力,而在于 Agent 之间缺少一份共享的、跨会话的、可持续读写的长期记忆。
Memento 这个项目的定位,正好瞄准这个痛点:为多个 AI Agent 提供共享、持久化的记忆,并通过 MCP(Model Context Protocol)将记忆能力暴露为标准化服务。一句话总结:它把“记忆”从某个 Agent 的内部状态,变成了外部的基础设施,任何支持 MCP 的客户端都能接入。
这篇文章会从真实问题出发,讲清楚 Memento 这类共享记忆服务到底解决什么、MCP 在其中的价值在哪里、如何准备环境并完成部署配置、如何用代码接入 Agent,以及落地时最容易踩的坑。全文以可落地为主线,读完你可以直接照着跑通一个最小闭环。
1. 多智能体协作中的“记忆断点”问题
1.1 上下文窗口本质上只是短期记忆
大模型本身没有记忆。它每一次推理能看到的,只有你这次请求里塞进上下文窗口的内容。窗口从几万 token 到百万 token 不等,但无论多大,它都是“临时”的:对话结束、会话关闭、服务重启,这段内容就消失了。
所以很多团队在做 Agent 时,第一感受往往不是“模型不够聪明”,而是“模型太健忘”。一个任务拆成三步,走完第一步,第二步如果拿不到第一步的结果,整个链路就断了。于是大家发明了大量补丁:把中间结果写进临时文件、塞进 Redis、存到数据库,再在下一次 Prompt 里拼回去。做法各不相同,本质都是在“手工搭建记忆”,既重复又容易出问题。
1.2 多 Agent 协作时的信息断层
单 Agent 健忘已经够头痛,多 Agent 协作时问题会被放大。典型场景有这么几类:
- 规划 Agent 负责拆解任务,执行 Agent 负责干活,但执行 Agent 看不到规划结论,只能重新理解需求。
- 两个 Agent 并行处理同一项目,一个改了关键约定,另一个毫不知情,最后产出互相冲突。
- Agent 之间各自产出结论,但谁也没有把关键决策沉淀下来,最终只能靠人肉汇总。
这类问题在代码生成、数据分析、自动化测试等场景里尤其常见。比如一个测试 Agent 发现接口返回结构变了,如果它不能把这个结论写入共享记忆,下一个任务里的编码 Agent 还是会用旧字段名去写代码,同样的错误会在同一个项目里反复出现。
1.3 现有方案的局限
先看目前团队常用的几种“记忆”方案,再对比它们各自的边界:
| 方案 | 优点 | 局限 |
|---|---|---|
| 上下文窗口 | 接入简单,效果直接 | 会话结束即失效,token 成本高 |
| RAG 向量检索 | 适合大规模知识库 | 偏“知识检索”,不擅长记录任务状态和决策 |
| 文件/数据库手写 | 可控性强 | 没有统一协议,每个 Agent 接入成本高 |
| 会话摘要回灌 | 能跨会话 | 摘要会丢失细节,多 Agent 之间难以共享 |
从这张表能看出,前几种方案解决的是“单 Agent 跨会话”或“知识问答”问题,真正缺少的,