Whatsapp MCP logo

Whatsapp MCP

by lharries

Search, read, and send WhatsApp messages and media through a locally connected MCP server.

Install Whatsapp MCP

Pick your client, then add it in one click or paste the config.

No confirmed install command yet

We only publish a config when the install details come from the project itself — its README, its docs, or a verified owner. We haven’t found those for lharries/whatsapp-mcp, and we’d rather show nothing than a guess you’d paste into your client.

Open setup steps on GitHub

Overview

The lharries/whatsapp-mcp MCP server connects an agent to a personal WhatsApp account through WhatsApp Web's multidevice API. It stores message history locally in SQLite and exposes tools for searching contacts, reading chats, retrieving media, and sending messages or files to individuals and groups. Use it when you need agent-assisted access to personal WhatsApp data through Claude Desktop or Cursor. WhatsApp authentication requires scanning a QR code, and both the Go bridge and Python MCP server must be running.

Use cases

  • Search personal WhatsApp conversations by contact or message context
  • Retrieve media from WhatsApp messages for local processing
  • Send text messages to individual contacts or groups
  • Share documents, images, videos, or audio through WhatsApp

Key features

  • Search contacts and message history
  • List chats and inspect conversation context
  • Send messages to contacts and groups
  • Send and download WhatsApp media
  • Store message data in local SQLite

Tools12

What Whatsapp MCP lets your agent do. Expand a tool for its parameters.

Self-reported~209 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

16/16 checks healthy over the last 30d

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars6.7kStargazers on the source repository.
Last commit1y agoMost recent push to the default branch.
Tools exposed12Callable tools this server registers over MCP.
Directory activity7 viewsConfig copies, upvotes, and views on AllMCPs.

How Whatsapp MCP works

What lharries/whatsapp-mcp MCP server does

The lharries/whatsapp-mcp MCP server provides MCP tools for working with a personal WhatsApp account. It can search contacts by name or phone number, inspect chats and messages, find recent interactions, and retrieve context around a specific message. It also supports sending text messages to individual recipients or groups identified by a group JID.

Media is supported in both directions. The server can send images, videos, documents, and audio files, and it can download media associated with a message. Audio can be sent as a playable WhatsApp voice message when the input is OGG Opus or when FFmpeg is available to convert another format. Without FFmpeg, audio can still be sent as a regular file.

How it works

The project has two cooperating processes. A Go bridge connects to WhatsApp's web multidevice API through the whatsmeow library. It handles the WhatsApp session, receives updates, and stores chats and messages in SQLite under whatsapp-bridge/store/. A separate Python MCP server exposes the agent-facing tools.

Requests from Claude or Cursor go to the Python process. Depending on the operation, that process queries the bridge or the local SQLite database. Outbound messages and files are passed through the bridge to WhatsApp. Message history is kept on the local machine and is sent to the language model only when an agent uses a tool to access it.

Setup and configuration

The lharries/whatsapp-mcp MCP server is run from a cloned repository rather than installed as a standalone package. Go and Python 3.6 or newer are prerequisites. UV is used to launch the Python MCP server, while the Go bridge is started with go run main.go from the whatsapp-bridge directory.

On first launch, the bridge displays a QR code for authentication. Scan it with the WhatsApp mobile application. Existing sessions can reconnect automatically, although re-authentication may be needed after roughly 20 days. The README provides MCP configuration examples for Claude Desktop and Cursor; those entries use UV with the repository's whatsapp-mcp-server directory and main.py.

Both processes need to remain available for the integration to work. FFmpeg is optional and is only needed for automatic conversion of audio into playable voice-message format. On Windows, the SQLite dependency requires CGO and a C compiler; the documented setup enables CGO before starting the bridge.

Tools and capabilities

The documented tools include:

  • search_contacts for contact lookup.
  • list_chats, get_chat, and contact-specific chat lookups for navigating conversations.
  • list_messages, get_last_interaction, and get_message_context for retrieving message history.
  • send_message for text messages to phone numbers or group JIDs.
  • send_file for images, videos, documents, and raw audio.
  • send_audio_message for WhatsApp voice messages.
  • download_media for obtaining a local path to media attached to a message.

Media metadata is stored by default. The actual media file is downloaded only when download_media is called with the relevant message ID and chat JID.

Limitations and notes

The lharries/whatsapp-mcp MCP server operates on a personal WhatsApp account and depends on WhatsApp's linked-device limits and session state. Initial history synchronization can take several minutes. If the bridge becomes out of sync, the documented recovery method is to delete the two SQLite database files in whatsapp-bridge/store/ and authenticate again.

Because an agent can access private messages and send outbound content, permissions and prompt-injection risks should be considered before connecting it to an account. The repository specifically warns that malicious instructions in project content could result in private data being exfiltrated. On Windows, failing to enable CGO or install a compatible compiler can prevent the bridge from working.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Whatsapp MCP

Clone the repository, start the Go bridge from `whatsapp-bridge` with `go run main.go`, then configure Claude Desktop or Cursor to run the Python server through UV from the repository's `whatsapp-mcp-server` directory.

Yes.

Yes. The README includes a Cursor `mcp.json` configuration and instructs users to restart Cursor after adding it.

The Go bridge connects through WhatsApp's web multidevice API. On first startup, scan its QR code with the WhatsApp mobile app.

Yes. `send_file` supports images, videos, documents, and raw audio. `send_audio_message` sends playable voice messages when the audio is OGG Opus or FFmpeg is available for conversion.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewWhatsapp MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/lharries-whatsapp-mcp?style=directory)](https://allmcps.com/mcp/lharries-whatsapp-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/lharries-whatsapp-mcp"><img src="https://allmcps.com/api/badge/lharries-whatsapp-mcp?style=directory" alt="Whatsapp MCP on AllMCPs" /></a>