Carry-On Skill 技能

# Carry-On - 跨 ChatGPT / Claude / Gemini 的 AI 记忆迁移 MCP 服务器

Carry-On - 跨 ChatGPT / Claude / Gemini 的 AI 记忆迁移 MCP 服务器

技能简介

Carry-On 是独立开发者 shenyinzhe 开源的 AI 记忆迁移 MCP 服务器,解决"换 AI 订阅就丢掉历史对话"的核心痛点:用户把 ChatGPT、Claude、Gemini 三家官方数据导出 zip 放进指定目录,Carry-On 在本机把它们合并到一个可搜索的统一档案,并通过 MCP(Model Context Protocol)对外暴露工具,让今天在用的 AI 助手可以即时检索过去与另一家聊过的内容。Carry-On 提供 Home Assistant 插件与 Docker 两种部署形态,原生支持 aarch64 / amd64,可选启用 Tailscale Funnel 让 claude.ai / chatgpt.com 不需域名与端口转发即可访问。

核心能力

  1. 官方导出优先:仅支持三家厂商的官方数据导出(ChatGPT 数据导出、Claude Takeout、Google Takeout),无需浏览器扩展、无需爬虫、无需 session cookie。
  2. 增量导入:把 zip 放进 inbox 目录即可导入;随时重新导出做增量导入,已导入数据不重复。
  3. 忠实解析:保留 ChatGPT/Claude 用户最终选定的分支(丢弃 edits / regenerations)、保留语音对话文本与附件文本、保留 Gemini Canvas 代码;Google 在 18 个月后会删除活动日志,Carry-On 跨多次 Takeout 自动合并 Gemini 内容。
  4. CJK 友好的 FTS5 检索:使用 SQLite FTS5 + 三元组 tokenizer,中文 / 日文无需分词也能搜。
  5. MCP 工具集:暴露 search(query, source?)、fetch(id)、list_recent(limit?, source?)、archive_stats() 四个工具,遵循 ChatGPT connector search/fetch 约定,同时兼容 Claude custom connector 与任何 MCP 客户端。
  6. 小而轻:约 1400 条 ChatGPT + 900 条 Gemini 对话 ≈ 130 MB 数据库、≈ 220 MB 内存。
  7. 公网可选 HTTPS:通过 CARRYON_TAILSCALE_FUNNEL=true 自动开启 Tailscale Funnel,无需自有域名与端口转发。

安装配置

  1. Home Assistant 插件:在 HAOS 加载项商店添加仓库 https://github.com/shenyinzhe/carryon ,安装 Carry-On 加载项,使用预构建镜像秒装;通过 UI 配置 secret、是否启用 Tailscale Funnel、hostname 等。
  2. Docker compose:执行 curl -O https://raw.githubusercontent.com/shenyinzhe/carryon/main/compose.yaml,写 .env 文件中的 CARRYON_SECRET(32 位随机串),运行 docker compose up -d;导出 zip 直接放进 ./share/inbox/。
  3. MCP 端点:默认 http://127.0.0.1:8765/{secret}/mcp ;启用 Tailscale Funnel 后 claude.ai / chatgpt.com 可直连此 URL。
  4. 配置变量:CARRYON_DATA(数据库目录,默认 ./data)、CARRYON_INBOX(导入监听目录,默认 ./inbox)、CARRYON_SECRET(32 位随机串)、CARRYON_TAILSCALE_FUNNEL(可选)、CARRYON_TAILSCALE_HOSTNAME(可选)。

使用步骤

  1. 分别从 ChatGPT、Claude、Gemini 申请官方数据导出(ChatGPT 设置→Data controls→Export;Claude Settings→Export;Google Takeout 选择 Gemini)。
  2. 把导出的 zip 文件放入 Carry-On 的 inbox 目录。
  3. 启动 Carry-On,导入完成后 SQLite 数据库写入 CARRYON_DATA 目录。
  4. 在当前 AI 客户端(Claude Desktop、Claude Code、ChatGPT connector、Codex 或任何 MCP 客户端)添加自定义 MCP 服务器,URL 填 http://127.0.0.1:8765/{secret}/mcp。
  5. 直接对话中说"搜一下我去年和 ChatGPT 聊过的 vector database"——AI 会调用 search 工具拿到候选,再用 fetch 拉取完整对话。
  6. 用 list_recent 让 AI 主动展示最近活跃的对话;用 archive_stats 查看每个来源的对话总数。

适用场景

  • 跨平台对话延续:用户换到 Claude 后仍想找 ChatGPT 时代聊过的项目上下文。
  • 法律 / 医疗专业工作:把多年的专业对话沉淀到本地工具,可随时调用检索。
  • 研究 / 写作素材库:把过去四五年和不同模型一起写的选题、参考文献、做整体改稿。
  • **跨境团队知识同步:中美同步员工 ChatGPT + Claude 数据合并检索,统一知识背景。
  • 离线归档备份:把 AI 时代的数据沉淀到本机 SQLite,避免厂商策略变更导致历史丢失。

适用人群

  • AI 重度用户:长期多平台混用 ChatGPT / Claude / Gemini 的深度用户。
  • 独立开发者 / 顾问:希望保留客户上下文、跨订阅延续项目对话。
  • 法律 / 医疗 / 教育从业者:对话记录属于专业档案,需要可控本地化。
  • 注重数据主权的极客:拒绝云端锁定,要求数据可携可迁可删。

工作原理

Carry-On 由 carryon/cli(import 与 search 命令行)与 carryon/server(HTTP MCP server)两部分组成。import 阶段分别解析 ChatGPT conversations.json、Claude conversations.json、Takeout 的 Gemini myactivity.json,写入 SQLite + FTS5 虚拟表,search 阶段对 messages_fts 做 MATCH 查询;server 阶段用 streamable HTTP 暴露 search/fetch/list_recent/archive_stats 四个工具,对接 ChatGPT connector 与 Claude custom connector 的 search/fetch 协议。安全模型是"长随机串 + 路径前缀"作为认证(因为 Claude custom connector 只接受无 auth 或 OAuth 服务器),OAuth 在路线图上。

官方链接

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论