incidentrelay-mcp
incidentrelay-mcp
IncidentRelay のための MCP サーバー — 自ホスト型のオンコールスケジューリング、アラートルーティング、インシデント管理。
IncidentRelay の REST API 全体(279 オペレーション) を、MCP クライアント(Claude Desktop、Claude Code、Cursor、…)に 2 つのレイヤーを通じて公開します:
3 つのゲートウェイツール — サーバー自身の OpenAPI ドキュメントに基づき、すべての オペレーションを利用可能にします。
25 の厳選ツール — 一般的なオンコールワークフロー(アラートの確認/解決、インシデント、オンコールスケジュール、サイレンス、メンテナンスウィンドウ)を、型付けされた使いやすい入力でラップします。
このサーバーは IncidentRelay を変更することはありません。提供されたベアラートークンで認証する純粋な REST クライアントです。
実行
インストール不要 — npx で実行できます(Node.js ≥ 20):
# from GitHub (works today)
IR_BASE_URL=https://incidentrelay.example.com IR_TOKEN=<token> \
npx -y github:NikGariel/IncidentRelay-mcp
# from npm (after the package is published)
IR_BASE_URL=https://incidentrelay.example.com IR_TOKEN=<token> \
npx -y incidentrelay-mcpnpx は初回実行時にパッケージを自動的にビルドします(prepare スクリプトが TypeScript をコンパイルします)。したがって、別途ビルド手順は不要です。
ソースから
npm install # runs the build via the prepare script
npm start設定
サーバーには、IncidentRelay のベース URL とベアラートークン(IncidentRelay の Profile → API tokens で作成した JWT アクセストークンまたは 個人用 API トークン。許可するスコープ付き)が必要です。
設定 | 環境変数 | フラグ | 必須 | デフォルト |
ベース URL |
|
| はい | — |
ベアラートークン |
|
| はい¹ | — |
トランスポート |
|
| いいえ |
|
HTTP ポート |
|
| いいえ |
|
HTTP ホスト |
|
| いいえ |
|
読み取り専用 |
|
| いいえ |
|
リクエストタイムアウト (ms) |
| — | いいえ |
|
OpenAPI URL オーバーライド |
| — | いいえ |
|
TLS 検証 |
| — | いいえ |
|
¹ トークンは、書き込み操作を一切呼び出さない場合にのみオプションです。
起動時にサーバーは {IR_BASE_URL}/api/openapi.json(公開エンドポイント)を取得してオペレーションカタログを構築するため、常にデプロイされた IncidentRelay のバージョンと一致します。その取得が失敗した場合は、バンドルされたスナップショットにフォールバックし、警告をログに記録します。
Claude Desktop / Claude Code での使用 (stdio)
MCP クライアント設定(例: claude_desktop_config.json)に追加します。
推奨 — プリビルドバイナリを直接実行(0.5秒未満で起動するため、クライアントの起動タイムアウトに達しません):
{
"mcpServers": {
"incidentrelay": {
"command": "node",
"args": ["/absolute/path/to/incidentrelay-mcp/dist/index.js"],
"env": {
"IR_BASE_URL": "https://incidentrelay.example.com",
"IR_TOKEN": "<personal-api-token>"
}
}
}
}npm install && npm run build(または npm install -g .)で一度ビルドします。
代替 — npx。 npm に公開されたら:
{ "command": "npx", "args": ["-y", "incidentrelay-mcp"], "env": { "…": "…" } }⚠️ クライアント設定で
npx -y github:…を使用しないでください: 最初の実行でリポジトリのクローン、依存関係のインストール、TypeScript のコンパイルが行われ、コールドキャッシュでは MCP クライアントの約30秒の接続タイムアウトを超える可能性があります。サーバーをオンデマンドで起動するクライアントには、プリビルドバイナリ(または公開後の npm 版)を使用してください。
サーバー自体はネットワークに関係なく即座に起動します: バンドルされた OpenAPI スナップショットを同期的に読み込み、その後バックグラウンドでライブサーバーからカタログを更新します。
HTTP 経由での使用 (Streamable HTTP)
IR_BASE_URL=https://incidentrelay.example.com IR_TOKEN=... \
npx -y github:NikGariel/IncidentRelay-mcp --transport http --port 3000
# serves MCP at http://127.0.0.1:3000/mcpHTTP トランスポートはステートレス(リクエストごとに1つのサーバー)で、デフォルトで 127.0.0.1 にバインドし、DNS リバインディング保護が有効です。
ツール
ゲートウェイ (全279オペレーションをカバー)
ツール | 目的 |
| クエリ、タグ、メソッドで API カタログを検索/一覧表示します。 |
| 1つのオペレーションのパラメータとリクエストボディスキーマを表示します。 |
|
|
典型的なフロー: ir_list_operations → ir_describe_operation → ir_call。
厳選 (一般的なオンコールワークフロー)
アラート: ir_list_alerts, ir_get_alert, ir_ack_alert, ir_resolve_alert, ir_comment_alert ·
インシデント: ir_list_incidents, ir_get_incident, ir_create_incident, ir_add_incident_responder, ir_set_incident_priority ·
オンコール: ir_who_is_on_call, ir_oncall_health, ir_list_rotations, ir_create_rotation_override ·
サイレンス: ir_list_silences, ir_create_silence, ir_remove_silence ·
メンテナンス: ir_list_maintenance_windows, ir_create_maintenance_window ·
コンテキスト: ir_list_teams, ir_list_routes, ir_list_channels, ir_whoami ·
ハートビート: ir_list_heartbeats, ir_send_heartbeat。
安全性
確認ガード。 破壊的操作(
DELETE、およびdisable/remove/delete/reset/regenerate-token/intake-token/cancel/merge/revokeを含むパス)は、confirm: trueを渡さない限り実行されません。渡さない場合、ツールはドライランのプレビューを返します。読み取り専用モード。
IR_READONLY=trueを設定すると、ツールレイヤーで非GETオペレーションをすべて拒否します。トークンの秘匿化。 ベアラートークンはログとエラー出力から取り除かれます。
セキュリティ
IR_VERIFY_TLS=false は、IncidentRelay へのアウトバウンド呼び出しの TLS 証明書検証を無効にします。これによりトラフィックが中間者攻撃にさらされるため、信頼できるネットワーク上でのみ使用してください。自己ホストの自己署名証明書の場合は、検証を無効にする代わりに、サーバーの CA をトラストストアに追加することを推奨します(または適切に発行された証明書を使用してください)。無効にすると、サーバーは起動時に警告を出力します。
開発
npm test # run the vitest suite
npm run dev # run from source with tsx
npm run build # typecheck + emit dist/ + copy the OpenAPI snapshotバンドルされた OpenAPI スナップショットの再生成: scripts/generate-snapshot.md を参照してください。
設計と計画
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP server for business-day math, deadline planning, meeting overlap, and SLA calculations.
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
MCP server for InsForge BaaS — database, storage, edge functions, and deployments
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/NikGariel/IncidentRelay-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server