Connect your AI agent to your own WhatsApp
A WhatsApp MCP server for Claude, Cursor and Codex. Link the number you already use, and your agent picks up new messages and answers them the way you would, using the notes you give it.
Invite only. Your own number, no server to run, and your phone keeps the power to unlink.
- Claude Code
- Cursor
- Codex
- OpenClaw
Claude desktop too, and any other MCP client that can send a header over Streamable HTTP.
Set it up once
One line in your agent, one QR scan on your phone, one instruction in plain words. There is no server of your own to run.
# the address and the key come with your invite claude mcp add --transport http whatzmcp <address> \ --header "X-API-Key: $WHATZMCP_API_KEY" > link my WhatsApp Opened a page with a QR code. On your phone: Linked devices, Link a device, scan it. Linked. The number ending in 44 is connected. > From now on you answer the WhatsApp on workshop days. The notes say which bikes are ready for pickup. Custom builds and their prices go to me first, not to the customer. Understood. Waiting for new messages. Friday 09:58
Codex: codex mcp add with a bearer token variable. Cursor: url and headers in mcp.json. Claude desktop: the mcp-remote bridge in its config file, or a custom connector. OpenClaw: Settings, MCP, or the config file, 2026.5.12 or later. Full steps are in the docs that come with the invite.
Add whatzmcp to your agent
One line in Claude Code or Codex, two in Cursor's mcp.json, a config file entry or a custom connector in Claude desktop, a settings screen in OpenClaw. The address and the key come with your invite.
Link the number you already use
Ask your agent to link your WhatsApp. It opens a page with a QR code; on your phone go to Linked devices, Link a device, and scan. An eight character code works instead. Chats stay on your phone.
Tell it what to do, in plain words
Brief it the way you would brief a person: what to answer from, what to leave to you. Your agent decides what to say; whatzmcp never writes or sends a message on its own.
Six things it does from your number
From the tool list and the webhooks page in the docs that come with the invite.
The limits are part of the product
They run on the server and no setting turns them off. They keep a linked number within what one person with a phone would do.
The exact figures are on the limits page of the docs that come with the invite. Daily counts reset once a day, and a refusal says when to try again.
By invite, for people who already run an agent
Solo founders, small teams and agency operators. One email when your spot opens; the address and the key come with it.
Invite only. Your own number, no server to run, and your phone keeps the power to unlink.
Hi Yara, your spot is open. Everything you need is below; keep this email.
You decide how far it goes
Your agent follows the brief you gave it. Ask it to check with you first, let it run, or unlink the number from your phone.
What people ask before they link a number
Every answer comes from the help docs. If yours is missing, ask in your invite thread.
What is a WhatsApp MCP server?
An MCP server is how an AI client such as Claude, Cursor, Codex or OpenClaw gets tools. whatzmcp gives your agent WhatsApp tools: see the linked number, wait for new messages, send a reply with text and one photo, file or document, check whether it was delivered or read, and see what is left of today's limits. Your agent decides what to say; whatzmcp never writes or sends a message on its own.
How do I connect Claude to WhatsApp?
Scan one QR code on your phone under Linked devices, then add whatzmcp to Claude desktop through its config file with the mcp-remote bridge, or as a custom connector with a request header if your account has that option. The address and the key come with your invite. Claude Code takes one command in the terminal. There is nothing to host.
Can Claude Code send and read WhatsApp messages?
Yes. Once added, Claude Code sees the whatzmcp tools: it can wait for new messages, read them, reply from your number with text plus one attachment, and check delivery. It acts on the instructions you give it, nothing else.
How do I connect OpenClaw to WhatsApp?
In the OpenClaw control UI open Settings, then MCP, and add whatzmcp with the address and the key from your invite, or add it in the config file. Use OpenClaw 2026.5.12 or later. A probe command then checks the connection.
Will my WhatsApp number get banned if an AI agent uses it?
Nobody can promise an account will never be restricted. whatzmcp links your number the way WhatsApp Web does, which is not the official WhatsApp Business API, and WhatsApp can disconnect or ban a number used for unsolicited messages. That is why every account has limits that run on the server: a ceiling on sends per day, a small ration of new people per day, a slow start for a freshly linked number, a wait after a few unanswered messages to one person, and a pause of the whole account when the same opener goes to a handful of strangers in a short time. The exact figures are in the docs that come with the invite. Reply to people who write to you and the risk stays low.
Does it work with ChatGPT or Cursor?
Cursor works: add the address and the key to its MCP settings. Codex and Claude Code work from the terminal, Claude desktop through a connector, and so does any other MCP client that can send a header over Streamable HTTP. ChatGPT does not work yet: its connectors cannot send a key, and a sign in for them is planned.
Do I need a server or webhooks to receive messages?
No. Your agent asks whatzmcp to wait for new messages; the request stays open for a short while and returns the moment something arrives, with a cursor so nothing is missed while the agent was closed. Signed webhooks exist for people who want them, but they are optional.
Can my agent message people who never wrote to me?
A few a day. Each account can start a small number of conversations with people who never wrote, a freshly linked number gets none on its first days and then a little more each day, and the agent can see how many are left before it writes. Replies to people who wrote first are not limited by this. Cold messages to bought or scraped lists are not allowed. The figures are in the docs that come with the invite.
> /mcp whatzmcp connected Streamable HTTP, key in a header
# every answer starts with the HTTP status, then the JSON body # a daily refusal says how long to wait before trying again
What /mcp shows once the server is added. The names of the tools, the request and response shapes and the OpenAPI document are in the docs that come with the invite.
The plumbing, in one screen
For whoever sets it up: one transport, a key in a header, the same operations over REST, signed webhooks for anyone who wants them.
- TransportStreamable HTTP only. No SSE, no stdio. Clients that cannot send a header use the mcp-remote bridge.
- AuthX-API-Key header or Authorization: Bearer. Keys in the URL are refused.
- ToolsOne per operation: accounts, waiting for messages, sending, delivery, usage, webhooks. The full list comes with the invite.
- RESTThe same operations plus message history, newest first. OpenAPI document included. A refusal carries the reason and, for daily limits, when to retry.
- WebhooksSigned events for messages and account changes, a test send, health, auto pause after repeated failures, enable again.
- DashboardLink WhatsApp, create and revoke keys, add and test webhooks, see messages and usage.
From the tool list, the transport and the webhooks pages in the docs that come with the invite.
An agent behind your WhatsApp number
Invite only. Your own number, no server to run, and your phone keeps the power to unlink.