微信聊天接入AI智能体实战

用 Tulpa MCP 把微信聊天记录接进 AI 智能体,让 Agent 能检索你的全部聊天

微信聊天接入AI智能体实战 封面图

这篇读完,你能把自己手机里的微信聊天记录,变成 AI 能直接检索的本地知识库——全程数据不出本机。

微信聊天记录是每个人最私密、信息密度最高的语料库,但它一直锁在客户端里,AI 摸不到。现在有一条纯本地的路子:用开源项目 Tulpa 的 MCP 轻量版,把微信聊天导入本地数据库,再通过 MCP 协议暴露给你的 AI 智能体——全程数据不出本机,微信服务器不参与,Agent 也不需要微信登录态。

我实测跑通了整条链路:22,936 条消息、465 个会话(跨度近一年)接进了 Hermes Agent,Agent 现在能直接检索我的微信聊天。这篇文章把完整操作流程讲清楚。

为什么这是热点

过去想让 AI 读微信,只有两条烂路:一是把聊天记录导出成文件再喂给模型,一次性、不实时、还容易泄露;二是调用非官方的微信协议接口,账号有风险。

MCP(Model Context Protocol)出现后,出现了第三条路:让一个本地工具去读微信数据,再以标准协议把"查询能力"交给 Agent。Agent 看到的是一个个工具调用(搜索消息、列出会话、读取上下文),而不是一堆裸数据。数据留在本地,能力交给 Agent——这是当下 AI 智能体圈子里最受关注的一类玩法。

Tulpa 就是干这件事的工具。它支持 QQ 和微信,本次用的是它的 MCP 轻量版。

数据流示意

整体架构:数据怎么流动

先搞清楚链路,再动手。整条路分三段,全部发生在本机:

① 微信PC客户端本地库 ──(Tulpa读取器解密+快照)──► Tulpa本地数据库
   D:\...\xwechat_files\    (加密SQLite)          chats.sqlite3

② Tulpa本地数据库 ──(MCP服务 127.0.0.1:18777)──► AI智能体
   22936条消息                                     Hermes / 其他MCP客户端

两个关键认知:

  • 微信客户端只在"导入"时需要开着。导入完成后,查询走的是 Tulpa 的本地快照,跟微信客户端无关。
  • MCP 是查询通道,不是导入通道。真正的导入由 Tulpa 的读取器完成,MCP 只负责把查询能力实时交给 Agent。

实操五步

第一步:下载并解压 Tulpa

到项目发布页下载 MCP 轻量版(Tulpa-MCP-0.5.3-win-x64.zip):

https://github.com/fumingyang2004/Tulpa/releases/tag/v0.5.3

轻量版包含导入、实时读取、聊天浏览、OneBot 和 MCP;语音模型按需安装,使用系统 WebView2。Windows 10/11 x64 适用。

完整解压后打开 Tulpa/Tulpa.exe。建议在设置里勾选「关闭窗口后留在托盘」,因为 MCP 服务挂在 Tulpa 进程上,Tulpa 必须保持运行,Agent 才查得到数据。

第二步:导入微信数据

打开 Tulpa 界面,进入「数据与同步」:

  1. 选择「微信」平台
  2. 确认数据目录正确(Tulpa 会自动探测微信 PC 版的本地数据目录)
  3. 起始/截止日期留空(留空 = 全量导入)
  4. 点击「读取」,等待导入完成

导入过程中,界面会实时显示进度:已新增、已有、跳过、已提交批次、用时。已完成批次会保存,中途停止后按相同设置重读可以继续,读取时会重新核对源数据并去重。

💡 如果你的聊天记录很多,首次全量导入可能耗时几分钟。Tulpa 默认每会话读取上限是 500 条,如需完整历史,在读取选项中把「每会话条数」调大(最高 10000)。

第三步:创建 MCP 连接凭据

顺序很重要:先导入数据,再创建凭据。

进入「外部 Agent / MCP」页面:

  1. 启用 MCP 服务,端口默认 18777
  2. 创建连接:连接名填一个你记得住的名字(如 hermes)
  3. 平台勾选「微信」
  4. 日期范围留空
  5. 权限按最小化原则勾选(见下节)
  6. 创建后,Token 只显示一次,立刻复制保存

这个 Token 是本地凭据,绑定数据源和账号。一旦遗失,在 Tulpa 里撤销重建即可——它只对本机 127.0.0.1 生效,泄露风险有限。

第四步:在 AI 智能体里配置 MCP

以 Hermes Agent 为例,在 config.yaml 里加入一个 MCP 服务条目:

mcp_servers:
  tulpa:
    url: http://127.0.0.1:18777/mcp
    headers:
      Authorization: Bearer <你保存的Token>
    connect_timeout: 60
    enabled: true

Tulpa 对外提供的是 Streamable HTTP MCP,所以配置用 url + headers.Authorization 的写法。保存后重启 Agent 网关。

第五步:验证

先测连通性:

hermes mcp test tulpa

正常会返回 Connected,并列出可用工具(实测 18 个)。再真实调一次数据状态工具,应该看到微信消息数和时间范围。

之后你就可以直接对 Agent 说:「查一下微信聊天里 XX 说过什么」,它会自动调用 Tulpa 的工具去检索。

权限最小化:只给只读

Tulpa 的 MCP 权限是可细分的。如果只是让 Agent 检索历史聊天,全部勾只读即可:

权限项是否开启说明
微信(读)✅查询聊天记录
全部会话✅覆盖所有会话
发送消息❌不需要
媒体/语音/表情❌不需要
管理/OneBot❌不需要

只读权限意味着 Agent 不可能以你的名义发消息。需要更多能力时,再回到 Tulpa 撤销凭据、重建、把新 Token 更新到 Agent 配置里。

本地数据安全

总结

维度说明
数据流向全程本地,微信服务器不参与
导入方式Tulpa 读取器解密本地库 → Tulpa 数据库
查询方式MCP 实时查询,Agent 不落盘副本
微信客户端仅导入时需要,查询时可关
Tulpa必须常开(MCP 挂在它进程上)
协议Streamable HTTP MCP,127.0.0.1:18777/mcp
权限可最小化到只读
工具数18 个

一句话总结:Tulpa 负责"把微信变成可查询的本地数据",MCP 负责"把查询能力交给 Agent",两者分工,数据始终在你手里。

项目地址:https://github.com/fumingyang2004/Tulpa/releases/tag/v0.5.3


如果觉得有帮助,点个「赞」和「在看」支持一下 👇

← 返回文章列表