返回

文章详情

展示 HN:WhatsApp MCP 在 Cloudflare 上免费运行

Hacker News2026年10月18日 21:36

让你的 AI 助手读取你的 WhatsApp 消息。这是一个在你自己的 Cloudflare 账户中运行的小型服务器。你只需像连接 WhatsApp 网页一样将手机连接到它,然后任何 MCP 客户端(Claude Code、Claude Desktop,任何支持 MCP 的工具)都可以搜索和读取你的聊天记录。它可以读取和搜索你的消息,并记住你为电话号码指定的名称。它不能发送任何消息。问你的助手一些问题,例如:"Dana 对航班怎么说?" "找到我所有聊天中提到租约的每条消息。" "总结一下我本周在家庭群里错过的内容。" 其工作原理 你的手机保持信息的来源。该服务器是一个连接的设备,你的助手与之对话。它不会保持与 WhatsApp 的连接。当你的助手需要某些内容时,每天连接一次,收集自上次以来 WhatsApp 为它队列的所有内容,将其写入自己的数据库,然后挂断。你的手机正常工作并保持接收通知。你的消息保存在 Cloudflare 账户中的 Durable Object 内的 SQLite 数据库中。没有任何内容被发送到其他地方。 设置 你需要一个在 Workers 付费计划上的 Cloudflare 账户(请参见下面的说明)、Node 20 或更高版本,以及你的手机。 git clone https://github.com/finereli/whatsapp-mcp cd whatsapp-mcp npm install # 1. 用于登录令牌的地方。将打印的 ID 粘贴到 wrangler.jsonc 中。 npx wrangler kv namespace create OAUTH_KV # 2. 用于连接手机的页面的密码。12 个字符以上。 npx wrangler secret put OWNER_PASSWORD # 3. 部署。 npm run deploy Wrangler 会打印你的 URL,类似于 https://whatsapp-mcp.your-name.workers.dev 。打开它。首页有剩余的两个步骤:连接 WhatsApp。用 WhatsApp 扫描 QR 码(设置、已连接设备、连接设备)。如果你在手机上无法扫描屏幕,请使用手机号码选项。第一次连接会导入你的历史记录。该页面显示进度,你可以关闭它。连接你的助手。在 Claude Code 中:claude mcp add --transport http whatsapp https://your-url/mcp 然后输入 /mcp 并用密码登录。其他客户端:指向相同的 /mcp URL。如果你想要自己的域名,请查看 wrangler.jsonc 底部的评论。 Workers 付费计划说明 导入大量历史记录会一次解码大量数据,而 Workers 的默认 CPU 限制对此来说太小。 wrangler.jsonc 会提高限制,增加限制需要付费计划,每月几美元。我还没有尝试免费计划。如果你在使用它,请移除限制部分,并做好第一次导入会不稳定的准备。 需注意事项 这不是官方的。WhatsApp 没有用于读取自己私人消息的 API。此实现使用 WhatsApp Web 相同的协议,通过一个开源库(Baileys)。这违反了 WhatsApp 的条款。对于仅能读取的连接设备,实际风险较低,但并非为零。请在自己的账户上使用,并且不要用它发送消息。你会得到 WhatsApp 发送的内容。第一次连接会导入 WhatsApp 决定转交给新设备的任何历史记录。这可能不是全部。每个链接只进行一次导入。若要再次导入,请重新链接(你存储的消息会保留,重新导入会填补缺失的部分)。某些聊天以电话号码的形式显示。WhatsApp 不会向连接的设备提供每个联系人的名称,这些大多数是未保存的人的一次性消息。对于重要的联系人,你的助手可以解决:它会列出未命名的聊天,查找电话号码在你的联系人中的名称,借助它已有的联系人工具(例如 Google 联系人或 Gmail 连接器),并保存名称。服务器本身绝不会连接到联系人服务。请查看下面的 "命名聊天"。 媒体不会被下载。照片、语音信息和文件将显示为标签,如 [image] 或 [voice note 12s],如果有标题,则会显示标题。没有内容被转录。仅适用于一个人。一个部署对应一个 WhatsApp 账户和一个拥有者。这是故意的:每个部署持有完整的消息历史和帐户的实时登录,因此每个人应该运行自己的实例。 重新链接。如果你的手机提示设备已被移除,或者你想重新开始,请要求你的助手运行重新链接,或打开 /setup 并选择 "解除链接并再次扫描"。然后你会扫描一个新的 QR 码。存储的消息将被保留。 你的助手可以做什么 工具 功能 list_chats 聊天记录,最近的优先。按名称或号码过滤。 get_messages 读取一个聊天。按日期向前或向后翻页。 search_messages 在所有内容或一个聊天中进行全文搜索。 unnamed_chats 仅通过电话号码知道的聊天,按活跃度排列,附上对方说的最后一条消息。 set_contact_names 保存电话号码的名称,任何格式都可以。名称与号码绑在一起,因此在群组中也会显示。 sync_now 立即拉取新消息。 link_status 是否已连接,上次拉取何时,存储了多少。 relink 解除链接并重新开始。必须由人扫描新的 QR 码。每个读取工具在存储的副本超过时首先需要从 WhatsApp 更新。

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

☕请我喝杯咖啡