# Green API WhatsApp (remote · mcp.green-api.com)

MCP gateway for WhatsApp via Green API: messaging, contacts, groups and instance management.

- Trust score: 36/100 (low)
- Change this week: +13
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

> **Recent critical change**: Authorization (2026-08-02). See the changelog below before you install this server.

## Components

- remote · `mcp.green-api.com`: 36/100 (this document), [markdown](https://verifymcp.io/servers/com-green-api-whatsapp/mcp.md), [page](https://verifymcp.io/servers/com-green-api-whatsapp/mcp)
- remote · `mcp.green-api.com`: 36/100, [markdown](https://verifymcp.io/servers/com-green-api-whatsapp/mcp-2.md), [page](https://verifymcp.io/servers/com-green-api-whatsapp/mcp-2)

## Channel facts

- Endpoint: `https://mcp.green-api.com/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `0.1.2`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 91/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add --transport http com-green-api-whatsapp https://mcp.green-api.com/mcp
```

### Codex

```toml
[mcp_servers.com-green-api-whatsapp]
url = "https://mcp.green-api.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-green-api-whatsapp": {
      "type": "remote",
      "url": "https://mcp.green-api.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-green-api-whatsapp --url https://mcp.green-api.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-green-api-whatsapp:
    url: "https://mcp.green-api.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-green-api-whatsapp": {
      "type": "http",
      "url": "https://mcp.green-api.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 36, 0)

- [critical regression] Authorization: pass → fail
- [security regression] Endpoint reachability: reachable → behind authorisation
- [security improvement] Transport: unverified → pass
- [functional improvement] Schema quality: unverified → 100
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] MCP protocol: unverified → pass
- [functional] First check of Schema quality: fail
- [functional] First check of Capabilities: pass
- [functional] First check of Schema quality: pass
- [functional] First check of Schema quality: good
- [functional] First check of Tool coverage: 100

### 2026-07-31 (score 36, +13)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 23, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-27 (score 23, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 23)

First indexed and scored.

## MCP tools (41)

### `whatsapp_add_group_participant` (~62 tokens)

Add a participant to a WhatsApp group

Input parameters:

- `group_id` (string, required): Group ID
- `instance_id` (number, required): WhatsApp instance ID
- `participant_chat_id` (string, required): Participant chat ID (79001234567@c.us)

### `whatsapp_check_whatsapp` (~45 tokens)

Check whether a phone number has a WhatsApp account

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID
- `phone_number` (number, required): Phone number to check

### `whatsapp_connect` (~77 tokens)

Connect a WhatsApp instance. Call this before using other tools. Validates credentials via getStateInstance.

Input parameters:

- `api_token` (string, required): Instance API token
- `api_url` (string): API URL (defaults to https://api.green-api.com)
- `instance_id` (number, required): WhatsApp instance ID (from console.green-api.com)

### `whatsapp_create_group` (~62 tokens)

Create a WhatsApp group

Input parameters:

- `chat_ids` (array, required): Participant list (chat IDs, e.g. 79001234567@c.us)
- `group_name` (string, required): Group name
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_create_instance` (~39 tokens)

Create a new WhatsApp instance via the GREEN-API Partner API

Input parameters:

- `partner_token` (string, required): Partner Token from your GREEN-API dashboard

### `whatsapp_delete_instance` (~50 tokens)

Delete a WhatsApp instance via the GREEN-API Partner API

Input parameters:

- `instance_id` (number, required): Instance ID to delete
- `partner_token` (string, required): Partner Token from your GREEN-API dashboard

### `whatsapp_delete_message` (~49 tokens)

Delete a message

Input parameters:

- `chat_id` (string, required): Chat ID
- `id_message` (string, required): ID of the message to delete
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_delete_notification` (~49 tokens)

Delete a notification from the queue (acknowledge receipt)

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID
- `receipt_id` (number, required): Notification ID (receiptId from receiveNotification)

### `whatsapp_disconnect` (~32 tokens)

Disconnect a WhatsApp instance and remove credentials from the session

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_edit_message` (~61 tokens)

Edit a previously sent message

Input parameters:

- `chat_id` (string, required): Chat ID
- `id_message` (string, required): ID of the message to edit
- `instance_id` (number, required): WhatsApp instance ID
- `message` (string, required): New message text

### `whatsapp_forward_messages` (~61 tokens)

Forward messages to another chat

Input parameters:

- `chat_id` (string, required): Destination chat ID
- `chat_id_from` (string, required): Source chat ID
- `instance_id` (number, required): WhatsApp instance ID
- `messages` (array, required): Message IDs to forward

### `whatsapp_get_authorization_code` (~53 tokens)

Get an authorization code for sign-in by phone number

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID
- `phone_number` (string, required): Phone number (e.g. 79001234567)

### `whatsapp_get_chat_history` (~90 tokens)

Get chat message history. Use a small 'count' (default 50, max 100) to keep responses focused.

Input parameters:

- `chat_id` (string, required): Chat ID (79001234567@c.us or 120363XXX@g.us)
- `count` (number): Number of messages (default 50, max 100)
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_contact_avatar` (~43 tokens)

Get the avatar of a contact or group

Input parameters:

- `chat_id` (string, required): Contact or group ID
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_contact_info` (~42 tokens)

Get information about a contact or group

Input parameters:

- `chat_id` (string, required): Contact or group ID
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_contacts` (~26 tokens)

Get the contact list

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_group_data` (~53 tokens)

Get group data (members, name, invite link)

Input parameters:

- `group_id` (string, required): Group ID (e.g. 120363XXX@g.us)
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_instances` (~37 tokens)

List all partner instances via the GREEN-API Partner API

Input parameters:

- `partner_token` (string, required): Partner Token from your GREEN-API dashboard

### `whatsapp_get_message` (~47 tokens)

Get a message by ID

Input parameters:

- `chat_id` (string, required): Chat ID
- `id_message` (string, required): Message ID
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_qr` (~86 tokens)

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.

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_settings` (~25 tokens)

Get instance settings

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_state` (~35 tokens)

Get instance state (authorized, notAuthorized, blocked, sleepMode)

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_get_wa_settings` (~35 tokens)

Get WhatsApp account settings (name, description, etc.)

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_last_incoming_messages` (~66 tokens)

Get recent incoming messages from the last N minutes (default 60, max 1440 = 24 hours).

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID
- `minutes` (number): Time window in minutes (default 60, max 1440)

### `whatsapp_last_outgoing_messages` (~66 tokens)

Get recent outgoing messages from the last N minutes (default 60, max 1440 = 24 hours).

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID
- `minutes` (number): Time window in minutes (default 60, max 1440)

### `whatsapp_leave_group` (~43 tokens)

Leave a WhatsApp group

Input parameters:

- `group_id` (string, required): Group ID (120363XXX@g.us)
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_logout` (~27 tokens)

Log out the WhatsApp instance

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_read_chat` (~52 tokens)

Mark chat messages as read

Input parameters:

- `chat_id` (string, required): Chat ID
- `id_message` (string): ID of a specific message (optional)
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_reboot` (~28 tokens)

Reboot the WhatsApp instance

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_receive_notification` (~31 tokens)

Get one notification from the queue (manual polling)

Input parameters:

- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_remove_group_admin` (~67 tokens)

Revoke admin rights from a group member

Input parameters:

- `group_id` (string, required): Group ID (120363XXX@g.us)
- `instance_id` (number, required): WhatsApp instance ID
- `participant_chat_id` (string, required): Participant chat ID (79001234567@c.us)

### `whatsapp_remove_group_participant` (~62 tokens)

Remove a participant from a WhatsApp group

Input parameters:

- `group_id` (string, required): Group ID
- `instance_id` (number, required): WhatsApp instance ID
- `participant_chat_id` (string, required): Participant chat ID (79001234567@c.us)

### `whatsapp_send_contact` (~81 tokens)

Send a contact card via WhatsApp

Input parameters:

- `chat_id` (string, required): Chat ID
- `company` (string): Contact company
- `first_name` (string): Contact first name
- `instance_id` (number, required): WhatsApp instance ID
- `last_name` (string): Contact last name
- `phone_number` (number, required): Contact phone number

### `whatsapp_send_file` (~65 tokens)

Send a file by URL

Input parameters:

- `caption` (string): File caption
- `chat_id` (string, required): Chat ID
- `file_name` (string): File name
- `instance_id` (number, required): WhatsApp instance ID
- `url` (string, required): File URL

### `whatsapp_send_file_by_upload` (~107 tokens)

Send a file directly to a chat via multipart upload (no separate URL step)

Input parameters:

- `caption` (string): File caption (optional)
- `chat_id` (string, required): Chat ID (79001234567@c.us or 120363XXX@g.us)
- `file_base64` (string, required): File contents encoded as base64
- `filename` (string, required): File name with extension (e.g. photo.jpg)
- `instance_id` (number, required): WhatsApp instance ID

### `whatsapp_send_location` (~68 tokens)

Send a location

Input parameters:

- `address` (string): Address
- `chat_id` (string, required): Chat ID
- `instance_id` (number, required): WhatsApp instance ID
- `latitude` (number, required): Latitude
- `longitude` (number, required): Longitude
- `name` (string): Place name

### `whatsapp_send_message` (~91 tokens)

Send a text message via WhatsApp

Input parameters:

- `chat_id` (string, required): Chat ID (79001234567@c.us or 120363XXX@g.us)
- `instance_id` (number, required): WhatsApp instance ID
- `link_preview` (boolean): Show link previews
- `message` (string, required): Message text
- `quoted_message_id` (string): ID of the message to quote (optional)

### `whatsapp_send_poll` (~69 tokens)

Send a poll via WhatsApp

Input parameters:

- `chat_id` (string, required): Chat ID
- `instance_id` (number, required): WhatsApp instance ID
- `message` (string, required): Poll question
- `multiple_answers` (boolean): Allow multiple answers
- `options` (array, required): Answer options (strings)

### `whatsapp_set_group_admin` (~65 tokens)

Promote a group member to admin

Input parameters:

- `group_id` (string, required): Group ID (120363XXX@g.us)
- `instance_id` (number, required): WhatsApp instance ID
- `participant_chat_id` (string, required): Participant chat ID (79001234567@c.us)

### `whatsapp_set_settings` (~153 tokens)

Update instance settings (webhooks, proxy, etc.)

Input parameters:

- `delay_message` (number): Message send delay (ms)
- `device_webhook` (boolean): Enable device webhook
- `incoming_webhook` (boolean): Enable incoming message webhook
- `instance_id` (number, required): WhatsApp instance ID
- `mark_incoming_messages_readed` (boolean): Mark incoming messages as read
- `outgoing_webhook` (boolean): Enable outgoing message webhook
- `state_webhook` (boolean): Enable state webhook
- `status_instance_webhook` (boolean): Enable instance status webhook
- `webhook_url` (string): URL for incoming webhooks
- `webhook_url_token` (string): Token for the webhook URL

### `whatsapp_upload_file` (~75 tokens)

Upload a file to GREEN-API storage and return its URL. Use the returned URL with whatsapp_send_file.

Input parameters:

- `file_base64` (string, required): File contents encoded as base64
- `filename` (string, required): File name with extension (e.g. photo.jpg)
- `instance_id` (number, required): WhatsApp instance ID

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-green-api-whatsapp/mcp#diagnostics

## Score history

- 2026-08-03: 36
- 2026-08-02: 36
- 2026-08-01: 36
- 2026-07-31: 36
- 2026-07-30: 23
- 2026-07-29: 23
- 2026-07-28: 23
- 2026-07-27: 23
- 2026-07-26: 23

## Links

- Remote endpoint: https://mcp.green-api.com/mcp
- Authorisation metadata: https://mcp.green-api.com/.well-known/oauth-protected-resource/mcp
- Repository: https://github.com/green-api/green-api-mcp-gateway
- Changelog RSS feed: https://verifymcp.io/servers/com-green-api-whatsapp/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-green-api-whatsapp/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-green-api-whatsapp/mcp
