🚀 WhatsApp Flows API MCP Server について
インタラクティブなWhatsAppアンケートの管理と回答収集を行う、コンテナ化されたMCPサーバーです。ERP連携と大規模な顧客リストのバックグラウンド処理に対応します。
主な機能
- 01WhatsAppアンケートの作成と送信
- 02ERPシステムとの連携
- 03ジョブのバックグラウンド処理
- 04ジョブとキュー統計の監視
- 05Web UIからのRedis管理
活用シーン
- 01大規模な顧客リストへのアンケート送信
- 02アンケートとERPシステムの接続
- 03アンケートジョブの進捗確認
- 04Redisデータとパフォーマンスの確認
MCP 対応
アンケートのバックグラウンド送信、ジョブ状況の確認、キュー統計の取得ツールをMCPクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🚀 WhatsApp Flows API MCP サーバー
✨ 機能
- 🐳 Docker 化されたアーキテクチャ - Redis とバックグラウンド処理を含む、完全なコンテナ化環境
- 🔧 モジュール式 ERP 連携 - Business Central、SAP、Oracle、およびカスタム ERP システムに対応
- ⚡ バックグラウンド処理 - 大規模な顧客リストを処理するための非同期ジョブ処理
- 📱 WhatsApp Flow 管理 - WhatsApp Business API を介したインタラクティブなアンケートの作成と送信
- 📊 監視ツール - ジョブ監視と Redis 管理のための組み込みダッシュボード
- 🔄 開発サポート - 迅速な反復開発を可能にするホットリロードと開発用コンテナ
🚀 クイックスタート
前提条件
開始する前に、以下を用意してください。
- ✅ Docker と Docker Compose がインストールされていること
- ✅ WhatsApp Business API の認証情報
- ✅ 環境変数が設定されていること
1️⃣ クローンして設定
git clone https://github.com/Ronnie-Leon76/whatsapp-flows-mcp-server.git
cd whatsapp-flows-mcp-server
# Copy and configure environment variables
cp .env.example .env
# Edit .env with your WhatsApp Business API credentials
2️⃣ サービスを起動
🏭 本番モード
make start
# or
./scripts/start.sh
🛠️ 開発モード(ホットリロードあり)
make start-dev
# or
./scripts/start-dev.sh
3️⃣ サービスにアクセス
| サービス | URL | 説明 |
|---|---|---|
| MCP サーバー | コンテナ内で実行中 | メインの MCP サーバー(stdio トランスポート) |
| ジョブダッシュボード | http://localhost:3001 | バックグラウンドジョブを監視 |
| Redis Commander | http://localhost:8081 | Redis 管理インターフェース |
| Redis | localhost:6379 | Redis インスタンス |
🏗️ アーキテクチャ
Docker サービスの概要
graph TB
A[MCP Server] --> D[Redis Job Queue]
B[Job Worker 1] --> D
C[Job Worker 2] --> D
D --> E[Job Dashboard]
D --> F[Redis Commander]
style A fill:#e1f5fe
style B fill:#f3e5f5
style C fill:#f3e5f5
style D fill:#ffebee
style E fill:#e8f5e8
style F fill:#fff3e0
コアサービス
| サービス | 用途 | レプリカ数 |
|---|---|---|
| mcp-server | メインの MCP サーバー | 1 |
| redis | ジョブキューとキャッシュ | 1 |
| job-worker | バックグラウンドジョブ処理 | 2 |
| job-dashboard | ジョブ監視用 Web UI | 1 |
| redis-commander | Redis 管理 UI | 1 |
🛠️ コマンド一覧
Make コマンド
| コマンド | 説明 |
|---|---|
make help | 📋 使用可能なすべてのコマンドを表示 |
make build | 🔨 Docker イメージをビルド |
make start | ▶️ 本番サービスを起動 |
make start-dev | 🛠️ 開発サービスを起動 |
make stop | ⏹️ すべてのサービスを停止 |
make logs | 📜 すべてのサービスのログを表示 |
make logs-mcp | 📜 MCP サーバーのログを表示 |
make logs-celery | 📜 ワーカーのログを表示 |
make clean | 🧹 Docker リソースをクリーンアップ |
make restart | 🔄 すべてのサービスを再起動 |
make shell-mcp | 🐚 MCP コンテナでシェルを開く |
make shell-celery | 🐚 ワーカーコンテナでシェルを開く |
make redis-cli | 💾 Redis CLI を開く |
NPM スクリプト
npm run docker:build # Build Docker images
npm run docker:start # Start production services
npm run docker:start-dev # Start development services
npm run docker:stop # Stop all services
npm run docker:logs # View logs
⚙️ 設定
🔑 必須の環境変数
# WhatsApp Business API Configuration
WHATSAPP_ACCESS_TOKEN=your_access_token_here
WHATSAPP_PHONE_NUMBER_ID=your_phone_number_id_here
WHATSAPP_BUSINESS_ACCOUNT_ID=your_business_account_id_here
WHATSAPP_VERIFY_TOKEN=your_verify_token_here
🔧 任意の環境変数
# Redis Configuration (auto-configured in Docker)
REDIS_URL=redis://redis:6379/0
# Worker Configuration
WORKER_CONCURRENCY=5
# Dashboard Configuration
PORT=3001
# Paths (auto-configured in Docker)
CONFIG_PATH=/app/config
SURVEYS_PATH=/app/surveys
🛠️ 開発
ホットリロードを使った開発
# Start development environment with hot reload
make start-dev
# View development logs
docker-compose -f docker-compose.dev.yml logs -f
ローカル開発(Docker なし)
# Start Redis locally
docker run -d -p 6379:6379 redis:7-alpine
# Install dependencies
npm install
# Start MCP server
npm run dev
# Start worker (in separate terminal)
cd celery_app
celery -A tasks worker --loglevel=info
📊 監視とデバッグ
📈 ジョブダッシュボード
http://localhost:3001 にアクセスすると、以下を実行できます。
- ✅ 実行中/完了したジョブを監視
- 📋 ジョブの詳細と進行状況を確認
- 👥 ワーカーの状態を監視
- ⚡ ジョブの実行状況をリアルタイムで追跡
💾 Redis Commander
http://localhost:8081 にアクセスすると、以下を実行できます。
- 🔍 Redis のキーを閲覧
- 📊 Redis のパフォーマンスを監視
- 👁️ 保存されたデータを確認
- 🔧 Redis の問題をデバッグ
🔧 新しい MCP ツール
send-survey- 大規模な顧客リスト向けのバックグラウンドジョブ処理get-job-status- バックグラウンドジョブの進行状況を監視get-queue-stats- ジョブキューの統計を表示
📜 ログの表示
# All services
make logs
# Specific service
docker-compose logs -f mcp-server
docker-compose logs -f job-worker
docker-compose logs -f redis
# Follow logs in real-time
docker-compose logs -f --tail=100
🚀 本番環境へのデプロイ
Docker Compose による本番環境へのデプロイ
# Start production services
make start
# Scale workers
docker-compose up -d --scale job-worker=4
# Update services
docker-compose pull
docker-compose up -d
🏥 ヘルスチェック
すべてのサービスには、包括的なヘルスチェックが含まれています。
| サービス | ヘルスチェック |
|---|---|
| Redis | redis-cli ping |
| MCP Server | Node.js ヘルスエンドポイント |
| Job Worker | ワーカーステータスの ping |
💾 永続データ
Docker ボリュームを使用してデータを永続化します。
| ボリューム | 用途 |
|---|---|
redis_data | Redis データベース |
mcp_config | ERP 設定 |
mcp_surveys | アンケート定義 |
mcp_logs | アプリケーションログ |
worker_logs | ワーカーログ |
🔧 トラブルシューティング
よくある問題
🚫 サービスが起動しない
# Check Docker status
docker-compose ps
# View service logs
make logs
# Check system resources
docker stats
🔴 Redis の接続に関する問題
# Test Redis connection
make redis-cli
ping
# Check Redis logs
docker-compose logs redis
⚠️ ジョブが処理されない
# Check worker status
make logs-celery
# Access job dashboard
open http://localhost:3001
# Check Redis queue
make redis-cli
LLEN job_queue
🔑 環境変数が読み込まれない
# Verify .env file exists and is configured
cat .env
# Restart services
make restart
# Check environment in container
docker-compose exec mcp-server env | grep WHATSAPP
🔍 デバッグ
# Access container shells
make shell-mcp # MCP server container
make shell-celery # Worker container
# View container resources
docker stats
# Inspect container configuration
docker-compose config
📄 ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細は LICENSE ファイルをご覧ください。
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。