Skip to main content
Glama
billyfranklim1

mcp-evolution

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
EVOLUTION_API_KEYYesGlobal API key from Evolution API config
EVOLUTION_API_URLYesBase URL of your Evolution API (e.g. http://localhost:8080)
EVOLUTION_INSTANCEYesInstance name created in Evolution API

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_groupsA

List WhatsApp groups for the pinned instance. Supports search and limit to prevent large payloads.

find_chatsB

Find chats for the pinned instance. Supports search, limit, and offset to prevent large payloads.

find_contactsA

Find contacts for the pinned instance. Supports search (substring on pushName/name/remoteJid), limit, and offset to prevent large payloads. Returns normalized { remoteJid, pushName, profilePicUrl, isBusiness } — extra fields dropped.

find_messagesA

Find messages by remoteJid (phone number or group JID) for the pinned instance. Returns normalized { id, fromMe, remoteJid, timestamp, type, text, mediaKey?, quotedMessageId? } — raw payload dropped to prevent overflow.

get_chat_historyA

Get chat history for a specific contact or group JID. Returns normalized { id, fromMe, remoteJid, timestamp, type, text, mediaKey?, quotedMessageId? } — raw payload dropped to prevent overflow.

send_textA

Send a text message via the pinned WhatsApp instance.

send_mediaB

Send a media message (image, video, audio, document) via the pinned instance.

get_group_infoA

Get detailed info for a specific WhatsApp group. By default returns { id, subject, subjectOwner, subjectTime, size, desc, descId, creation, owner, admins } — participant list is dropped to prevent payload overflow. Set includeParticipants=true to get the full list (use sparingly for large groups).

get_group_resolved_participantsA

Resolve a group's LID participants to phone JID + pushName by cross-referencing the Evolution Postgres Message history (key->>'participantAlt' field). Returns: { groupJid, total, resolved, unresolved, participants: [{ lid, phone, name, isAdmin, lastSeen }] }. Coverage depends on how many participants sent messages in the lookback window — silent members stay unresolved. Phone field is ready to use with send_text. Requires EVOLUTION_DB_URL env var pointing to Evolution's Postgres.

send_audioB

Send a WhatsApp audio (PTT voice note) via the pinned instance.

send_stickerB

Send a sticker message via the pinned WhatsApp instance.

send_locationA

Send a location pin message via the pinned WhatsApp instance.

send_contactA

Share one or more contacts (vCards) via the pinned WhatsApp instance.

send_reactionB

React to a WhatsApp message with an emoji via the pinned instance. Send empty string to remove reaction.

send_pollC

Send a WhatsApp poll message via the pinned instance.

send_listB

Send a WhatsApp list message (interactive menu) via the pinned instance.

send_buttonB

Send a WhatsApp interactive button message via the pinned instance (max 3 buttons).

send_statusB

Post a WhatsApp Status update (story) via the pinned instance.

mark_as_readA

Mark one or more messages as read via the pinned WhatsApp instance.

archive_chatB

Archive or unarchive a WhatsApp chat via the pinned instance.

delete_messageA

Delete a message for everyone via the pinned WhatsApp instance.

fetch_profile_pictureA

Fetch the profile picture URL of a WhatsApp contact via the pinned instance.

download_mediaA

Download media from a WhatsApp message and write it to disk. Returns { path, mimetype, size, messageId } — NOT raw base64 (prevents context overflow). File is written to /tmp/mcp-evolution-media/-.. Caller is responsible for cleanup (rm the file when done).

send_presenceC

Send a presence update (typing, recording, etc.) to a chat via the pinned instance.

fetch_business_profileA

Fetch the WhatsApp Business profile information of a contact via the pinned instance.

update_profile_nameA

Update the display name of the pinned WhatsApp instance's profile.

update_profile_statusB

Update the 'about' status text of the pinned WhatsApp instance's profile.

update_profile_pictureB

Update the profile picture of the pinned WhatsApp instance.

remove_profile_pictureB

Remove the profile picture of the pinned WhatsApp instance.

fetch_privacyA

Fetch the current privacy settings of the pinned WhatsApp instance.

update_privacyB

Update privacy settings for the pinned WhatsApp instance. Values: all, contacts, contact_blacklist, none.

create_groupB

Create a new WhatsApp group via the pinned instance.

update_group_subjectA

Update the name/subject of a WhatsApp group via the pinned instance.

update_group_descriptionB

Update the description of a WhatsApp group via the pinned instance.

update_group_pictureB

Update the profile picture of a WhatsApp group via the pinned instance.

fetch_invite_codeB

Fetch the invite code/link for a WhatsApp group via the pinned instance.

revoke_invite_codeA

Revoke and regenerate the invite code for a WhatsApp group via the pinned instance.

accept_inviteB

Accept a WhatsApp group invite by invite code via the pinned instance.

send_group_inviteB

Send a WhatsApp group invite link to specific contacts via the pinned instance.

update_participantsB

Add, remove, promote, or demote participants in a WhatsApp group via the pinned instance.

update_group_settingB

Update group settings (announcement mode, locked) via the pinned instance.

leave_groupB

Leave a WhatsApp group via the pinned instance.

find_group_by_inviteA

Get group information from an invite code without joining via the pinned instance. Returns { id, subject, subjectOwner, subjectTime, size, desc, descId, creation, owner, admins } by default. Set includeParticipants=true to also get the full participant list.

connection_stateA

Get the current connection state of the pinned WhatsApp instance (open, close, connecting).

restart_instanceA

Restart the pinned WhatsApp instance (reconnects without logging out).

logout_instanceA

Logout the pinned WhatsApp instance (disconnects and clears session — requires QR scan to reconnect).

get_settingsA

Get the current settings of the pinned WhatsApp instance.

set_settingsB

Update settings for the pinned WhatsApp instance.

find_webhookA

Get the current webhook configuration for the pinned WhatsApp instance.

set_webhookC

Configure the webhook for the pinned WhatsApp instance.

find_labelsA

List all WhatsApp labels for the pinned instance (requires WhatsApp Business). Returns normalized { id, name, color } array — nested chat blobs dropped to prevent overflow.

handle_labelA

Add or remove a WhatsApp label from a chat via the pinned instance (requires WhatsApp Business).

update_block_statusB

Block or unblock a WhatsApp contact via the pinned instance.

check_numberA

Check whether phone numbers have WhatsApp accounts. Returns exists, jid, and number for each.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/billyfranklim1/mcp-evolution'

If you have feedback or need assistance with the MCP directory API, please join our Discord server