WhatsApp Business API by Wassenger

com.wassengerPublished by wassenger.comOfficial publisherv1.0.0Updated Oct 26, 2026

Send and read WhatsApp messages, templates, chats and campaigns through the official Business API.

VerifiedStreamable HTTPWeb executableCommunication & CollaborationBusiness & Commerce

Overview

AI-generated overview

Hosted MCP server for the official WhatsApp Business API that lets an assistant send and read WhatsApp messages, templates, chats and campaigns.

What you can do
  • Send text, media, location, contacts and scheduled messages; reply, react and forward
  • List, create and delete templates and send approved templates outside the 24-hour window
  • Search and filter chats, read history, export chats and get chat statistics
  • Create, search, update and import contacts and labels
  • Manage the team inbox: agents, departments, assignment, resolve or reopen, internal notes
  • Create and run campaigns, track deals in a sales pipeline, send WhatsApp Flows, upload and download files, check numbers
When to use it
For businesses that talk to customers on WhatsApp and want an assistant to draft replies, send approved templates, run campaigns, or triage a shared team inbox. Not the right pick if you only want to read your own personal chats.
Requirements
A remote Streamable HTTP endpoint; no local install needed. A Wassenger account with a connected WhatsApp Business number and a Wassenger API key sent as an Authorization bearer token, or in the address for clients without header fields. Some clients need the npm bridge package.
Before you install
The API key grants access to customer messages and to sending in your name; a key placed in the address can leak through logs and history, so use a dedicated key and revoke it if exposed. The assistant can send, delete and reassign data, so keep approval on for those tools and treat incoming message content as untrusted. Costs: a Wassenger subscription, plus Meta billing for template messages.

Installation

In SourceWeft

  1. Open WhatsApp Business API by Wassenger in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.wassenger%2Fwhatsapp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "whatsapp-business-api-by-wassenger": {
      "type": "http",
      "url": "https://api.wassenger.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

WhatsApp MCP Server for the official WhatsApp Business API

[npm] [License: MIT]

A hosted Model Context Protocol server that lets Claude, Cursor, VS Code, the OpenAI API and any other MCP client work with WhatsApp through the official WhatsApp Business API: send and read messages, reply with approved templates, run campaigns, manage contacts and run a shared team inbox.

It is run by Wassenger. There is nothing to install: point your client at https://api.wassenger.com/mcp and send your Wassenger API key in the Authorization header. Claude and ChatGPT on the web have no field for a header, so there the key goes in the address instead.

text
Remote URL:  https://api.wassenger.com/mcpTransport:   Streamable HTTPAuth:        Authorization: Bearer <WASSENGER_API_KEY>             or https://api.wassenger.com/mcp?key=<WASSENGER_API_KEY> for clients without headers

Business API or personal account?

There are two kinds of WhatsApp MCP servers, and they solve different problems.

This server (Wassenger)Personal-account servers such as lharries/whatsapp-mcp
How it connectsOfficial WhatsApp Business API (Meta Cloud API)Links your personal account as a WhatsApp Web device
SetupHosted. Add a URL and an API keyRun a Go bridge and a Python server locally, then scan a QR code
Messages outside the 24-hour windowYes, with approved templatesNo templates
Several people on one numberShared inbox, chat assignment, departments, labelsOne user
Campaigns and bulk sendsYes, paced by a delivery queueNo
Where messages are storedYour Wassenger accountA SQLite database on your computer
WhatsApp's termsUses the API Meta provides for businessesWhatsApp's Terms of Service don't allow unofficial clients, so the number can be restricted
CostWassenger subscription; Meta bills template messages directlyFree and open source

If you only want Claude to read and search your own personal chats, a personal-account server is the simpler choice. If WhatsApp is how your business talks to customers, use the Business API.

Quick start

  1. Create a Wassenger account and connect your WhatsApp Business number.
  2. Copy your API key from app.wassenger.com/apikeys.
  3. Add the server to your client with one of the configurations below.
  4. Ask: "Which of my WhatsApp numbers are connected?" to check it works.

Connect your client

Claude (web and desktop app)

Open Customize → Connectors, click +, choose Add custom connector, give it a name and paste the address with your key:

text
https://api.wassenger.com/mcp?key=YOUR_WASSENGER_API_KEY

Click Add. In a chat, open the + menu, choose Connectors and switch it on. On Team and Enterprise plans only an owner can add a custom connector, and everyone who uses it shares that key.

ChatGPT (web)

ChatGPT reaches a custom MCP server from the web app, on the plans where OpenAI enables developer mode, and a workspace admin has to turn it on. Go to Apps → Create, paste the same address, choose No authentication, click Scan tools and then Create. Choosing OAuth fails, because this server publishes no OAuth metadata.

Claude Code

bash
claude mcp add --transport http wassenger https://api.wassenger.com/mcp \  --header "Authorization: Bearer YOUR_WASSENGER_API_KEY"

Clients that only run local servers

Some clients only start local processes, like Claude Desktop configured through claude_desktop_config.json. Use the npm bridge from this repository (mcp-wassenger): it connects to the hosted server and sends your key in the Authorization header.

json
{  "mcpServers": {    "wassenger": {      "command": "npx",      "args": ["-y", "mcp-wassenger", "YOUR_WASSENGER_API_KEY"]    }  }}

Cursor

~/.cursor/mcp.json:

json
{  "mcpServers": {    "wassenger": {      "url": "https://api.wassenger.com/mcp",      "headers": { "Authorization": "Bearer YOUR_WASSENGER_API_KEY" }    }  }}

VS Code

.vscode/mcp.json. VS Code asks for the key the first time and stores it securely:

json
{  "inputs": [    { "type": "promptString", "id": "wassenger-key", "description": "Wassenger API key", "password": true }  ],  "servers": {    "wassenger": {      "type": "http",      "url": "https://api.wassenger.com/mcp",      "headers": { "Authorization": "Bearer ${input:wassenger-key}" }    }  }}

OpenAI API (Responses API and Agents SDK)

javascript
import OpenAI from 'openai'
const openai = new OpenAI()
const response = await openai.responses.create({  model: 'gpt-6.1-sol',  input: 'Summarize the unread WhatsApp chats from today',  tools: [{    type: 'mcp',    server_label: 'wassenger',    server_url: 'https://api.wassenger.com/mcp',    headers: { Authorization: `Bearer ${process.env.WASSENGER_API_KEY}` },    require_approval: 'always'  }]})

Any other client

Use the remote URL with Streamable HTTP and the Authorization header. If your client has no field for headers, use the ?key= address; if it only runs local servers, use the npm bridge: npx -y mcp-wassenger YOUR_WASSENGER_API_KEY.

What you can ask

  • "Show me the unread chats from today and draft a reply to each one."
  • "Assign every chat that mentions 'invoice' to the billing department."
  • "Send the order_shipped template to +1 555 555 0100 with tracking number 1Z999."
  • "Which customers asked about pricing this week and got no answer?"
  • "Create a campaign with the spring_offer template for contacts labelled 'VIP'."
  • "Move the deal for Acme to 'Proposal sent' and add a note with today's call summary."
  • "Check whether these 20 numbers have WhatsApp before I import them."
  • "How many chats did we open, resolve and leave pending this week?"

Tools

More than 50 tools, grouped by what they work on:

AreaWhat the tools do
MessagesSend text, media, location, contacts and scheduled messages; reply, react and forward
TemplatesList, create and delete templates; send approved templates outside the 24-hour window
ChatsSearch and filter chats by status, label, agent, date or unread; read message history; export chats; chat statistics
Contacts and labelsCreate, search, update and import contacts; create and apply labels
Team inboxManage agents and departments; hand a chat to a teammate or department, resolve or reopen it, leave internal notes, mark it read or unread
CampaignsCreate, start and stop campaigns and manage their recipients; monitor the delivery queue
Sales pipelineCreate pipelines and stages, track deals, add notes and tasks to deals
WhatsApp FlowsList flows, send a flow and read its responses
FilesUpload files from a URL, search sent and received files, download media
Numbers and devicesList connected numbers and their status; check whether a phone number is on WhatsApp

Groups, Channels and Status updates only work on numbers connected by QR code, because the official Business API doesn't offer them.

Security

  • Use the Authorization header whenever your client has a field for it. A key in the address (?key=) ends up in access logs, proxy logs, error reports and browser history, so treat it as exposed: for Claude and ChatGPT on the web, create a key used only there and revoke it if the address leaks.
  • An agent with this server can read your customers' messages and send messages in your name. Treat untrusted message content as untrusted input: keep approval on for tools that send or delete, as in the OpenAI example above.
  • Revoke a key at any time from app.wassenger.com/apikeys.

FAQ

Is there a WhatsApp MCP server I can use with Claude? Yes. This one works in Claude on the web and in the desktop app as a custom connector, in Claude Code and in any MCP client, on top of the official WhatsApp Business API. Setup takes a URL and an API key.

How do I connect WhatsApp to Claude or ChatGPT as an AI agent? Connect your number to Wassenger, then add this server: as a custom connector in Claude, as an app in ChatGPT's developer mode, or as an MCP tool in an agent built on the OpenAI API, with the configurations above. The agent can then read chats, reply, send templates and hand conversations to people on your team.

Do I need to keep a phone or computer switched on? No. Numbers on the Business API run in Meta's cloud and the MCP server is hosted.

Can it message customers who haven't written in the last 24 hours? Yes, with a template approved by Meta. Free-form messages are only allowed within 24 hours of the customer's last message; that is a WhatsApp rule for every provider.

Is it free? The hosted server comes with your Wassenger account, and the npm bridge in this repository is open source under the MIT license. You need a Wassenger account with a connected number: see pricing. Meta bills template messages directly.

Links

License

MIT

Source: README.md at commit d0a24a3

Tools

0
This server asks for a credential such as an API key, so SourceWeft could not read its tools without one and has not indexed them.

Version history

1
  1. v1.0.0LatestOct 25, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts