Skip to main content
Glama
Akram-Atassi

claude-whatsapp-mcp

by Akram-Atassi

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
WHATSAPP_MCP_DATA_DIRNoDirectory where the server stores its data (auth session keys, store.json, media). Defaults to 'data/' next to the server if not provided.

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

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
whatsapp_statusB

Connection state of the linked WhatsApp account, the number it is linked to, and how many chats/contacts/messages are stored locally.

get_login_qrA

Returns the QR code to link this device to a WhatsApp account. Only needed the first time, or after being logged out.

list_chatsB

Recent WhatsApp chats with unread counts and last message preview.

search_contactsB

Find people or groups by name or phone number.

get_messagesA

Read messages from one chat, newest last. Page further back with before (a unix timestamp or ISO date).

search_messagesA

Full-text search across stored messages in every chat, or in one chat.

send_messageA

Send a text message. Confirm the recipient with the user before calling. Optionally reply to a specific message by id.

send_fileC

Send an image, video, audio file, voice note, or document from a local path.

download_mediaB

Download the media of a stored message to disk. Images are also returned inline.

get_group_infoB

Subject, description and participant list of a WhatsApp group.

mark_as_readA

Send read receipts for a chat's recent incoming messages and clear its unread badge.

refresh_groupsA

Re-fetch every group the account belongs to, filling in missing group names.

broadcast_messageA

Send the same message to many chats, one individual message each (what a WhatsApp Broadcast List does under the hood — recipients do not see each other). Runs a DRY RUN by default: call it once to see exactly who would receive it, show that list to the user, and only call again with confirm=true after they approve. Capped at 50 recipients, paced a few seconds apart. Bulk messaging is how WhatsApp accounts get banned — never use this for people who did not ask to hear from the user.

broadcast_statusA

Progress and per-recipient results of a broadcast started with broadcast_message. Can also cancel one that is still running.

create_groupA

Create a WhatsApp group with an initial set of people. Confirm the name and the member list with the user first. Optionally create it directly inside a community.

manage_group_participantsA

Add people to a group, remove them, or change who is an admin. You must be an admin of the group. A person whose privacy settings block being added returns status 403 — send them the invite link instead.

update_groupB

Rename a group, change its description, or change who may post, edit info, add members, or join. Requires admin.

group_invite_linkA

Get the join link for a group, or revoke the old one and issue a fresh link. Requires admin.

leave_groupA

Leave a group or community. This cannot be undone without a fresh invite — always confirm with the user first.

create_communityA

Create a WhatsApp community — an umbrella that holds several groups, with an announcement channel every member sees. Members are not added directly to a community; they join by being in one of its groups. Use link_group_to_community or create_group(community=...) next.

list_communitiesB

Every community this account belongs to, with the groups linked inside each one.

link_group_to_communityA

Move existing groups into a community as subgroups, or remove them from it. You must be an admin of both the community and each group.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources