一名开发者发布了一个小型服务器,使 AI Agent(例如使用 Claude Desktop 或 Claude Code 的 Agent)能够访问并搜索用户的个人 WhatsApp 消息历史。该项目在 GitHub 上以 `whatsapp-mcp` 托管,作为只读模型上下文协议 (MCP) 服务器运行。通过以类似于 WhatsApp Web 的方式将手机连接到服务器,用户可以授予 AI Agent 执行任务的能力,例如总结群聊中错过的消息或在所有对话中查找特定信息。该服务器设计为只读,这意味着它可以检索和搜索数据,但不能代表用户发送消息。

技术实现依赖于 Cloudflare Workers 和 Durable Objects 来托管服务器及其数据库。该系统使用 Baileys 库(一个实现 WhatsApp Web 协议的开源项目)来维持与用户账户的连接。为了确保隐私并减少资源消耗,服务器不会保持持续连接;相反,它每天连接一次(或在 Agent 提示时)来收集排队的消息,将它们写入 Cloudflare Durable Object 内的本地 SQLite 数据库,然后断开连接。这种架构确保了用户的消息保留在他们自己的 Cloudflare 账户中,而不是被传输到第三方服务。

whatsapp-mcp 项目的 GitHub 仓库预览,展示其作为只读 MCP 服务器的功能。
whatsapp-mcp 项目为 AI Agent 提供只读模型上下文协议服务器,用于访问 WhatsApp 消息历史。github.com

这张图片代表了 whatsapp-mcp 项目的 GitHub 仓库,该项目允许 AI Agent 搜索和读取个人的 WhatsApp 消息。

尽管该项目在个人组织方面具有实用性,但它也存在固有的风险和局限性。由于它使用的是 WhatsApp Web 协议而非官方 API,该工具在技术上违反了 WhatsApp 的服务条款,这可能导致账号被封禁。此外,该服务器仅导入 WhatsApp 选择提供给新关联设备的历史消息,这可能不包含完整的历史记录。该项目还面临硬件和软件限制:导入大型历史记录需要 Cloudflare Workers 付费计划以绕过默认的 CPU 限制,且系统不支持照片或语音备忘录等媒体文件,这些文件在数据库中仅显示为文本标签。对于关注隐私的用户来说,该项目的只读性质和自托管基础设施提供了一定程度的控制权,尽管数据仍可被连接到该服务器的 AI Agent 访问。