
WhatsApp MCP
Connects Claude to WhatsApp via the whatsmeow protocol with a local Go bridge and Python MCP layer. Read chats and contacts, search messages with accent-insensitive matching, transcribe voice notes locally through whisper.cpp, and send texts with a mandatory two-step confirmation flow. SQLCipher encrypts the database at rest with keys in macOS Keychain, and every inbound message passes through a prompt injection scrubber before Claude sees it. Daily CI runs govulncheck and pip-audit. Reach for this when you need WhatsApp integrated into Claude workflows but can't accept the prompt injection and instant-send risks of lighter implementations. Ships with audit logging and no telemetry.
- tools
- 55
- auth
- Secret needed
- transport
- STDIO
- env vars
- 9
- last updated
- May 20, 2026
Tools
55 toolsPublic tool metadata for what this MCP can expose to an agent.
manycontacts.contextGet ManyContacts account overview: WhatsApp Business channels, contact/user/tag counts, active AI agents, and enabled features. Use this first to understand the account state.
Get ManyContacts account overview: WhatsApp Business channels, contact/user/tag counts, active AI agents, and enabled features. Use this first to understand the account state.
No parameter schema in public metadata yet.
manycontacts.contacts.listList WhatsApp Business contacts with filters (tags, team, date, unread, blacklist, scheduled). Returns paginated results.12 params
List WhatsApp Business contacts with filters (tags, team, date, unread, blacklist, scheduled). Returns paginated results.
assigned_tostringblackliststringdate_fromstringdate_tostringlimitnumberopenstringpagenumberscheduledstringstagesstringtagsstringteamstringunreadstringmanycontacts.contacts.getGet detailed information about a WhatsApp Business contact including tags, teams, and funnel stages.1 params
Get detailed information about a WhatsApp Business contact including tags, teams, and funnel stages.
phonestringmanycontacts.contacts.createCreate a new WhatsApp Business contact in ManyContacts CRM.3 params
Create a new WhatsApp Business contact in ManyContacts CRM.
namestringnotesstringphonestringmanycontacts.contacts.updateUpdate an existing WhatsApp Business contact (name, notes, custom fields).4 params
Update an existing WhatsApp Business contact (name, notes, custom fields).
customFieldsstringnamestringnotesstringphonestringmanycontacts.contacts.deleteDelete a WhatsApp Business contact from ManyContacts CRM.1 params
Delete a WhatsApp Business contact from ManyContacts CRM.
phonestringmanycontacts.contacts.assignAssign a WhatsApp Business contact to a team member.2 params
Assign a WhatsApp Business contact to a team member.
phonestringuserIdstringmanycontacts.contacts.unassignUnassign a WhatsApp Business contact (remove current user assignment).1 params
Unassign a WhatsApp Business contact (remove current user assignment).
phonestringmanycontacts.contacts.closeClose a WhatsApp Business conversation.1 params
Close a WhatsApp Business conversation.
phonestringmanycontacts.contacts.openReopen a closed WhatsApp Business conversation.1 params
Reopen a closed WhatsApp Business conversation.
phonestringmanycontacts.contacts.tag.addAdd a tag to a WhatsApp Business contact.2 params
Add a tag to a WhatsApp Business contact.
phonestringtagIdstringmanycontacts.contacts.tag.removeRemove a tag from a WhatsApp Business contact.2 params
Remove a tag from a WhatsApp Business contact.
phonestringtagIdstringmanycontacts.contacts.team.addAdd a team to a WhatsApp Business contact.2 params
Add a team to a WhatsApp Business contact.
phonestringteamIdstringmanycontacts.contacts.team.removeRemove a team from a WhatsApp Business contact.2 params
Remove a team from a WhatsApp Business contact.
phonestringteamIdstringmanycontacts.contacts.set_stageMove a WhatsApp Business contact to a funnel/pipeline stage.3 params
Move a WhatsApp Business contact to a funnel/pipeline stage.
funnel_idstringphonestringstage_idstringmanycontacts.contacts.bulkPerform bulk operations on multiple WhatsApp Business contacts (close, open, assign, add_tag, add_team).3 params
Perform bulk operations on multiple WhatsApp Business contacts (close, open, assign, add_tag, add_team).
actionstringphonesstringvaluestringmanycontacts.messages.listList WhatsApp Business messages for a contact. Shows the conversation history with timestamps and status.3 params
List WhatsApp Business messages for a contact. Shows the conversation history with timestamps and status.
limitnumberpagenumberphonestringmanycontacts.messages.send.textSend a WhatsApp Business text message to a phone number.2 params
Send a WhatsApp Business text message to a phone number.
bodystringphonestringmanycontacts.messages.send.noteSend an internal note on a WhatsApp Business contact (not visible to the contact).2 params
Send an internal note on a WhatsApp Business contact (not visible to the contact).
bodystringphonestringmanycontacts.messages.send.templateSend a WhatsApp Business template message (for outbound messaging outside the 24h window).3 params
Send a WhatsApp Business template message (for outbound messaging outside the 24h window).
phonestringtemplateIdstringvariablesstringmanycontacts.templates.listList WhatsApp Business message templates. Templates are required for sending messages outside the 24h conversation window.1 params
List WhatsApp Business message templates. Templates are required for sending messages outside the 24h conversation window.
statusstringmanycontacts.templates.getGet details of a specific WhatsApp Business message template including components and configuration.1 params
Get details of a specific WhatsApp Business message template including components and configuration.
idstringmanycontacts.templates.syncSync WhatsApp Business templates from Meta Cloud API. Fetches the latest templates from the connected WhatsApp Business account.
Sync WhatsApp Business templates from Meta Cloud API. Fetches the latest templates from the connected WhatsApp Business account.
No parameter schema in public metadata yet.
manycontacts.campaigns.listList WhatsApp Business bulk messaging campaigns with statistics (sent, delivered, read, failed counts).
List WhatsApp Business bulk messaging campaigns with statistics (sent, delivered, read, failed counts).
No parameter schema in public metadata yet.
manycontacts.campaigns.createCreate a WhatsApp Business bulk messaging campaign. Sends a template message to a list of phone numbers at a scheduled time.5 params
Create a WhatsApp Business bulk messaging campaign. Sends a template message to a list of phone numbers at a scheduled time.
datestringnamestringphonesstringtemplateIdstringvariablesstringmanycontacts.campaigns.deleteDelete a WhatsApp Business campaign.1 params
Delete a WhatsApp Business campaign.
idstringmanycontacts.org.getGet WhatsApp Business organization/account information (name, timezone, settings).
Get WhatsApp Business organization/account information (name, timezone, settings).
No parameter schema in public metadata yet.
manycontacts.org.updateUpdate WhatsApp Business organization settings (timezone, auto-reply, webhooks, etc.).10 params
Update WhatsApp Business organization settings (timezone, auto-reply, webhooks, etc.).
auto_reply_awaybooleanauto_reply_away_textstringauto_reply_closebooleanauto_reply_close_minutesnumberauto_reply_close_textstringauto_reply_openbooleanauto_reply_open_textstringtimezonestringwebhooks_forwardbooleanwebhooks_forward_urlstringmanycontacts.org.schedule.getGet the business hours schedule for the WhatsApp Business account.
Get the business hours schedule for the WhatsApp Business account.
No parameter schema in public metadata yet.
manycontacts.org.apikeyGet the organization API key.
Get the organization API key.
No parameter schema in public metadata yet.
manycontacts.channels.listList connected WhatsApp Business and Instagram channels.
List connected WhatsApp Business and Instagram channels.
No parameter schema in public metadata yet.
manycontacts.tags.listList all tags for categorizing WhatsApp Business contacts.
List all tags for categorizing WhatsApp Business contacts.
No parameter schema in public metadata yet.
manycontacts.tags.createCreate a new tag for WhatsApp Business contacts.2 params
Create a new tag for WhatsApp Business contacts.
colorstringnamestringmanycontacts.tags.updateUpdate an existing WhatsApp Business contact tag.3 params
Update an existing WhatsApp Business contact tag.
colorstringidstringnamestringmanycontacts.tags.deleteDelete a WhatsApp Business contact tag.1 params
Delete a WhatsApp Business contact tag.
idstringmanycontacts.teams.listList teams in the WhatsApp Business organization.
List teams in the WhatsApp Business organization.
No parameter schema in public metadata yet.
manycontacts.teams.createCreate a new team in the WhatsApp Business organization.1 params
Create a new team in the WhatsApp Business organization.
namestringmanycontacts.teams.add_memberAdd a user to a team.2 params
Add a user to a team.
teamIdstringuserIdstringmanycontacts.teams.remove_memberRemove a user from a team.2 params
Remove a user from a team.
teamIdstringuserIdstringmanycontacts.teams.deleteDelete a team from the WhatsApp Business organization.1 params
Delete a team from the WhatsApp Business organization.
idstringmanycontacts.funnels.listList sales funnels/pipelines for organizing WhatsApp Business contacts by stage.
List sales funnels/pipelines for organizing WhatsApp Business contacts by stage.
No parameter schema in public metadata yet.
manycontacts.funnels.createCreate a new sales funnel/pipeline for WhatsApp Business contacts.1 params
Create a new sales funnel/pipeline for WhatsApp Business contacts.
namestringmanycontacts.funnels.add_stageAdd a stage to a sales funnel/pipeline.3 params
Add a stage to a sales funnel/pipeline.
funnelIdstringnamestringordernumbermanycontacts.funnels.update_stageUpdate a stage in a sales funnel/pipeline.3 params
Update a stage in a sales funnel/pipeline.
funnelIdstringnamestringstageIdstringmanycontacts.funnels.contactsList contacts in a funnel/pipeline, optionally filtered by stage.4 params
List contacts in a funnel/pipeline, optionally filtered by stage.
funnelIdstringlimitnumberpagenumberstage_idstringmanycontacts.funnels.deleteDelete a sales funnel/pipeline.1 params
Delete a sales funnel/pipeline.
idstringmanycontacts.users.listList team members/users in the WhatsApp Business organization.
List team members/users in the WhatsApp Business organization.
No parameter schema in public metadata yet.
manycontacts.users.getGet details of a specific team member/user.1 params
Get details of a specific team member/user.
idstringmanycontacts.users.updateUpdate a team member/user profile.2 params
Update a team member/user profile.
idstringnamestringmanycontacts.users.inviteInvite a new team member to the WhatsApp Business organization.1 params
Invite a new team member to the WhatsApp Business organization.
emailstringmanycontacts.users.deleteRemove a team member from the WhatsApp Business organization.1 params
Remove a team member from the WhatsApp Business organization.
idstringmanycontacts.ai_agents.listList AI agents configured to auto-respond to WhatsApp Business messages.
List AI agents configured to auto-respond to WhatsApp Business messages.
No parameter schema in public metadata yet.
manycontacts.ai_agents.getGet details of a specific WhatsApp AI agent including scenarios and configuration.1 params
Get details of a specific WhatsApp AI agent including scenarios and configuration.
idstringmanycontacts.ai_agents.updateUpdate a WhatsApp AI agent's configuration (instructions, active status, etc.).5 params
Update a WhatsApp AI agent's configuration (instructions, active status, etc.).
activebooleanblock_1stringblock_2stringblock_3stringidstringmanycontacts.ai_agents.feedbackGet feedback/conversation logs for a WhatsApp AI agent.1 params
Get feedback/conversation logs for a WhatsApp AI agent.
idstringSponsors
Configuration
WHATSAPP_BRIDGE_HOSTdefault: 127.0.0.1Hostname for the Go bridge REST API.
WHATSAPP_BRIDGE_PORTdefault: 8080Port for the Go bridge REST API.
WHATSAPP_VAULT_CRM_PATHAbsolute path to a vault CRM folder for auto-injection (e.g., Obsidian 'CRM/'). When unset, CRM injection is disabled.
WHATSAPP_WHISPER_BACKENDdefault: local-cppVoice-note transcription backend. 'local-cpp' (default, private) or 'openai-api' (opt-in).
WHATSAPP_WHISPER_API_KEYsecretOpenAI API key. Required only when WHATSAPP_WHISPER_BACKEND=openai-api.
WHATSAPP_WHISPER_MODELdefault: large-v3whisper.cpp model name. Only used when backend is local-cpp.
WHATSAPP_SCRUB_PROMPT_INJECTIONdefault: trueStrip known prompt-injection patterns from incoming messages before the LLM sees them.
WHATSAPP_AUDIT_LOGdefault: trueLog every tool call to audit.log.
WHATSAPP_ENCRYPT_DBdefault: trueEnable SQLCipher DB encryption with the key sourced from macOS Keychain.
Readme
Details
- Repository
- github.com/adelaidasofia/whatsapp-mcp
- Categories
- Communication & Messaging, Media & Entertainment
- Package
adelaidasofia-whatsapp-mcp- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active
More from adelaidasofia
- Multi-workspace Slack MCP server with draft+confirm safety, vault auto-export, a1
- FastMCP seed raise pipeline tracker — syncs from Obsidian CRM, generates meeting
- FastMCP server for Obsidian wikilink suggestions from a pre-computed knowledge g
- Local-first personal finance MCP
- lu
- One MCP, many parsers
- Self-hosted GitHub MCP server
- FastMCP server for bidirectional sync between personal and team Obsidian vaults
- FastMCP server that pages on-call via 100+ notification channels (Apprise wrappe
- MCP server for RescueTime productivity data
- Linear MCP (multi-workspace, PAT auth)
- FastMCP server for surgical queries against a vault knowledge graph (NetworkX no2
- FastMCP server for Apollo1
- FastMCP server for Substack — publish Notes and posts, pull analytics, manage dr1
- macOS-only MCP server that exposes iMessage chat1
- Multi-account MCP for Gmail, Calendar, Drive, Docs, and Sheets — 61 tools, token1