MCP WhatsApp
Enables sending and receiving WhatsApp messages, images, documents, and more, along with managing chats, groups, contacts, and media through the WhatsApp API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP WhatsAppSend a message to +5511999998888 saying I'll be late"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
📱 MCP WhatsApp
Send messages, images, documents and more on WhatsApp — directly from any AI.
Works with Claude, Gemini, Cursor, Windsurf, Continue.dev and any MCP-compatible AI.
100% Open Source and MIT Licensed.
✨ What can you do?
Just talk to your AI naturally:
"Send a message to +5511999998888 saying the meeting is postponed"
"Send the invoice.pdf to the Clients group"
"Get the last 20 messages from my support chat"
"Create a group called 'Team Sprint' with these numbers"
No code. No manual API calls. Just ask.
Related MCP server: MCP WPPConnect Server
🚀 Quick Start (3 steps)
Step 1 — Clone and start WuzAPI
git clone https://github.com/YOUR_USER/mcp-whatsapp
cd mcp-whatsapp
docker compose up -dThat's it — WuzAPI starts automatically on http://localhost:7143 with message history enabled. ✅
The included
docker-compose.ymlsets everything up for you.
Default admin token:admin123(change viaWUZAPI_ADMIN_TOKENenv var).
Step 2 — Install the MCP server
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux / macOS
source .venv/bin/activate
pip install -e .Step 3 — Register with Claude Code (global, one-time)
# Windows (replace with your absolute path)
claude mcp add whatsapp -s user -- C:\path\to\mcp-whatsapp\.venv\Scripts\python.exe -m mcp_whatsapp.server
# Linux / macOS (replace with your absolute path)
claude mcp add whatsapp -s user -- /path/to/mcp-whatsapp/.venv/bin/python -m mcp_whatsapp.serverRestart Claude, then just ask:
"Configure my WhatsApp with token mytoken123"
Magic: The server will automatically create the user in WuzAPI for you (Plug & Play). No manual dashboard work required! 🪄
🔑 Manual Configuration (Optional)
If you prefer to use the dashboard, it is available at http://localhost:7143.
Open
http://localhost:7143→ click Admin ModeEnter the admin token — default is
admin123Go to Users → Create User, enter any name and choose a token.
"Configure my WhatsApp with token myusertoken"
💡 Two tokens, two purposes:
User token → sends/receives messages — this is what you use daily
Admin token → manages users — only needed for
whatsapp_admin_*tools
🔌 Connect to Your AI
Claude Code (recommended)
claude mcp add whatsapp -s user -- \
/path/to/.venv/bin/python -m mcp_whatsapp.serverThen ask Claude to configure:
"Configure my WhatsApp: token=abc123, url=http://localhost:7143"
Claude Desktop
Add to claude_desktop_config.json:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"whatsapp": {
"command": "/path/to/mcp-whatsapp/.venv/bin/python",
"args": ["-m", "mcp_whatsapp.server"],
"env": {
"WUZAPI_BASE_URL": "http://localhost:7143",
"WUZAPI_TOKEN": "your_token_here"
}
}
}
}Cursor / Windsurf / Continue.dev
Add to your editor's MCP config file:
{
"mcpServers": {
"whatsapp": {
"command": "/path/to/mcp-whatsapp/.venv/bin/python",
"args": ["-m", "mcp_whatsapp.server"],
"env": {
"WUZAPI_BASE_URL": "http://localhost:7143",
"WUZAPI_TOKEN": "your_token_here"
}
}
}
}Any other MCP-compatible AI
Transport: stdio (standard)
Command:
python -m mcp_whatsapp.serverEnv vars:
WUZAPI_BASE_URL,WUZAPI_TOKEN
🛠️ Available Tools (30+)
Category | Tools |
⚙️ Setup |
|
🔗 Session |
|
💬 Messages |
|
📥 Chat |
|
👤 Users |
|
👥 Groups |
|
🔔 Webhook |
|
📢 Newsletter |
|
🔐 Admin |
|
💡 Usage Examples
First-time setup
You: "Configure my WhatsApp with token abc123"
Claude: ✅ Configuration saved! Now use whatsapp_connect() to connect.
You: "Connect my WhatsApp"
Claude: [generates QR Code — scan with your phone]
You: "Check if WhatsApp is connected"
Claude: ✅ Connected as +5511999998888Sending messages
You: "Send 'Hello!' to +5511999998888"
You: "Send the file report.pdf to the Sales group"
You: "Send my location to +5511987654321"
You: "React with 👍 to the last message in chat 5511999998888@s.whatsapp.net"Managing groups
You: "List all my WhatsApp groups"
You: "Create a group 'Project X' with +5511111111111 and +5522222222222"
You: "Get the invite link for group 120363XXXXXXXX@g.us"📞 Phone Number Format
WhatsApp via WuzAPI uses numbers without the + prefix:
Format | Valid? |
| ✅ Brazil (DDD 11) |
| ✅ USA (415) |
| ❌ Remove the |
| ❌ Use country code |
📁 Project Structure
mcp-whatsapp/
├── pyproject.toml # Python project config
├── .env.example # Environment variables template
└── src/
└── mcp_whatsapp/
├── server.py # MCP server with all tools
└── wuzapi_client.py # Async HTTP client for WuzAPI🛡️ Security & Responsible Use
IMPORTANT: This project uses an unofficial WhatsApp API. Use it at your own risk.
To ensure your account stays safe and you remain compliant with global data laws (LGPD/GDPR), please follow these guidelines:
Avoid Spam: Do not use this tool for bulk messaging or automated marketing. Excessive automated activity is the #1 cause of WhatsApp account bans.
Privacy Guardrails: By default, this server includes masking for sensitive information (PII) like CPFs, Credit Cards, and Emails (when
WUZAPI_PRIVACY_MODE=true).Audit Logs: All tool calls are logged in
logs/audit_privacy.log. This is essential for transparency and accountability.Token Safety: Never share your
WUZAPI_TOKENorWUZAPI_ADMIN_TOKEN. These grant full access to your messages.AI Autonomy: Be careful when giving the AI "autonomy" to send messages. Always review the output if the AI is performing high-stakes tasks.
Terms of Service: Be aware that using unofficial APIs violates WhatsApp's Terms of Service. This tool is intended for personal productivity and research.
🤝 Contributing
Contributions are welcome! Feel free to open issues and pull requests.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes
Open a Pull Request
📄 License
This project is open-source and available under the MIT License.
Built with ❤️ for the MCP ecosystem
If this project helped you, please ⭐ star it!
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gabriellopesdesouza2002/mcp-whatsapp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server