Skip to main content

WhatsApp MCP Server for macOS - Connect Claude to your WhatsApp

Project description

WhatsApp MCP for macOS

A Model Context Protocol server that connects Claude to your WhatsApp. Read messages, search contacts, send replies — all through natural conversation.

macOS MCP 1.0 MIT License

Features

  • Search contacts — Find anyone by name or phone number
  • Read messages — Get chat history with date filtering and search
  • List chats — See recent conversations with unread counts
  • Send messages — Reply directly through Claude (with QR authentication)
  • Real-time incoming — Get messages as they arrive

Requirements

  • macOS with WhatsApp desktop app installed and logged in
  • Python 3.10+
  • Node.js 18+ (for sending messages)

Installation

Using pip

pip install whatsapp-mcp-macos

From source

git clone https://github.com/kalki-kgp/whatsapp-mcp.git
cd whatsapp-mcp
pip install -e .

Connect to Claude Desktop

  1. Open config file:

    open ~/Library/Application\ Support/Claude/claude_desktop_config.json
    

    If it doesn't exist, create it.

  2. Add the WhatsApp MCP server:

    {
      "mcpServers": {
        "whatsapp": {
          "command": "python3",
          "args": ["-m", "whatsapp_mcp"]
        }
      }
    }
    
  3. Restart Claude Desktop (Cmd+Q, then reopen)

  4. Look for the MCP tools icon (🔨) in the chat input — click it to verify "whatsapp" is listed

  5. Start chatting:

    • "Show my recent WhatsApp chats"
    • "Search messages for dinner plans"

Connect to Cursor

Add to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "whatsapp": {
      "command": "python3",
      "args": ["-m", "whatsapp_mcp"]
    }
  }
}

Restart Cursor and use WhatsApp tools in the AI chat.

Usage

Reading messages (works immediately)

Just ask Claude:

  • "Show my recent WhatsApp chats"
  • "Search for messages about dinner"
  • "What did John say yesterday?"
  • "Catch me up on unread messages"

Sending messages (requires bridge)

  1. Start the WhatsApp bridge:

    cd bridge && npm install && npm start
    
  2. Ask Claude to check connection:

    • "Check WhatsApp status"
  3. If it shows a QR code, open the data URL in a browser and scan with your phone

  4. Once connected, you can send:

    • "Send a message to Mom saying I'll be late"
    • "Reply to John with 'sounds good'"

Tools

Tool Description Requires Bridge
whatsapp_status Check connection, get QR if needed No
whatsapp_search_contacts Search contacts by name/phone No
whatsapp_list_chats List recent conversations No
whatsapp_get_messages Get messages from a chat No
whatsapp_search_messages Search across all chats No
whatsapp_unread Get unread message summary No
whatsapp_send Send a message Yes
whatsapp_incoming Get real-time incoming messages Yes

How it works

Claude ──MCP──▶ WhatsApp MCP Server
                       │
                       ├──▶ Local SQLite DBs (read messages)
                       │    ~/Library/Group Containers/group.net.whatsapp.WhatsApp.shared/
                       │
                       └──▶ WhatsApp Bridge (:3010) ──▶ WhatsApp Web
                            (for sending)

Read operations query the local WhatsApp database directly — fast and works offline.

Send operations go through the bridge, which connects to WhatsApp Web using Baileys.

Development

# Clone
git clone https://github.com/kalki-kgp/whatsapp-mcp.git
cd whatsapp-mcp

# Install in dev mode
pip install -e ".[dev]"

# Run server
python -m whatsapp_mcp

Privacy

  • All data stays local — messages are read from your own WhatsApp database
  • No data is sent to external servers (except WhatsApp Web when sending)
  • The MCP server runs locally on your machine

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

whatsapp_mcp_macos-0.1.1.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

whatsapp_mcp_macos-0.1.1-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file whatsapp_mcp_macos-0.1.1.tar.gz.

File metadata

  • Download URL: whatsapp_mcp_macos-0.1.1.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for whatsapp_mcp_macos-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5ae090d0e9d22d2ba5f22e398ebe564da56220957eff31a4e230600b448c076b
MD5 8959808115168ddac9ccdfcfeb304658
BLAKE2b-256 1b276ef0a82604d194605bc77622fea902e81c363d011d1c2c12f3cd5d09c051

See more details on using hashes here.

File details

Details for the file whatsapp_mcp_macos-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for whatsapp_mcp_macos-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 62bcebdd43ec1c09e37ce2ccb922ccbdd653f5bcdaac91d5e95653a499902186
MD5 4ba5359069ef773882c92c9beedf3150
BLAKE2b-256 3dc247555175adb5f63015ee42eef2a81706eabd11c821c3d8c411b59ad139ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page