MCP gateway for WhatsApp via Green API: messaging, contacts, groups and instance management.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Green API instance ID
Green API instance token
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Add a participant to a WhatsApp group
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Add a participant to a WhatsApp group
| Argument | Type | Description |
|---|---|---|
| group_id* | string | Group ID |
| instance_id* | number | WhatsApp instance ID |
| participant_chat_id* | string | Participant chat ID ([email protected]) |
{
"type": "object",
"required": [
"instance_id",
"group_id",
"participant_chat_id"
],
"properties": {
"group_id": {
"type": "string",
"description": "Group ID"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"participant_chat_id": {
"type": "string",
"description": "Participant chat ID ([email protected])"
}
}
}Check whether a phone number has a WhatsApp account
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
| phone_number* | number | Phone number to check |
{
"type": "object",
"required": [
"instance_id",
"phone_number"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"phone_number": {
"type": "number",
"description": "Phone number to check"
}
}
}Connect a WhatsApp instance. Call this before using other tools. Validates credentials via getStateInstance.
| Argument | Type | Description |
|---|---|---|
| api_url | string | API URL (defaults to https://api.green-api.com) |
| api_token* | string | Instance API token |
| instance_id* | number | WhatsApp instance ID (from console.green-api.com) |
{
"type": "object",
"required": [
"instance_id",
"api_token"
],
"properties": {
"api_url": {
"type": "string",
"description": "API URL (defaults to https://api.green-api.com)"
},
"api_token": {
"type": "string",
"description": "Instance API token"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID (from console.green-api.com)"
}
}
}Create a WhatsApp group
| Argument | Type | Description |
|---|---|---|
| chat_ids* | array | Participant list (chat IDs, e.g. [email protected]) |
| group_name* | string | Group name |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"group_name",
"chat_ids"
],
"properties": {
"chat_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Participant list (chat IDs, e.g. [email protected])"
},
"group_name": {
"type": "string",
"description": "Group name"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Create a new WhatsApp instance via the GREEN-API Partner API
| Argument | Type | Description |
|---|---|---|
| partner_token* | string | Partner Token from your GREEN-API dashboard |
{
"type": "object",
"required": [
"partner_token"
],
"properties": {
"partner_token": {
"type": "string",
"description": "Partner Token from your GREEN-API dashboard"
}
}
}Delete a WhatsApp instance via the GREEN-API Partner API
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | Instance ID to delete |
| partner_token* | string | Partner Token from your GREEN-API dashboard |
{
"type": "object",
"required": [
"partner_token",
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "Instance ID to delete"
},
"partner_token": {
"type": "string",
"description": "Partner Token from your GREEN-API dashboard"
}
}
}Delete a message
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID |
| id_message* | string | ID of the message to delete |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"id_message"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"id_message": {
"type": "string",
"description": "ID of the message to delete"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Delete a notification from the queue (acknowledge receipt)
| Argument | Type | Description |
|---|---|---|
| receipt_id* | number | Notification ID (receiptId from receiveNotification) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"receipt_id"
],
"properties": {
"receipt_id": {
"type": "number",
"description": "Notification ID (receiptId from receiveNotification)"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Disconnect a WhatsApp instance and remove credentials from the session
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Edit a previously sent message
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID |
| message* | string | New message text |
| id_message* | string | ID of the message to edit |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"id_message",
"message"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"message": {
"type": "string",
"description": "New message text"
},
"id_message": {
"type": "string",
"description": "ID of the message to edit"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Forward messages to another chat
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Destination chat ID |
| messages* | array | Message IDs to forward |
| instance_id* | number | WhatsApp instance ID |
| chat_id_from* | string | Source chat ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"chat_id_from",
"messages"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Destination chat ID"
},
"messages": {
"type": "array",
"items": {
"type": "string"
},
"description": "Message IDs to forward"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"chat_id_from": {
"type": "string",
"description": "Source chat ID"
}
}
}Get an authorization code for sign-in by phone number
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
| phone_number* | string | Phone number (e.g. 79001234567) |
{
"type": "object",
"required": [
"instance_id",
"phone_number"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"phone_number": {
"type": "string",
"description": "Phone number (e.g. 79001234567)"
}
}
}Get chat message history. Use a small 'count' (default 50, max 100) to keep responses focused.
| Argument | Type | Description |
|---|---|---|
| count | number | Number of messages (default 50, max 100) |
| chat_id* | string | Chat ID ([email protected] or [email protected]) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id"
],
"properties": {
"count": {
"type": "number",
"description": "Number of messages (default 50, max 100)"
},
"chat_id": {
"type": "string",
"description": "Chat ID ([email protected] or [email protected])"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get the avatar of a contact or group
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Contact or group ID |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Contact or group ID"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get information about a contact or group
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Contact or group ID |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Contact or group ID"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get the contact list
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get group data (members, name, invite link)
| Argument | Type | Description |
|---|---|---|
| group_id* | string | Group ID (e.g. [email protected]) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"group_id"
],
"properties": {
"group_id": {
"type": "string",
"description": "Group ID (e.g. [email protected])"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}List all partner instances via the GREEN-API Partner API
| Argument | Type | Description |
|---|---|---|
| partner_token* | string | Partner Token from your GREEN-API dashboard |
{
"type": "object",
"required": [
"partner_token"
],
"properties": {
"partner_token": {
"type": "string",
"description": "Partner Token from your GREEN-API dashboard"
}
}
}Get a message by ID
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID |
| id_message* | string | Message ID |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"id_message"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"id_message": {
"type": "string",
"description": "Message ID"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get the QR code for instance authorization. The result contains the QR as an image and a qrLink URL to an official GREEN-API page with a full-size auto-refreshing QR code. Always include the qrLink in your response as a clickable markdown link so the user can open it in the browser and scan comfortably.
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get instance settings
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get instance state (authorized, notAuthorized, blocked, sleepMode)
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get WhatsApp account settings (name, description, etc.)
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get recent incoming messages from the last N minutes (default 60, max 1440 = 24 hours).
| Argument | Type | Description |
|---|---|---|
| minutes | number | Time window in minutes (default 60, max 1440) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"minutes": {
"type": "number",
"description": "Time window in minutes (default 60, max 1440)"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get recent outgoing messages from the last N minutes (default 60, max 1440 = 24 hours).
| Argument | Type | Description |
|---|---|---|
| minutes | number | Time window in minutes (default 60, max 1440) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"minutes": {
"type": "number",
"description": "Time window in minutes (default 60, max 1440)"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Leave a WhatsApp group
| Argument | Type | Description |
|---|---|---|
| group_id* | string | Group ID ([email protected]) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"group_id"
],
"properties": {
"group_id": {
"type": "string",
"description": "Group ID ([email protected])"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Log out the WhatsApp instance
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Mark chat messages as read
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID |
| id_message | string | ID of a specific message (optional) |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"id_message": {
"type": "string",
"description": "ID of a specific message (optional)"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Reboot the WhatsApp instance
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Get one notification from the queue (manual polling)
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Revoke admin rights from a group member
| Argument | Type | Description |
|---|---|---|
| group_id* | string | Group ID ([email protected]) |
| instance_id* | number | WhatsApp instance ID |
| participant_chat_id* | string | Participant chat ID ([email protected]) |
{
"type": "object",
"required": [
"instance_id",
"group_id",
"participant_chat_id"
],
"properties": {
"group_id": {
"type": "string",
"description": "Group ID ([email protected])"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"participant_chat_id": {
"type": "string",
"description": "Participant chat ID ([email protected])"
}
}
}Remove a participant from a WhatsApp group
| Argument | Type | Description |
|---|---|---|
| group_id* | string | Group ID |
| instance_id* | number | WhatsApp instance ID |
| participant_chat_id* | string | Participant chat ID ([email protected]) |
{
"type": "object",
"required": [
"instance_id",
"group_id",
"participant_chat_id"
],
"properties": {
"group_id": {
"type": "string",
"description": "Group ID"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"participant_chat_id": {
"type": "string",
"description": "Participant chat ID ([email protected])"
}
}
}Send a contact card via WhatsApp
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID |
| company | string | Contact company |
| last_name | string | Contact last name |
| first_name | string | Contact first name |
| instance_id* | number | WhatsApp instance ID |
| phone_number* | number | Contact phone number |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"phone_number"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"company": {
"type": "string",
"description": "Contact company"
},
"last_name": {
"type": "string",
"description": "Contact last name"
},
"first_name": {
"type": "string",
"description": "Contact first name"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"phone_number": {
"type": "number",
"description": "Contact phone number"
}
}
}Send a file by URL
| Argument | Type | Description |
|---|---|---|
| url* | string | File URL |
| caption | string | File caption |
| chat_id* | string | Chat ID |
| file_name | string | File name |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "File URL"
},
"caption": {
"type": "string",
"description": "File caption"
},
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"file_name": {
"type": "string",
"description": "File name"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Send a file directly to a chat via multipart upload (no separate URL step)
| Argument | Type | Description |
|---|---|---|
| caption | string | File caption (optional) |
| chat_id* | string | Chat ID ([email protected] or [email protected]) |
| filename* | string | File name with extension (e.g. photo.jpg) |
| file_base64* | string | File contents encoded as base64 |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"file_base64",
"filename"
],
"properties": {
"caption": {
"type": "string",
"description": "File caption (optional)"
},
"chat_id": {
"type": "string",
"description": "Chat ID ([email protected] or [email protected])"
},
"filename": {
"type": "string",
"description": "File name with extension (e.g. photo.jpg)"
},
"file_base64": {
"type": "string",
"description": "File contents encoded as base64"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Send a location
| Argument | Type | Description |
|---|---|---|
| name | string | Place name |
| address | string | Address |
| chat_id* | string | Chat ID |
| latitude* | number | Latitude |
| longitude* | number | Longitude |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"latitude",
"longitude"
],
"properties": {
"name": {
"type": "string",
"description": "Place name"
},
"address": {
"type": "string",
"description": "Address"
},
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"latitude": {
"type": "number",
"description": "Latitude"
},
"longitude": {
"type": "number",
"description": "Longitude"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}Send a text message via WhatsApp
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID ([email protected] or [email protected]) |
| message* | string | Message text |
| instance_id* | number | WhatsApp instance ID |
| link_preview | boolean | Show link previews |
| quoted_message_id | string | ID of the message to quote (optional) |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"message"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID ([email protected] or [email protected])"
},
"message": {
"type": "string",
"description": "Message text"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"link_preview": {
"type": "boolean",
"description": "Show link previews"
},
"quoted_message_id": {
"type": "string",
"description": "ID of the message to quote (optional)"
}
}
}Send a poll via WhatsApp
| Argument | Type | Description |
|---|---|---|
| chat_id* | string | Chat ID |
| message* | string | Poll question |
| options* | array | Answer options (strings) |
| instance_id* | number | WhatsApp instance ID |
| multiple_answers | boolean | Allow multiple answers |
{
"type": "object",
"required": [
"instance_id",
"chat_id",
"message",
"options"
],
"properties": {
"chat_id": {
"type": "string",
"description": "Chat ID"
},
"message": {
"type": "string",
"description": "Poll question"
},
"options": {
"type": "array",
"items": {
"type": "string"
},
"description": "Answer options (strings)"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"multiple_answers": {
"type": "boolean",
"description": "Allow multiple answers"
}
}
}Promote a group member to admin
| Argument | Type | Description |
|---|---|---|
| group_id* | string | Group ID ([email protected]) |
| instance_id* | number | WhatsApp instance ID |
| participant_chat_id* | string | Participant chat ID ([email protected]) |
{
"type": "object",
"required": [
"instance_id",
"group_id",
"participant_chat_id"
],
"properties": {
"group_id": {
"type": "string",
"description": "Group ID ([email protected])"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"participant_chat_id": {
"type": "string",
"description": "Participant chat ID ([email protected])"
}
}
}Update instance settings (webhooks, proxy, etc.)
| Argument | Type | Description |
|---|---|---|
| instance_id* | number | WhatsApp instance ID |
| webhook_url | string | URL for incoming webhooks |
| delay_message | number | Message send delay (ms) |
| state_webhook | boolean | Enable state webhook |
| device_webhook | boolean | Enable device webhook |
| incoming_webhook | boolean | Enable incoming message webhook |
| outgoing_webhook | boolean | Enable outgoing message webhook |
| webhook_url_token | string | Token for the webhook URL |
| status_instance_webhook | boolean | Enable instance status webhook |
| mark_incoming_messages_readed |
Upload a file to GREEN-API storage and return its URL. Use the returned URL with whatsapp_send_file.
| Argument | Type | Description |
|---|---|---|
| filename* | string | File name with extension (e.g. photo.jpg) |
| file_base64* | string | File contents encoded as base64 |
| instance_id* | number | WhatsApp instance ID |
{
"type": "object",
"required": [
"instance_id",
"file_base64",
"filename"
],
"properties": {
"filename": {
"type": "string",
"description": "File name with extension (e.g. photo.jpg)"
},
"file_base64": {
"type": "string",
"description": "File contents encoded as base64"
},
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
}
}
}| boolean |
| Mark incoming messages as read |
{
"type": "object",
"required": [
"instance_id"
],
"properties": {
"instance_id": {
"type": "number",
"description": "WhatsApp instance ID"
},
"webhook_url": {
"type": "string",
"description": "URL for incoming webhooks"
},
"delay_message": {
"type": "number",
"description": "Message send delay (ms)"
},
"state_webhook": {
"type": "boolean",
"description": "Enable state webhook"
},
"device_webhook": {
"type": "boolean",
"description": "Enable device webhook"
},
"incoming_webhook": {
"type": "boolean",
"description": "Enable incoming message webhook"
},
"outgoing_webhook": {
"type": "boolean",
"description": "Enable outgoing message webhook"
},
"webhook_url_token": {
"type": "string",
"description": "Token for the webhook URL"
},
"status_instance_webhook": {
"type": "boolean",
"description": "Enable instance status webhook"
},
"mark_incoming_messages_readed": {
"type": "boolean",
"description": "Mark incoming messages as read"
}
}
}