WaWarden is a self-hosted WhatsApp gateway. It links to one personal WhatsApp account as a linked device and keeps that account's messages in a local archive. Your own AI agents and applications reach the archive over REST and MCP. Each client holds its own token. A token reads only the chats on its allowlist and writes only to its write chats.
WaWarden is not an official WhatsApp API. It is not affiliated with WhatsApp or Meta. WhatsApp can restrict, log out or ban an account that links an unofficial client: read the ban-risk notes first.
Who it is for¶
- Owners of a personal account who want an agent, such as Claude Code, to read and answer some of their chats, and no others.
- Operators of one Linux host, run under systemd or as a container, behind a VPN, a private network or a reverse proxy that terminates TLS.
- Builders of agents and scripts that need a stable API with scoped tokens instead of the account itself.
It is not a hosted or multi-account service, a network security layer or a bulk messaging tool.
Documentation¶
-
From prerequisites to a paired account, a first backup and a first client.
-
Every environment variable, the startup refusals, the data directory, storage and backups.
-
Every subcommand, its flags and the exit codes.
-
The client API, the admin routes, MCP and registering with Claude Code.
-
The runbook for routine work and incidents, and the ban-risk notes.
-
The threat model and the hardening guide.
-
How an agent treats what it reads, pages, retries, sends and stops.
-
The glossary, the internals and observability.
-
Contributing, the changelog, releasing and the security policy.