guarded-whatsapp-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| wa_list_recipientsA | List the allowlisted WhatsApp recipients this engine is permitted to message.
Read-only. Numbers are masked. Use the returned |
| wa_previewA | Dry-run a send: run every security check and report exactly what WOULD
happen, WITHOUT sending. Returns a verdict and, when the send needs
confirmation, a |
| wa_audit_tailA | Return the most recent send-attempt audit records (allowed, blocked, or failed). Read-only. Message bodies are stored as a short preview + hash only. |
| wa_send_messageA | Send a WhatsApp text message to an allowlisted recipient. Passes through the full security gate (allowlist, secret scan, rate limit, confirmation). If the result has needs_confirm=true, re-call with the returned confirm_token. |
| wa_send_fileA | Send a file to an allowlisted recipient. The filename is auto-sanitized to an ASCII-safe name (so WhatsApp shows a real name, not 'Untitled', and no path traversal is possible), the type/size are validated, and the caption is secret-scanned. Sending files may require a confirm_token (see wa_preview). |
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 5 tools
Each tool has a clearly distinct purpose: listing recipients, dry-running a send, viewing audit records, sending messages, and sending files. The preview tool is explicitly read-only, so there is no confusion with the actual send tools.
All tools share the wa_ prefix and use snake_case with verb-oriented names like wa_list_recipients and wa_send_message. wa_preview is a minor deviation because it lacks a noun object, and wa_audit_tail is slightly awkward, but the overall pattern is predictable.
Five tools is well-scoped for a guarded WhatsApp messaging server: recipient discovery, preview/checking, audit history, text sending, and file sending. Each tool fills a necessary role with no redundancy.
The core secure-send lifecycle is fully covered: identify allowed recipients, preview outcomes, send text or files, and review audit records. The confirmation flow is built into the send tools, so there are no dead ends, and external allowlist management appears intentionally out of scope.