Green API WhatsApp について
Green API WhatsAppは、GREEN-API経由でAIエージェントにWhatsApp機能を提供するMCPゲートウェイです。複数のトランスポート方式で、メッセージ、インスタンス、グループ、連絡先、通知を扱います。
主な機能
- 01テキスト、ファイル、位置情報、投票の送信
- 02メッセージの転送、編集、削除
- 03連絡先、グループ、インスタンスの管理
- 04ポーリングまたはHTTPで通知を受信
- 05複数インスタンスと各種トランスポートに対応
- 06カスタマーサポートと一斉配信用プロンプト
活用シーン
- 01AIエージェント経由でWhatsAppメッセージを送信
- 02WhatsAppグループと参加者を管理
- 03受信通知を取得して処理
- 04複数のGREEN-APIインスタンスを管理
MCP 対応
MCPサーバーとしてGREEN-APIのWhatsApp操作をツールとして公開し、インスタンス状態・設定のリソースと、サポート・一斉配信用プロンプトも提供します。stdio、SSE、HTTP、hybridの各トランスポートに対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.green-api.com/mcpclaude mcp add --transport http com-green-api-whatsapp https://mcp.green-api.com/mcp{"mcpServers":{"com-green-api-whatsapp":{"type":"http","url":"https://mcp.green-api.com/mcp"}}}Cursor で開く{"servers":{"com-green-api-whatsapp":{"type":"http","url":"https://mcp.green-api.com/mcp"}}}VS Code で開く{"mcpServers":{"com-green-api-whatsapp":{"type":"http","url":"https://mcp.green-api.com/mcp"}}}{"mcpServers":{"com-green-api-whatsapp":{"serverUrl":"https://mcp.green-api.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://mcp.green-api.com/mcp認証が必要https://mcp.green-api.com/sse認証が必要ツール
41| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| group_id | string | はい | グループ ID |
| instance_id | number | はい | WhatsApp インスタンス ID |
| participant_chat_id | string | はい | 参加者のチャット ID([email protected]) |
詳細
green-api-mcp-gateway
サポートリンク
ガイドとニュース
GREEN-API WhatsApp 向けの MCP ゲートウェイです。AI エージェント(Claude Desktop、OpenClaw、Cursor など)が、Model Context Protocol を使って WhatsApp 経由でメッセージの送信、インスタンスの管理、通知の受信を行えます。
できること
テキストメッセージ、URL 経由のファイル、位置情報、連絡先、投票を送信できます。メッセージの転送や編集も可能です。グループの管理(作成、データ取得、参加者の追加・削除)、電話番号の WhatsApp 利用可否の確認、連絡先とその情報の取得も行えます。インスタンスの状態や設定、認証用 QR コードを取得できます。ポーリングまたは HTTP レシーバーを介して受信通知を受け取れます。インスタンスの作成・削除に対応したパートナー API も利用できます。1 つのゲートウェイで複数のインスタンスをサポートします。一般的なシナリオ(カスタマーサポート、一斉配信)向けのプロンプトテンプレートを備えています。Prometheus メトリクスと OpenTelemetry に対応しています。
MCP サーバーの接続方法については、当社のウェブサイトをご覧ください。
アーキテクチャ
クリーンアーキテクチャ(ポートとアダプター):
cmd/server/main.go — entry point, DI wiring
internal/
domain/ — business entities, errors, constants (zero dependencies)
application/ — ports (interfaces)
infrastructure/
auth.go — CredentialManager (in-memory credential store)
config/config.go — YAML + env configuration
greenapi/client.go — WhatsApp client via Go SDK
mcp/
server.go — MCP server (stdio/sse)
tools.go — MCP tools registration
resources.go — MCP resources
prompts.go — MCP prompts
webhook/
bridge.go — polling bridge
receiver.go — HTTP receiver
ビルド
go build -o green-api-mcp-gateway ./cmd/server
Go 1.25 以降が必要です。
トランスポートとエンドポイント
サーバーは、server.transport(または環境変数 GREEN_API_TRANSPORT)で選択する4種類のトランスポートをサポートしています。
| トランスポート | エンドポイント(host:port からの相対パス) | 用途 |
|---|---|---|
stdio | stdin/stdout | バイナリを起動するローカル CLI(Claude Desktop、Cursor)。 |
sse | GET /(ストリーム)+ POST /message | 従来の MCP クライアント(SSE のみ)。 |
http | POST/GET /mcp | ストリーミング可能な HTTP(MCP 2025-03-26+) — 新しいクライアントに推奨。 |
hybrid | 1つのポートで /sse + /message および /mcp | 公開サーバー:従来の SSE とストリーミング可能な HTTP の両方を提供します。 |
HTTP ベースのトランスポートでは、次のエンドポイントも利用できます。
GET /health、GET /healthz— ヘルスチェック(認証不要)GET /favicon.ico、GET /favicon.png— GREEN-API アイコン
auth.mode: proxy が有効な場合は、OAuth 2.0 PKCE エンドポイントも追加されます。
GET /.well-known/oauth-authorization-server— RFC 8414 メタデータGET /.well-known/oauth-protected-resource— RFC 9728 メタデータGET /authorize— ブラウザー向け認可フォームPOST /token— トークン交換
設定
YAML を使用する場合
server:
transport: stdio # stdio | sse | http | hybrid
port: 8090
auth:
mode: config # config | proxy
cache_ttl: 300 # seconds (proxy mode only)
green_api:
instances:
- id: 1101000001
api_token: "YOUR_TOKEN"
api_url: "https://api.green-api.com"
webhook:
mode: polling
polling_timeout: 20
rate_limit:
requests_per_second: 10
burst: 20
logging:
level: info
format: text
環境変数を使用する場合
環境変数は YAML 設定より優先されます。
以下の変数は、両方のデプロイモードに対応しています。認証情報の変数(GREEN_API_INSTANCE_ID、GREEN_API_TOKEN、GREEN_API_URL)は、auth.mode: config を指定したローカルの stdio 実行にのみ適用されます。HTTP トランスポート(/sse + /message の sse、/mcp の http、または hybrid)では、代わりに auth.mode: proxy を使用してください。認証情報は HTTP ヘッダーまたは組み込みの OAuth フローを通じて渡され、環境変数の認証情報は無視されます。
GREEN_API_INSTANCE_ID— インスタンス IDGREEN_API_TOKEN— API トークンGREEN_API_URL— API ベース URL(デフォルトはhttps://api.green-api.com)GREEN_API_TRANSPORT— トランスポート:stdio、sse、http、またはhybridGREEN_API_PORT— HTTP ポート(デフォルトは8090)GREEN_API_BASE_URL— 公開ベース URL(OAuth の発行者/リダイレクトに使用。例:https://mcp.example.com)GREEN_API_WIDGET_DOMAIN— ChatGPT Apps の提出メタデータで使用する一意のウィジェットオリジン(デフォルトはGREEN_API_BASE_URL、次にhttps://mcp.green-api.com)GREEN_API_AUTH_MODE—configまたはproxyGREEN_API_AUTH_CACHE_TTL— プロキシ認証情報のキャッシュ TTL(秒)GREEN_API_WEBHOOK_MODE—pollingまたはreceiverLOG_LEVEL— ログレベルLOG_FORMAT—textまたはjson
実行
# With environment variables
export GREEN_API_INSTANCE_ID=1101000001
export GREEN_API_TOKEN=your_token
./green-api-mcp-gateway
# With a config file
./green-api-mcp-gateway --config config.yaml
統合
Claude Desktop(ローカル stdio)
claude_desktop_config.json に追加します。
{
"mcpServers": {
"whatsapp": {
"command": "/path/to/green-api-mcp-gateway",
"args": ["--config", "/path/to/config.yaml"]
}
}
}
OpenClaw
mcp:
servers:
- name: whatsapp
command: /path/to/green-api-mcp-gateway
args: ["--config", "/path/to/config.yaml"]
Docker
docker build -t green-api-mcp-gateway .
docker run --rm -i \
-e GREEN_API_INSTANCE_ID=1101000001 \
-e GREEN_API_TOKEN=your_token \
green-api-mcp-gateway
MCP ツール
メッセージング
whatsapp_send_message— テキストメッセージwhatsapp_send_file— URL からファイルを送信whatsapp_send_location— 位置情報whatsapp_send_contact— 連絡先(vCard)whatsapp_send_poll— 投票whatsapp_forward_messages— 転送whatsapp_edit_message— 編集whatsapp_delete_message— 削除
インスタンス
whatsapp_get_state— 認証状態whatsapp_get_settings— 現在の設定whatsapp_set_settings— 設定を更新whatsapp_get_qr— 認証 QR コードwhatsapp_connect— インスタンスに接続whatsapp_disconnect— インスタンスを切断
連絡先
whatsapp_get_contacts— 連絡先リストwhatsapp_get_contact_info— 連絡先情報whatsapp_check_whatsapp— 電話番号を確認
グループ
whatsapp_create_group— グループを作成whatsapp_get_group_data— グループデータを取得whatsapp_add_group_participant— 参加者を追加whatsapp_remove_group_participant— 参加者を削除whatsapp_leave_group— グループから退出
通知
whatsapp_receive_notification— 着信通知を受信(ロングポーリング)
パートナー API
whatsapp_create_instance— インスタンスを作成whatsapp_delete_instance— インスタンスを削除whatsapp_get_instances— インスタンスの一覧を取得
MCP リソース
whatsapp://instance/{id}/state— インスタンスの状態whatsapp://instance/{id}/settings— インスタンスの設定
MCP プロンプト
whatsapp_customer_support— カスタマーサポート用のテンプレートwhatsapp_broadcast— 一斉送信用のテンプレート
依存関係
- mcp-go — MCP SDK
- whatsapp-api-client-golang — GREEN-API Go SDK
開発
go test ./...
gofmt -w .
GOOS=linux GOARCH=amd64 go build -o green-api-mcp-gateway-linux ./cmd/server
ライセンス
MIT — LICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。