# MCP

> AI エージェント（Claude Code・Claude Desktop・Cursor など）から Webhook Admin を操作するための MCP サーバーのつなぎ方。

Source: https://webhookadmin.com/ja/docs/mcp/

MCP の URL を追加してブラウザでログインすると、AI エージェントから組織・プロジェクト・API キーの作成、送信先の登録、失敗した送信のやり直し、プランの変更までできます。

## 接続先

- **URL**: `https://api.webhookadmin.com/mcp`
- **方式**: Streamable HTTP
- **認証**: ブラウザでのログイン（OAuth）。CI などの非対話の用途は API キー

## Claude Code

```bash
claude mcp add --transport http webhook-admin https://api.webhookadmin.com/mcp
```

Claude Code で `/mcp` を開き、webhook-admin の「Authenticate」を選ぶとブラウザが開きます。ログインして「許可する」を押すと使えます。

## Claude Desktop

Settings › Connectors › Add custom connector に `https://api.webhookadmin.com/mcp` を入れ、「Connect」からブラウザでログインします。

## Cursor

プロジェクトの `.cursor/mcp.json`（すべてのプロジェクトで使うときは `~/.cursor/mcp.json`）に追加し、Settings › MCP の「Login」からブラウザでログインします。

```
{
  "mcpServers": {
    "webhook-admin": { "url": "https://api.webhookadmin.com/mcp" }
  }
}
```

## ログインと許可

ブラウザでは管理画面と同じ方法（メール・GitHub・Google・パスキー・SSO）でログインし、「Webhook Admin へのアクセスを許可しますか」で「許可する」を押します。許可したアプリはアカウントの設定の「接続中のアプリ」に並び、そこから取り消せます。

アカウントが無いときは、ログインの画面の「登録」から作れます。AI エージェントに登録させるときは、ログイン不要の `https://api.webhookadmin.com/mcp/signup` の `signup` にメールアドレスを渡します。届いたメールのリンクを開いて「ログインする」を押すと登録が済みます。

## 道具

| 道具 | できること | 要る役割（上の役割でも可） |
| --- | --- | --- |
| `whoami`・`list_organizations` | ログイン中の人と組織 | — |
| `create_organization` | 組織の作成 | — |
| `list_projects`・`create_project` | プロジェクトの一覧・作成（本番とテストの環境ができる） | admin |
| `list_environments` | 環境の一覧 | viewer |
| `create_api_key`・`list_api_keys`・`revoke_api_key` | API キーの作成・一覧・取り消し | developer |
| `list_members`・`invite_member` | メンバーの一覧・招待 | admin |
| `list_event_types`・`create_event_type` | イベントの種類の一覧・登録 | developer |
| `list_alert_rules`・`create_alert_rule`・`update_alert_conditions` | 失敗の通知（Slack・Teams・Chatwork・メール・Webhook）と知らせる条件 | admin |
| `get_usage`・`get_plan` | 今月の通数・枠・超過、プラン | viewer |
| `create_checkout`・`change_plan`・`get_billing_portal` | 有料プランの申し込み・プランの変更・請求の管理 | owner |

環境の中の道具は、`list_environments` で分かる `environment_id` を付けて呼びます。読むだけの道具は viewer、ほかは developer から使えます。

| 道具 | できること | API キーの権限 |
| --- | --- | --- |
| `list_consumers` | 顧客の一覧 | `logs:read` |
| `create_consumer` | 顧客の作成 | `consumers:write` |
| `list_endpoints` | 送信先の一覧 | `logs:read` |
| `create_endpoint` | 送信先の作成 | `endpoints:write` |
| `update_endpoint` | 送信先の変更（止める・再開する・再送の設定・互換の署名） | `endpoints:write` |
| `list_failed_deliveries` | 失敗した送信の一覧 | `logs:read` |
| `retry_delivery` | 送信のやり直し | `messages:retry` |
| `recover_endpoint` | 送信先ごとのまとめて再送 | `messages:retry` |
| `get_recovery` | まとめて再送の進み具合 | `logs:read` |
| `send_test` | 送信先への試しの送信 | `messages:send` |
| `create_portal_link` | 顧客向けの設定画面のリンクの作成 | `endpoints:write` |

`revoke_api_key` と `change_plan` は `confirm: true` を付けるまで実行せず、取り消すキーやプランを変えた後の月額・請求の見込みを返します。

## API キーでつなぐ（CI など）

ブラウザを開けない用途では、管理画面で作った API キーを `Authorization` に付けます。キーの環境（本番かテスト）の中の道具だけを、キーの権限の範囲で使えます。

```bash
claude mcp add --transport http webhook-admin https://api.webhookadmin.com/mcp \
  --header "Authorization: Bearer $WEBHOOK_ADMIN_API_KEY"
```

```
{
  "mcpServers": {
    "webhook-admin": {
      "url": "https://api.webhookadmin.com/mcp",
      "headers": { "Authorization": "Bearer sk_live_…" }
    }
  }
}
```
