mcpField
T
Trove

Trove

远程服务
mytrove.in记忆与知识02 天前更新

关于 Trove

Trove 是开源 MCP 记忆服务,可让 Agent 在不同会话间共享带来源的知识图谱。它保留事实修订和证据,并支持托管或自托管,另附用于检查图谱的仪表板。

主要功能

  1. 01多个 Agent 共享长期记忆
  2. 02事实关联到引用来源文本
  3. 03保留历史修订并替代关系
  4. 04按令牌预算检索记忆
  5. 05导入 Obsidian 知识库
  6. 06提供图谱浏览器和检查状态仪表板

适用场景

  1. 01在 Agent 会话间延续决策和事实
  2. 02追溯检索到的事实及其来源文本
  3. 03查看已存观点随时间的变化
  4. 04从 Obsidian 知识库初始化共享记忆

MCP 相关

Trove 向 MCP 客户端提供记忆、摄取、检索、搜索、读取、连接和遗忘图谱数据的工具;可用工具取决于凭据权限范围。它还提供资源、提示词和使用说明。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mytrove.in/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

Trove

Trove

不断改进的上下文。
开源 MCP 记忆服务:为 Claude Code、Codex、Cursor 和任何 MCP 客户端提供共享且有来源依据的记忆。

CI 许可证:AGPL v3 问题 拉取请求 星标 在线访问 mytrove.in

网站 · 快速入门 · Agent 使用方法 · MCP 工具 · OAuth 连接器 · llms.txt


Trove 是一款开源 MCP 服务,可在共享知识图谱中为 AI Agent 提供长期记忆。你可以通过 mytrove.in 使用托管服务,也可以自行托管。Claude、Codex、Cursor 和任何其他支持 MCP 的 Agent 都可以将学到的内容写入其中,并在后续会话中回忆这些内容——每条事实都能追溯到作为依据的源文本。你的笔记始终可供检查;出现矛盾时,旧内容会被新内容取代,而非覆盖;整个图谱都能在内置仪表板中浏览。

Trove 仪表板示例:在记忆图谱中点击“14 天内退款”笔记,即可打开其摘要和链接

连接你的 Agent

让任何支持 MCP 的 Agent 连接 Trove,即可跨会话读取和写入你的图谱。在 mytrove.in 的仪表板上创建 API 密钥,然后:

# Claude Code (hosted)
claude mcp add trove --transport http https://mytrove.in/mcp \
  --header "Authorization: Bearer <your trove_ key>"

要运行自己的实例?使用 http://localhost:8787/mcp(禁用身份验证时无需密钥)。若要通过 claude.ai / Claude Desktop 的 连接器 面板连接,请添加 https://mytrove.in/mcp 并使用 Clerk 登录——请参阅 docs/oauth.md。

你的 Agent 将获得一组精简的工具,每种工具各司其职:remember、recall、grep、read、connect、forget(写入范围的密钥还可使用 ingest 和整理工具)。无需传入其他信息——你的密钥已指向自己的图谱,因此所有 Agent 都能共享它。

Agent 应如何使用——不要把它当作日终日志,而应当作工作记忆:重新推导前先加载,会话中途及时记录,并拆分成许多彼此关联的小原子。请参阅 docs/agent-usage.md。MCP 服务中也提供了相同的使用准则(instructions、资源 trove://doctrine 和工具描述)。

配套技能(可选,适用于 Claude Code)。 MCP 工具本身可在任何客户端中使用。直接从此仓库安装技能,让 Claude 按照正确的规范使用它们——重新推导前先回忆、引用证据、取代旧内容而不是删除:

npx skills add anunay999/trove -g

API 也会提供每项技能,因此可以让任何 Agent 阅读并遵循相关技能:索引位于 mytrove.in/skills.md(以及 /llms.txt),各技能文件位于 /skills/<name>.md。这些流程也作为 MCP 提示词提供,例如,Claude Code 中的 /mcp__trove__trove-curate 会在会话内整理你的图谱。

密钥、作用域、stdio、导入保险库等完整设置说明,请参阅 docs/quickstart.md。

你将获得什么

  • 持久的 Agent 记忆 — Agent 通过 MCP 工具(remember、ingest)保存事实、决策和笔记,之后使用 recall 检索;recall 会根据你设定的 token 预算,将最相关的记忆打包。
  • 穿越时间,而非覆盖内容 — 信念带有有效时间区间。信息发生变化时,旧关系会失效,但不会被删除,因此你可以查询图谱在任意时间点持有哪些信念。
  • 以构建方式确保有据可查 — 检索出的原子信息要么能追溯到带引用的源文本,要么会明确标记为 AGENT INFERENCE;检查器会标记缺少证据的节点(missing_evidence),供审核。
  • 仪表板 — 包含记忆 KPI、写入频率热力图、检查器健康状况,以及带有完整文档阅读器的交互式力导向图谱浏览器。
  • 导入你的笔记 — 将导入器指向 Obsidian 库,它就会成为图谱的种子。对于 log.md 这类以追加内容为主的文件,系统会将其拆分为逐条记录的片段并去重,因此重新导入时只会存储新增内容。

工作原理

Trove 是一个证据图谱:有来源的事实可追溯到引用文本,而没有证据支持的结论则会明确标记为 Agent 推断。 仪表板中的 Trove 记忆图谱:彩色笔记以链接相连

   raw source            addressable spans        distilled beliefs
  ┌───────────┐  ingest  ┌───────────────┐  remember  ┌──────────┐
  │ transcript│ ───────► │  text units   │ ─────────► │  nodes   │
  │ page/file │          │ (cited spans) │  (cites)   │ + edges  │
  └───────────┘          └───────────────┘            └──────────┘
                                                        ▲   recall / grep / read
                                              agents read back here

写入。 Agent 使用 ingest 存储原始材料,系统会将其拆分为可单独寻址的文本单元。随后,Agent 使用 remember 提炼值得保留的少量事实,生成小型语义节点,每个节点都会引用作为依据的文本单元,并通过 connect 将节点关联起来。remember 是唯一的写入入口:标题或 slug 完全匹配时,它会修订现有节点;否则就会创建新节点,因此 Agent 无需处理创建与更新的区分。

读取。 三个动词,分别对应不同的问题。recall 会构建一个按 token 预算限制的上下文包——混合词法与语义搜索会为单跳图谱扩展提供种子,候选内容会按相关性和 ACT-R 风格的激活度(近期性与频率)排序,再由贪心打包器填满你设定的预算。grep 用于对节点和原始来源进行精确或正则搜索,适合查找已知字符串(端口、slug、错误信息等)。read 根据 ID 或 slug 读取单个节点或来源。

改变看法。 事实和关系会保留记录历史,而不是被覆盖。每次节点修订都会保存其标题、摘要和内容快照;read({ asOf }) 会返回截至该时间记录的最新快照,如果事实当时尚不存在,则返回 null。关系的替代操作不会破坏历史:使用 supersedesEdgeId 调用 connect(或使用 forget)会使旧关系过期,而 neighborhood 使用 asOf 控制记录时间上的关系可见性,并使用 validFrom/validUntil 按现实时间筛选。recall 始终根据当前信念回答,并拒绝 asOf。历史节点读取中的证据和注释目前反映的是其当前状态。

保持更新。 服务内部的后台工作进程每 30 秒处理一次任务队列,以便为新写入内容生成嵌入、刷新投影并运行检查器。无需安排任务。

分级工具。 MCP 提供的工具会根据凭据的权限范围进行筛选。只读密钥只能使用 recall、grep 和 read;写入密钥还可使用 remember、connect、forget、ingest 和整理工具;管理员密钥还可使用运维工具(jobs、lint、export_obsidian)。可见性只是为了使用方便——每次调用仍会在服务端进行权限范围检查。

快速开始

使用托管服务 mytrove.in — 登录,在仪表板上创建 API 密钥,然后让你的 Agent 连接到 https://mytrove.in/mcp。或者,花大约五分钟自行运行。

→ docs/quickstart.md — 本地设置、API 密钥和权限范围、连接 Agent(Claude Code、stdio 和 claude.ai OAuth 连接器)、导入 Obsidian 库,以及启用语义搜索。

# the short version, locally
git clone https://github.com/anunay999/trove.git && cd trove
npm install                 # server + web dashboard
cp .env.example .env
npm run setup               # Postgres + schema + migrations
npm run web:build && npm start
# → dashboard at http://localhost:8787

部署

Trove 提供生产环境 Dockerfile(将 API 和仪表板打包在同一个镜像中)以及 railway.json。参考部署方案是 Railway + Supabase Postgres——请参阅 docs/deployment.md,了解完整流程,包括自定义域名。

了解更多

贡献与许可

欢迎提交拉取请求——请参阅 CONTRIBUTING.md。CI 会运行类型检查、存储测试套件和 Web 构建,且 main 分支要求 PR 经过审核。请勿在差异中加入机密或真实连接字符串。安全问题请参阅 SECURITY.md。

本项目根据 GNU AGPL-3.0 获得许可。你可以自由使用、修改和自托管 Trove;如果你将修改后的版本作为网络服务运行,则必须按照相同的许可证公开源代码。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。