lharries/whatsapp-mcp

WhatsApp MCP server

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 19 minutes ago
Added to GitGenius on November 14th, 2025
Created on March 29th, 2025
Open Issues & Pull Requests: 243 (+1)
Number of forks: 1,267
Total Stargazers: 6,189 (+0)
Total Subscribers: 50 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 12.5 hours
Mean response time: 24.3 days
90th percentile: 60.5 days
Tracked items: 70

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. 54% of tracked open issues have had no activity in three months. Only 3% of issues opened in the past year have been closed. Three people close 65% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 94
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 177 days
Stale 30+ days: 88
Stale 90+ days: 70

Recent activity

Opened in 7 days: 1
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The WhatsApp MCP server is a Go-based application that integrates WhatsApp messaging capabilities with the Model Context Protocol, enabling AI assistants like Claude to interact with personal WhatsApp accounts. The project bridges WhatsApp's web multidevice API with Claude Desktop and Cursor through a two-component architecture consisting of a Go WhatsApp bridge and a Python MCP server. Users can search and read personal WhatsApp messages including images, videos, documents, and audio, search contacts, and send messages to individuals or groups, all while maintaining local data storage in SQLite with selective sharing to LLMs only when accessed through controlled tools.

The repository is written primarily in Go and classified across multiple domains including WhatsApp, messaging, API clients, integration, webhooks, communication, business messaging, and developer tools.

Installation requires Go, Python 3.6 or higher, the Anthropic Claude Desktop app or Cursor, and the UV Python package manager. FFmpeg is optional but recommended for audio message handling, as it enables automatic conversion of non-Opus audio files to the .ogg Opus format required by WhatsApp voice messages. The setup process involves cloning the repository, running the Go WhatsApp bridge which prompts for QR code authentication via the WhatsApp mobile app, and configuring the MCP server connection in Claude Desktop or Cursor configuration files. Windows users must explicitly enable CGO and install a C compiler such as MSYS2 to compile the go-sqlite3 dependency.

The MCP server exposes comprehensive tools for WhatsApp interaction including search_contacts, list_messages, list_chats, get_chat, send_message, send_file, send_audio_message, and download_media. Message history is stored locally in SQLite within the whatsapp-bridge/store directory with indexed tables for chats and messages, ensuring efficient searching and retrieval. Media handling distinguishes between sending capabilities for images, videos, documents, and voice messages, and downloading capabilities where media metadata is stored locally but actual files are downloaded on demand through the download_media tool using message IDs and chat JIDs.

The project documentation includes detailed troubleshooting guidance addressing QR code display issues, authentication problems, device limit constraints, message loading delays, and database synchronization. The README explicitly warns users about the lethal trifecta security concern, noting that prompt injection could potentially lead to private data exfiltration. The technical architecture flows requests from Claude through the Python MCP server to the Go bridge, which accesses the WhatsApp API and maintains the SQLite database, with data flowing back through the chain and outbound messages following the reverse path to WhatsApp.