WhatsApp MCP サーバー
FastMCP を使用して WhatsApp Business API と対話するためのモデル コンテキスト プロトコル (MCP) インターフェイスを提供するサーバー。
導入
WhatsApp MCPサーバーは、Claudeなどの言語モデルがGreenAPIを介してWhatsApp機能と連携できるようにするPython実装です。FastMCPを活用することで、パフォーマンスの向上、開発者エクスペリエンスの向上、そしてよりクリーンな実装を実現します。
Related MCP server: MCP Evolution API
特徴
メッセージング: WhatsAppの連絡先にテキストメッセージを送信する
グループ管理: グループの作成、メンバーの一覧表示、参加者の追加/削除
セッション処理: WhatsApp APIセッションを管理する
チャット履歴: チャットリストとメッセージ履歴を取得します
WhatsApp APIクライアント
このプロジェクトではwhatsapp-api-client-pythonライブラリを使用してWhatsAppとやり取りします。クライアントはWhatsApp Cloud APIへのアクセスを提供しますが、使用するにはGreenAPIアカウントが必要です。
環境変数
このプロジェクトでは、構成に環境変数を使用します。
GREENAPI_ID_INSTANCE: GreenAPI IDインスタンスGREENAPI_API_TOKEN: GreenAPI APIトークン
これらを環境で設定するか、提供されている.envファイルを使用することもできます (インストール手順を参照)。
インストール
# Clone the repository
git clone https://github.com/yourusername/whatsapp-mcp-server.git
cd whatsapp-mcp-server
# Install dependencies
pip install -e .
# Set up environment variables
cp .env-template .env
# Edit the .env file with your GreenAPI credentials使用法
MCP サーバーを実行します。
# Run the MCP server on default host (127.0.0.1) and port (8000)
whatsapp-mcp
# Specify host and port
whatsapp-mcp --host 0.0.0.0 --port 9000デバッグの場合:
whatsapp-mcp --debugサーバーはモデルコンテキストプロトコル (MCP) を使用して通信し、FastMCP で実行している場合は HTTP または WebSocket 経由でアクセスできます。
利用可能なツール
open_session: 新しいWhatsAppセッションを開くsend_message: チャットにメッセージを送信するget_chats: チャットのリストを取得するcreate_group: 新しいWhatsAppグループを作成するget_group_participants: グループの参加者を取得する
FastMCP API リファレンス
WhatsApp MCP サーバーは FastMCP を使用して、WebSocket と HTTP エンドポイントの両方を提供します。
WebSocket:
ws://localhost:8000/mcpHTTP:
http://localhost:8000/mcp
curl などのツールを使用して API を直接テストできます。
# List available tools
curl -X POST http://localhost:8000/mcp/listTools
# Call a tool
curl -X POST http://localhost:8000/mcp/callTool \
-H "Content-Type: application/json" \
-d '{"name": "open_session", "arguments": {}}'クロードコードに追加する方法
WhatsApp サーバーを Claude に追加するには、 claude mcp addコマンドを使用します。
# Add the WhatsApp MCP server
$ claude mcp add whatsapp -- whatsapp-mcp
# List existing MCP servers - Validate that the server is running
claude mcp list
# Start claude code
claudeクロードと一緒に使う
WhatsApp MCP サーバーが実行される場合は、会話の中で Claude を使用してサーバーと対話できます。
WhatsAppで認証する
Login to WhatsAppメッセージを送信する
Send the "Hello" message to John DoeClaude Desktopでの使用
Claude Desktop で WhatsApp MCP サーバーを使用するには、 claude_desktop_config.jsonファイルに追加する必要があります。
pip インストールの使用(推奨)
"mcpServers": {
"whatsapp": {
"command": "python",
"args": ["-m", "whatsapp_mcp"]
}
}実行ファイルの使用
"mcpServers": {
"whatsapp": {
"command": "whatsapp-mcp"
}
}Dockerの使用
"mcpServers": {
"whatsapp": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "GREENAPI_ID_INSTANCE=your_instance_id", "-e", "GREENAPI_API_TOKEN=your_api_token", "whatsapp-mcp-server"]
}
}Claude Desktop を起動する前に、GreenAPI 資格情報を環境変数として、または.envファイルで設定することを忘れないでください。
コマンドラインオプション
WhatsApp MCP サーバーは次のコマンドライン引数を受け入れます。
--debug: デバッグの詳細レベルを上げる--host: サーバーをバインドするホスト (デフォルト: 127.0.0.1)--port: サーバーをバインドするポート (デフォルト: 8000)
デバッグ
MCP サーバーのデバッグの場合:
MCP インスペクターを使用する:
npx @modelcontextprotocol/inspector whatsapp-mcpClaude デスクトップのログディレクトリ(macOS では通常
~/Library/Logs/Claude/)でログを表示します。インタラクティブな API ドキュメントについては、FastMCP Web インターフェース ( http://localhost:8000)にアクセスしてください。
発達
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Run linting
flake8 src/
# Run type checking
mypy src/このプロジェクトでは、以下を含む最新のpyproject.toml構成を使用します。
アプリケーションの実行に必要なコア依存関係
開発依存関係は
pip install -e ".[dev]"で利用可能
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。