What the WhatsApp MCP server can do
The MCP server has nine tools. Each one checks the key's scopes and role on every call, so an assistant can only do what the key you gave it allows.
- List unassigned conversations (longest waiting first when you ask for older ones) and assign a conversation to a team member with an optional note.
- Save a flow draft and publish it. Publishing needs an explicit confirm, so a draft never goes live by accident.
- List your WhatsApp templates with their Meta review status, and create a new template and submit it to Meta for review.
- Preflight a broadcast to see recipients, estimated cost, warnings and blockers without saving anything, then launch it. A launch needs a clean preflight of the same campaign in the last 10 minutes.
- Read your store automations (order confirmation, COD confirmation, review requests, cart recovery) and switch one on or off.
Publishing a flow, submitting a template and switching on a store automation need confirm:true, and a broadcast launch needs a matching preflight first, so the assistant has to show you the details before anything goes live.
Connect Claude, Cursor or another MCP client
Open Settings, API and MCP in your workspace. Create a key with the "MCP key" preset, which makes an admin key with exactly the scopes the tools need. The key is shown once, so copy it then.
Point your MCP client at your Chatzyn address followed by /api/mcp and send the key in the Authorization header as a Bearer token. The same page shows ready-to-copy setup for Cursor (.cursor/mcp.json) and Claude Code (.mcp.json or the claude mcp add command).
Claude can also connect through a sign-in and consent screen instead of a pasted key. Apps connected that way are listed under Connected apps on the same settings page, where you can revoke them.
- The server uses the Streamable HTTP transport and is stateless: every request is authenticated again from its own key.
- Each request carries one message. Batches are refused.
- A key belongs to one workspace. There is no way for it to reach another workspace.
WhatsApp REST API for developers
The REST API lives at /api/v1 on your Chatzyn address. You authenticate with the same workspace API keys, sent as a Bearer token in the Authorization header. Keys are never accepted in the URL.
Every key has scopes and a role (viewer, agent or admin), chosen when you make it. An admin key sees every conversation in the workspace. An agent or viewer key sees only the conversations assigned to the person who made it, the same rule the inbox uses.
- Contacts: list, search by name, email or phone, create, update and soft delete. Phone numbers are normalised, so +91 98765 43210 and 919876543210 find the same person.
- Conversations: list them and read message history, including when the 24 hour customer service window closes.
- Messages: send free-form text or media into a conversation. Upload the file first with the media endpoint, including WhatsApp voice notes.
- Templates: list your approved templates and how many variables each body has.
- Wallet and me: check the prepaid message balance and which workspace and scopes a key has.
Template sends are not in the REST API yet. Send templates from the dashboard, a broadcast, or the MCP broadcast tool.
Outbound webhooks
Add your endpoint under Settings, Webhooks and choose the events you want. Chatzyn posts events such as a new incoming message, a message status change (sent, delivered, read or failed) and a conversation being opened.
Each endpoint has its own secret. Every delivery carries a timestamp and an HMAC SHA-256 signature over the timestamp and the raw body, so you can check it came from Chatzyn and reject old replays. Failed deliveries are retried with backoff, and every attempt is visible in the dashboard.
Inside automation flows you can also call your own webhook or REST endpoint as a step, for example to look up an order before replying.
Limits and the rules every send still follows
- 120 requests a minute per key, with the remaining count in every response header. Give each integration its own key so one script cannot slow down the others.
- Each call also counts against your plan's monthly API allowance. See Pricing for what each plan includes.
- A send is queued, then checked again before it reaches Meta: the 24 hour window, opt-outs, blocked contacts and the number's health. A queued message is not a delivery promise, so watch the status webhook.
- Errors always come back in one JSON shape with a request id you can quote to support.
Official Meta APIs only
Chatzyn connects to WhatsApp only through Meta's official Cloud API, including Coexistence for numbers that keep using the WhatsApp Business app. It does not use unofficial WhatsApp Web gateways, which get numbers banned.
That also means Meta's rules apply to anything an AI assistant does. Marketing messages need an approved template and customers who opted in, and free-form replies only work inside the 24 hour window after the customer last wrote to you.
Questions people ask
What is a WhatsApp MCP server?
It is an endpoint that speaks the Model Context Protocol, so an AI assistant like Claude or Cursor can call tools on your WhatsApp account. Chatzyn's MCP server lets an assistant triage and assign chats, manage templates and flows, and preflight or launch a broadcast in your workspace.
How do I connect Claude to WhatsApp?
Create a key with the MCP key preset in Settings, API and MCP, then add your Chatzyn address followed by /api/mcp as an MCP server in Claude Code, with the key as a Bearer token. Claude can also connect through a consent screen, and you can revoke it under Connected apps.
Can the AI send WhatsApp messages on its own?
Only what the key allows. Launching a broadcast needs an admin key with the right scopes, and a clean preflight of the same campaign in the last 10 minutes. The launch is refused if the audience has grown well past the count approved in that preflight. Meta's template and opt-in rules still apply to every message.
Which plans include the API and MCP server?
API access, which covers the REST API and the MCP server, is on the Growth and Pro plans. Outbound webhooks are on paid plans. See Pricing for current plans and the free trial.
Is this the official WhatsApp API or an unofficial one?
Official. Messages go through Meta's WhatsApp Cloud API from your own connected business number. Chatzyn never uses unofficial gateways.
How do I verify Chatzyn webhooks?
Recompute HMAC SHA-256 over the timestamp header, a dot and the raw request body, using your endpoint's secret, and compare it to the signature header in constant time. Reject deliveries with a timestamp more than five minutes old.
Can I send template messages through the REST API?
Not yet. The REST API sends free-form text and media inside the 24 hour window. For templates use the dashboard, a broadcast, or the MCP broadcast tool.