webhook について
AI エージェント向けに Webhook の管理とテスト機能を提供する MCP サーバーです。送信、署名検証、テスト用ペイロード生成、リクエスト診断、再試行計画に対応します。
主な機能
- 01カスタムヘッダーと本文での Webhook 送信
- 02Stripe、GitHub、Slack の署名検証
- 03対応サービスのイベント用テストペイロード生成
- 04リクエスト、署名、タイムスタンプ、本文の検査
- 05バックオフとジッターを使った再試行計画の算出
活用シーン
- 01URL への Webhook 送信と結果の確認
- 02Stripe、GitHub、Slack からの署名検証
- 03受信側のデバッグ用イベント生成
- 04リクエストの問題診断と失敗時の再試行計画
MCP 対応
MCP クライアントに、Webhook 送信、署名検証、ペイロード生成、リクエスト診断、再試行計画のツールを提供する MCP サーバーです。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
5掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | webhook の送信先 URL |
| body | string | はい | リクエスト本文(通常は JSON 文字列) |
| method | enum | いいえ | HTTP メソッド(デフォルト:POST)GET | POST | PUT | PATCH | DELETE |
| headers | object | いいえ | キーと値のペアで指定するカスタム HTTP ヘッダー |
| timeout_ms | number | いいえ | リクエストのタイムアウト(ミリ秒、デフォルト:10000) |
| max_retries | number | いいえ | 失敗時の最大再試行回数(デフォルト:0) |
| content_type | string | いいえ | Content-Type ヘッダー(デフォルト:application/json) |
| base_delay_ms | number | いいえ | 再試行間の基本遅延(ミリ秒、デフォルト:1000) |
詳細
mcp-webhook-tools
Model Context Protocol を基盤とする、AI エージェント向けの Webhook 管理・テストツールです。
ツール
webhook_send
カスタムヘッダー、本文、コンテンツタイプを指定して、任意の URL に Webhook ペイロードを送信します。指数バックオフとジッターによる自動再試行に対応しています。ステータスコード、所要時間、エラーを含む詳細な試行記録を返します。
webhook_validate
HMAC-SHA256 または HMAC-SHA1 を使用して Webhook 署名を検証します。次の組み込みパターンに対応しています。
- Stripe — タイムスタンプ許容範囲に対応した
t=TIMESTAMP,v1=SIGNATURE形式 - GitHub —
sha256=SIGNATUREまたはsha1=SIGNATURE形式 - Slack —
v0:timestamp:bodyの署名方式によるv0=SIGNATURE
タイミング攻撃を防ぐため、タイミングセーフな比較を使用します。
webhook_generate_payload
テスト用の現実的な Webhook ペイロードを生成します。対応するイベントは次のとおりです。
| サービス | イベント |
|---|---|
| Stripe | payment_intent.succeeded |
| GitHub | push、pull_request |
| Slack | message |
各ペイロードには、ランダム化された ID、現在のタイムスタンプ、推奨ヘッダーが含まれます。特定のフィールドをカスタマイズするには、overrides パラメーターを使用してください。
webhook_debug
Webhook リクエストをエンドツーエンドで分析します。
- ヘッダーを解析して分類します(コンテンツタイプ、署名、タイムスタンプ、配信 ID、カスタム)
- リクエスト本文を検証します(サイズ、JSON の妥当性、エンコーディング)
- プロバイダーを自動検出します(Stripe、GitHub、Slack)
- シークレットが指定されている場合は署名を検証します
- タイムスタンプの鮮度を確認します(デフォルトのしきい値は 300s)
- 検出したすべての問題を報告します
webhook_retry_schedule
指数バックオフを使用した再試行スケジュールを計算します。各試行の遅延、累積経過時間、予定された ISO タイムスタンプを表示します。基本遅延、最大遅延上限、乗数、ジッターを設定できます。
セットアップ
npm install
npm run build
MCP 設定
MCP クライアントの設定に追加してください。
{
"mcpServers": {
"webhook-tools": {
"command": "node",
"args": ["path/to/mcp-webhook-tools/dist/index.js"]
}
}
}
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。