MCP
Chatmaid WhatsApp API: send messages to contacts and groups from a linked WhatsApp number, read replies, check delivery status and usage.
Install
The installation steps are in the documentation below. Documentation
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
@chatmaid/mcp
MCP server for the Chatmaid WhatsApp Developers API. Send WhatsApp messages to contacts and groups, read the replies, and check delivery from Claude Code, Cursor, Windsurf, Claude Desktop, VS Code, and any other MCP-compatible AI client.
- Docs: chatmaid.net/docs/mcp
- API keys: developers.chatmaid.net
- Chatmaid: chatmaid.net
Install
Every client runs the same command, npx -y @chatmaid/mcp, with your API key in CHATMAID_API_KEY. Replace sk_test_xxx with your key after installing.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"chatmaid": {
"command": "npx",
"args": ["-y", "@chatmaid/mcp"],
"env": {
"CHATMAID_API_KEY": "sk_test_xxx_or_sk_live_xxx"
}
}
}
}
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"chatmaid": {
"command": "npx",
"args": ["-y", "@chatmaid/mcp"],
"env": { "CHATMAID_API_KEY": "sk_test_xxx_or_sk_live_xxx" }
}
}
}
Claude Code / CLI
claude mcp add chatmaid \
--env CHATMAID_API_KEY=sk_test_xxx \
-- npx -y @chatmaid/mcp
VS Code
Add to .vscode/mcp.json (VS Code prompts for the key and stores it securely):
{
"inputs": [
{
"type": "promptString",
"id": "chatmaid-api-key",
"description": "Chatmaid API key (sk_test_* or sk_live_*)",
"password": true
}
],
"servers": {
"chatmaid": {
"command": "npx",
"args": ["-y", "@chatmaid/mcp"],
"env": { "CHATMAID_API_KEY": "${input:chatmaid-api-key}" }
}
}
}
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"chatmaid": {
"command": "npx",
"args": ["-y", "@chatmaid/mcp"],
"env": { "CHATMAID_API_KEY": "sk_test_xxx_or_sk_live_xxx" }
}
}
}
Environment variables
| Variable | Required | Description |
|---|---|---|
CHATMAID_API_KEY | Yes | Your API key. Use sk_test_* for sandbox, sk_live_* for production. |
CHATMAID_BASE_URL | No | Override the API base URL. Defaults to https://developers-api.chatmaid.net. |
Get a key at https://developers.chatmaid.net/dashboard/api-keys.
Tools
| Tool | Description | ||
|---|---|---|---|
send_message | Send a WhatsApp message: fromPhoneId (use list_phone_numbers to find), to as an E.164 number or a group JID (from list_groups), plus content and/or mediaUrls, optional idempotencyKey. | ||
list_groups | List the WhatsApp groups a connected phone can post to; returned id values are group JIDs usable as to in send_message. | ||
list_messages | List recent messages, optionally filtered by status, phoneNumberId, with page/limit pagination. | ||
get_message | Fetch a message by ID, including final status and timestamps. | ||
list_inbound_messages | List messages received by your connected phone numbers (live only), optionally filtered by phoneNumberId, with page/limit pagination. | ||
get_inbound_message | Fetch an inbound (received) message by ID (inmsg_xxx). | ||
list_phone_numbers | List phone numbers registered to the account (scoped to your API key environment). | ||
get_phone_number | Get details for a single phone number. Accepts internal ID or E.164. | ||
get_phone_status | Check if a phone number is currently connected to WhatsApp. Accepts internal ID or E.164. | ||
get_account | Get current account info (accountId, name, email, subscription status). | ||
get_usage | Get usage stats for period = day \ | week \ | month (defaults to month). |
Example prompts
Once installed, you can ask your agent things like:
- "Send a WhatsApp message from my business number to +14155551234 saying the order has shipped."
- "What phone numbers are connected to my Chatmaid account?"
- "Check if message
msg_abc123was delivered." - "Show me the latest messages received on my business number."
- "How much of my WhatsApp quota have I used this month?"
The agent will call the right tool automatically.
Safety
- Always use
sk_test_*keys when prototyping with agents. Messages sent with test keys are simulated end-to-end through Chatmaid's sandbox — nothing goes out to WhatsApp. - Promote to
sk_live_*only when you've confirmed the agent's behavior.
Source
Open-source at github.com/chatmaid/mcp. PRs welcome. Listed in the official MCP Registry as io.github.chatmaid/mcp.
License
MIT © Chatmaid
Frequently asked questions
What is MCP?
Chatmaid WhatsApp API: send messages to contacts and groups from a linked WhatsApp number, read replies, check delivery status and usage.
How do I install MCP?
Follow the installation steps in its documentation, shown on this page and in its repository.
Is MCP open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains MCP?
It is published by chatmaid. AI.tn lists it but does not maintain or endorse it.
From the community awesome-mcp-servers lists and the project's GitHub repository. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.