Trending
#AI Engineering

lharries/whatsapp-mcp

Lets an LLM agent search, read, and send WhatsApp messages from your own account, locally.

6,712
1,440
Go
MIT
1 year old

The problem

Your WhatsApp history is the most complete record of your personal and work relationships, but it is locked inside a phone app that offers no real search, no cross-chat retrieval, and no programmatic access. If you want an AI assistant to answer "what did we agree on last month" or draft a reply in context, there is no legitimate hook for it to read the data. This project bridges that gap: a Go process links to your account through the WhatsApp Web multidevice protocol, mirrors messages into local SQLite, and a Python MCP server exposes that store as tools an agent can call.

What's different

Most "chat with your messages" approaches rely on exports, screenshots, or cloud APIs that do not exist for personal WhatsApp. Here the data path is local and the interface is MCP, so any MCP-capable client (Claude Desktop, Cursor) gets the same toolbox. The split architecture is the notable trade-off: the Go bridge owns authentication and sync, the Python layer owns tool definitions. That keeps the WhatsApp session alive independently of the agent and means message history stays queryable even when no LLM is connected. Credential handling is the weak point: it uses the linked-device mechanism and the README itself expects periodic re-authentication, roughly every 20 days.

Who it's for

Developers already running an MCP client who want their own WhatsApp data inside it, and who are comfortable building and babysitting a two-process setup on a machine that stays on. It suits personal-scale archives, not team deployments. Anyone needing multi-user access, hosted reliability, or compliance-grade audit trails should look elsewhere, as should users who cannot accept the risk the README calls out directly: an MCP server with private data plus outbound messaging is the classic prompt-injection exfiltration setup.

Cost of adoption

You need Go, Python 3.6+, uv, and optionally FFmpeg for voice messages. On Windows, go-sqlite3 requires CGO and a C compiler via MSYS2, which is the usual first failure. Both the bridge and the Python server must be running; setup is manual clone-and-configure with hardcoded paths in the JSON config. The license is MIT, the repo is young, and the README is honest about authentication expiry and the need to delete local databases when sync breaks. Expect occasional maintenance work, and treat the linked-device session as a credential worth protecting.

Verdict

The project is a focused, two-language glue layer rather than a polished product, and its popularity reflects how badly people want their own chat data exposed to agents. The Hacker News Show HN thread drew 229 points and 138 comments in 2025, and the repo has since reached about 6.7k stars; a monthly Go ranking gain of +418 suggests interest is still rising rather than a one-day spike. That said, the maintenance surface is real: WhatsApp's protocol changes, session expiry, and the inherent injection risk all sit on the user. Adopt it if you want a local, inspectable bridge and can own the operational burden; skip it if you need something turnkey or multi-tenant.

Hacker News

Show HN: WhatsApp MCP Server
▲ 229 · 138 comments · March 31, 2025
WhatsApp MCP Server
▲ 1 · 0 comments · March 29, 2025

Written by AI from the project's README, updated October 24, 2026. The project's own docs are the source of truth.