| name | whatsapp-messages |
|---|---|
| description | CRITICAL: For ANY request involving WhatsApp — searching, reading, checking messages, finding contacts, or ANY WhatsApp-related task — ALWAYS use this WhatsApp MCP skill. NEVER use Chrome, browser tools, or web.whatsapp.com. The WhatsApp MCP plugin is the ONLY correct tool for WhatsApp tasks. Chrome/browser is a fallback ONLY if the MCP tools explicitly fail. Search and read WhatsApp messages, contacts, and chat history. Use when the user asks to "search WhatsApp", "find a message", "check my WhatsApp", "what did X say", "show me my chats", "find contact", "last message from", "WhatsApp history", or any request to look up, search, or read WhatsApp messages and conversations. Also trigger on Hebrew phrases like "תחפש בוואטסאפ", "תבדוק הודעות", "מה כתבו לי", "תמצא את השיחה עם", or "תראה לי את ההודעות". Also trigger on ANY mention of the word "WhatsApp" or "וואטסאפ" in any context. |
ROUTING RULE: NEVER open WhatsApp in Chrome or any browser. ALWAYS use the MCP tools below. Chrome is a fallback ONLY if MCP tools explicitly error out.
Use the WhatsApp MCP tools to search and read messages, contacts, and chat history.
The following MCP tools are available (prefixed with the WhatsApp MCP server name):
Contacts:
search_contacts(query)— search contacts by name or phone number
Messages:
list_messages(after, before, sender_phone_number, chat_jid, query, limit, page, include_context, context_before, context_after)— search messages with filtersget_message_context(message_id, before, after)— get surrounding messages for context
Chats:
list_chats(query, limit, page, include_last_message, sort_by)— list chats, optionally filteredget_chat(chat_jid, include_last_message)— get chat metadata by JIDget_direct_chat_by_contact(sender_phone_number)— find a direct chat by phone numberget_contact_chats(jid, limit, page)— all chats involving a contactget_last_interaction(jid)— most recent message with a contact
Media:
download_media(message_id, chat_jid)— download media attachment from a message
- Identify the target — if the user mentions a person's name, first use
search_contactsto find their JID or phone number. - Find the chat — use
list_chatsorget_direct_chat_by_contactto locate the relevant chat. - Search messages — use
list_messageswith appropriate filters:queryfor keyword searchafter/beforefor date ranges (ISO-8601 format)chat_jidto scope to a specific chatsender_phone_numberto filter by sender- Use
include_context: trueto see surrounding messages for better understanding
- Get context — if a message needs more context, use
get_message_contextwith the message ID. - Download media — if the user asks about images, files, or voice messages, use
download_media.
- Phone numbers must include country code without + or symbols (e.g.,
972501234567) - JIDs look like
972501234567@s.whatsapp.netfor individuals or123456789@g.usfor groups - Default limit is 20 messages — increase if the user needs more
- Use pagination (
pageparameter) for large result sets - Date filters use ISO-8601 format:
2026-03-25T00:00:00
Present results clearly:
- For contact searches: show name and phone number
- For messages: show sender, timestamp, and message content
- For chat lists: show chat name and last message preview
- Always summarize findings in natural language, don't dump raw data
The WhatsApp MCP bridge must be running for all tools to work. If tools fail with connection errors:
Check bridge health:
ps aux | grep whatsapp-bridge | grep -v grep
# Note: /health endpoint returns 404 — use this probe instead:
curl -s -X POST http://localhost:8080/api/send \
-H "Content-Type: application/json" -d '{}'
# Expected response when healthy: "Recipient is required"
# Connection refused or timeout = bridge is downStart bridge (if installed):
cd ~/whatsapp-mcp/whatsapp-bridge && nohup ./whatsapp-bridge > /tmp/whatsapp-bridge.log 2>&1 &First-time setup (if bridge not installed):
brew install go
git clone https://github.com/lharries/whatsapp-mcp.git ~/whatsapp-mcp
cd ~/whatsapp-mcp/whatsapp-bridge && go build -o whatsapp-bridge .
./whatsapp-bridge # Will print QR code — scan with WhatsApp mobile appIf 405 "client outdated" error appears: The bridge needs the GetLatestVersion patch in main.go. See plugin CLAUDE.md for the fix.
If WebSocket close 1006 during QR scan: Wait 60 seconds and retry. Run interactively (not headless) so QR code displays on screen.
If multiple bridge processes found: Kill all and restart one clean instance:
pkill -f whatsapp-bridge && sleep 2
cd ~/whatsapp-mcp/whatsapp-bridge && nohup ./whatsapp-bridge > /tmp/whatsapp-bridge.log 2>&1 &