whatsapp-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Optional. HTTP server port. Default: 3000. | 3000 |
| TRANSPORT | No | Optional. Transport mode: 'stdio' or 'http'. Default: 'stdio'. | stdio |
| WHATSAPP_API_VERSION | No | Optional. WhatsApp API version. Default: v23.0. | v23.0 |
| WHATSAPP_ACCESS_TOKEN | Yes | Your WhatsApp Cloud API access token. | |
| WHATSAPP_PHONE_NUMBER_ID | Yes | Your WhatsApp Business phone number ID. | |
| WHATSAPP_BUSINESS_ACCOUNT_ID | No | Optional. Your WhatsApp Business Account ID (required for template operations). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whatsapp_send_textA | Send a text message to a WhatsApp user. Args:
Returns: Message ID and delivery status. Examples:
|
| whatsapp_send_templateA | Send an approved template message. Templates are the only way to initiate conversations outside the 24-hour window. Args:
Returns: Message ID and delivery status. Examples:
|
| whatsapp_send_imageA | Send an image to a WhatsApp user via a public URL. Args:
Returns: Message ID and delivery status. |
| whatsapp_send_documentA | Send a document (PDF, DOCX, etc.) to a WhatsApp user via a public URL. Args:
Returns: Message ID and delivery status. |
| whatsapp_send_locationA | Send a location pin to a WhatsApp user. Args:
Returns: Message ID and delivery status. |
| whatsapp_send_contactA | Send a contact card to a WhatsApp user. Args:
Returns: Message ID and delivery status. |
| whatsapp_send_reactionA | Send a reaction emoji to an existing message. Args:
Returns: Confirmation of reaction sent. |
| whatsapp_send_buttonsA | Send a message with up to 3 reply buttons. Args:
Returns: Message ID and delivery status. |
| whatsapp_send_listA | Send a message with a menu list of options. Args:
Returns: Message ID and delivery status. |
| whatsapp_mark_as_readA | Mark a received WhatsApp message as read (shows blue checkmarks). Args:
Returns: Confirmation. |
| whatsapp_get_business_profileA | Retrieve the WhatsApp Business Profile for the configured phone number. Returns: Business profile fields: about, address, description, email, websites, vertical, and profile picture URL. |
| whatsapp_update_business_profileA | Update the WhatsApp Business Profile fields. Args:
Returns: Confirmation of update. |
| whatsapp_list_templatesA | List message templates for the WhatsApp Business Account. Requires WHATSAPP_BUSINESS_ACCOUNT_ID env var. Args:
Returns: List of templates with name, status, category, language, and components. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Each tool targets a distinct action: one per message media type (text, image, document, location, contact, reaction, buttons, list), plus mark-as-read and profile/template management. No two tools overlap in purpose, even the interactive buttons and list messages are clearly differentiated by their payload structures.
All tools follow a uniform 'whatsapp_verb_noun' pattern: send_text, send_image, get_business_profile, list_templates, etc. The snake_case convention is consistently applied, and verbs are descriptive and non-repetitive across the set.
13 tools is well within the ideal range for a domain-focused server. The count reflects a comprehensive but not bloated surface: nine send methods, one acknowledgment, two profile operations, and one template listing. Each tool earns its place.
The core send capabilities are thorough (text, template, media, interactive), and profile management is covered with both get and update. Minor gaps exist: no video/audio send tools and no create/delete template operations, but these are peripheral to the primary send and profile workflows.