search_contactsLABSCO SUMMARY
Your own WhatsApp, searchable.
Finding the message where someone sent the address and then replying to it becomes one exchange — and the archive being searched is a SQLite file on your machine rather than a service.
What it is
A TypeScript server that connects to your personal WhatsApp account through the WhatsApp Web multi-device API, using Baileys. Messages and authentication state are stored locally in SQLite; data reaches the assistant only when it calls one of the tools.
What you get
- search_contacts finds a contact by name or part of a phone number
- list_chats lists your chats sorted by activity or name, filterable and paged, optionally with the last message
- list_messages returns the history of one chat, paged
- get_chat returns the details of a specific chat
- get_message_context returns the messages immediately before and after a given message, for when one line on its own is not enough
- send_message sends text to a person or a group by JID
Requirements
Node, and your own WhatsApp account linked over the WhatsApp Web multi-device API. Local state lives in ./data/ for messages and ./auth_info/ for authentication — deleting either means linking the account again.
Setup effort
Build from source
USE CASES
Finding the message with the detail you need
Search the contact, then page through that chat's history for the line you remember.
Replying without switching apps
Resolve the contact to a JID, then send the message from where you are already working.
Catching up on what you missed
Chats sorted by activity, with the last message attached, is the shortest version of an unread list.
Reading one line back in context
The messages either side of a quoted line usually explain it better than the line does.
6 tools
Listed in project docs. Your client may show a different list.
list_messageslist_chatsget_chatget_message_contextsend_messageBEFORE YOU INSTALL
What to know first
Tools you get
6 tools named in the project's documentation.
Requires
Node.js 23.10.0 or later
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
MCP Clients
Claude Desktop, Cursor
{
"mcpServers": {
"whatsapp": {
"command": "node",
"args": [
"<YOUR_PATH_TO_REPO>/src/main.ts"
],
"timeout": 15,
"disabled": false
}
}
}