WhatsApp MCP server: a hosted WhatsApp connection for Claude, Cursor and any MCP client
A remote WhatsApp MCP server with OAuth: six tools for Claude, Cursor or any MCP client, on a QR-paired number or the official WhatsApp Business API.
Most "WhatsApp MCP" results are local bridges: clone a repository, log your personal WhatsApp in on your laptop, keep a process running. This page is about the other kind. WASync runs a remote MCP server at https://cloudapi.wasync.app/api/mcp. Your WhatsApp numbers stay connected on our side, the client signs in with OAuth, and the agent gets six tools scoped to the numbers you approved.
By Denis Tabac, founder of WASync. We run WhatsApp inside Bitrix24 and Pipedrive for companies in 20+ countries; the MCP server exposes those same connections to AI agents. Last reviewed 12 October 2026.
What is a WhatsApp MCP server?
MCP, the Model Context Protocol, is the open standard AI clients use to call tools. A WhatsApp MCP server turns WhatsApp actions into tools an agent can call: list the numbers it may use, read a conversation, send a message, mark a chat as read.
WASync's server is remote, over Streamable HTTP. There is nothing to install and no session on your machine. It is listed in the official MCP Registry as app.wasync/whatsapp, so clients and directories that read the registry find it by name.
How do I connect Claude or Cursor to WhatsApp?
Three steps, no key to paste.
Step 1, connect a number. Create an account at developers.wasync.app and connect a WhatsApp number: a normal number paired by QR code, or an official WhatsApp Business API number through Meta's sign-up. If you already use WASync in Bitrix24 or Pipedrive, your numbers are already there; switch on API & Agents in the app's settings.
Step 2, add the server to your client. In Claude, add a custom connector with the server URL. Clients that read a configuration file, such as Cursor, take this:
{
"mcpServers": {
"wasync": {
"url": "https://cloudapi.wasync.app/api/mcp"
}
}
}
A client that only speaks stdio can bridge with npx mcp-remote https://cloudapi.wasync.app/api/mcp.
Step 3, approve it once. The first call opens a browser window. You pick the numbers the agent may use and whether it may send or only read. The client stores the OAuth tokens; nothing is copied by hand.
The full walkthrough, with the OAuth details, is in the MCP guide.
What can the agent do with WhatsApp?
Six tools, each limited by the permissions you approved.
| Tool | What it does |
|---|---|
list_whatsapp_connections | Lists the numbers this authorization may use, with their status. Every other tool needs a connection id from here. |
get_whatsapp_connection | Checks one number: online or not, licence state. Read-only. |
read_whatsapp_messages | Reads stored messages, newest first, across all shared numbers or one of them. Paged. Nothing is sent and the customer sees no read receipt. |
send_whatsapp_message | Sends a text message from one of your numbers. Needs the send permission. |
mark_whatsapp_messages_read | Marks a customer's messages as read, so they see the blue ticks. Needs the send permission. |
send_whatsapp_file | Sends a file (image, document, audio or video) from one of your numbers: a public https URL, or a small base64 payload up to 5 MB, with a file name, type and optional caption. Needs the send permission. |
The send tool's own description tells the model to confirm the recipient and the exact wording with you before it sends, and never to guess a recipient.
Larger media, webhooks, idempotency keys and creating connections are REST API features, not MCP tools.
Hosted MCP server vs a local WhatsApp MCP bridge
| Local bridge from GitHub | WASync remote server | |
|---|---|---|
| Setup | Clone, build, pair, keep a process running | Paste one URL |
| Where WhatsApp runs | On your computer, through a reverse-engineered client | On WASync's servers |
| Number | Usually your personal number | Business numbers: QR-paired or official Business API |
| Sign-in | A local session file | OAuth 2.0 with PKCE, per number, revocable |
| Permissions | Everything the session can do | Read and send granted separately |
| Several numbers | One per bridge | Any number you connected, in one server |
| Works from a phone or web client | No, the bridge is local | Yes, it is a remote server |
| Cost | Free | $12 per month per number, on top of the connection |
A local bridge is free and fine for a personal experiment. It is also what Google's AI Overview warns about on this query: an unofficial client on your personal number. The official WhatsApp Business API is the route Meta supports for automated messaging, and it is one of the two connection types here. A QR-paired number works like WhatsApp Web, so WhatsApp's rules on unsolicited messages apply to it as to any number; WASync adds sending limits for fresh numbers.
Which WhatsApp numbers work with it?
Two kinds, the same two WASync runs inside CRMs.
- WhatsApp QR, $19 per month per number. A normal WhatsApp or WhatsApp Business number, paired by scanning a QR code. No Meta Business account, no approval wait, no per-message fee.
- WhatsApp Business API, $29 per month per number. The official Meta Cloud API number, connected through Meta's sign-up. Meta bills its own per-message rates on top; see what the WhatsApp Business API costs.
A number connected for Bitrix24 or Pipedrive is the same connection the MCP server uses. The agent reads the conversations your team already has.
What does the WhatsApp MCP server cost?
The server is part of the Platform API add-on: $12 per month per connection, on top of the connection itself.
| Setup | Per month |
|---|---|
| One QR-paired number with MCP | $19 + $12 = $31 |
| One Business API number with MCP | $29 + $12 = $41, plus Meta's per-message rates |
Connections start with a 7-day free trial, no card required. The add-on is activated on a paid connection, not during the trial. All prices in USD, before VAT. See pricing.
Is it safe to let an AI agent use WhatsApp?
Three things keep it in your hands.
- Permissions per number. Read and send are separate grants. An agent that may read conversations cannot send until you re-authorize with the send permission.
- Short-lived access. Access tokens expire in minutes and are refreshed by the client; revoking the authorization in the app or the developer console stops the agent at once.
- A send is a real message. It reaches a real person's phone in seconds and cannot be recalled. That is why the send tool asks the model to confirm the recipient and the wording first, and why the read tool never marks anything as read.
Messages the agent reads are the history already stored in your WASync workspace. Nothing new is collected for the agent.
MCP or the REST API?
Use MCP when a human-supervised agent should reach WhatsApp: answering from a chat client, drafting replies, looking up what a customer asked. Use the REST API when your own software owns the behaviour and needs webhooks, idempotency keys, media or provisioning.
An OAuth grant only covers numbers that already exist, so MCP cannot create a workspace's first connection. Connect the number first, then add the server.