WardenPoint について
WardenPointは、AIエージェントからアカウントの通知やオンコール設定を行うMCPサーバーです。利用中の環境のOpenAPI定義からツールを生成し、提供するツールを絞り込めます。
主な機能
- 01担当者、グループ、通知ルールの管理
- 02エスカレーションポリシーとスケジュールの設定
- 03アラートソースとルーティングの設定
- 04OpenAPI定義からのツール生成
- 05エージェントに提示するツールの絞り込み
活用シーン
- 01オンコール担当者とエスカレーションの設定
- 02アラートソースや通知ルートの変更
- 03既存アカウント設定のエージェントによる説明
MCP 対応
stdio経由でツールを提供するMCPサーバーです。WardenPoint環境のOpenAPI定義からツールを生成し、その環境のAPIを呼び出します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @wardenpoint/mcp-serverWARDENPOINT_BASE_URLOrigin of your WardenPoint installation, without a trailing slash and without /api/v1 — e.g. https://wardenpoint.com. The server reads the API description from it at startup, so the tools always match the version you actually run.WARDENPOINT_API_TOKENシークレットA company API key from Dashboard → Integrations → API keys. Abilities are chosen when you issue it; read-only is a good place to start. Not needed for --list-tools.WARDENPOINT_TIMEOUT_MSPer-request timeout in milliseconds. Defaults to 30000.WARDENPOINT_ALLOW_INSECURE_TLSSet to 1 to skip certificate verification. Development stands only — never against production.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
WardenPoint MCP サーバー
エージェントが WardenPoint アカウントの受信者、連絡先、グループ、通知ルール、エスカレーションポリシー、オンコールスケジュール、アラートソース連携、ルーティングルール、電話機能を設定できる MCP サーバーです。誰もダッシュボードを開く必要はありません。
stdio で通信し、お使いのインストール環境の OpenAPI 定義にある各操作につき 1 つのツールを公開します。
{
"mcpServers": {
"wardenpoint": {
"command": "npx",
"args": ["-y", "@wardenpoint/mcp-server"],
"env": {
"WARDENPOINT_BASE_URL": "https://wardenpoint.com",
"WARDENPOINT_API_TOKEN": "acb_xxxxxxxx.xxxxxxxx"
}
}
}
}
インストールはこれだけです。MCP クライアントが必要に応じてサーバーを起動するため、セッション間に実行されるものはありません。
このサーバーが守る唯一のルール
ここには、契約のコピーを別途置きません。
すべてのツール(名前、説明文、引数、その説明、列挙値と上限・下限、応答可能な内容)は、起動時に 設定対象のインストール環境から提供される OpenAPI 定義(GET {WARDENPOINT_BASE_URL}/docs)から読み込まれます。このパッケージで API の内容を再掲することはありません。
これは意図的な設計であり、ツールの内容がひそかに実際の API と食い違うことがない理由でもあります。
- インストール環境にエンドポイントが追加されると、次回サーバーを起動したときにツールとして表示されます。パッケージのアップグレードは必要ありません。
- 上流で説明文が書き換えられると、エージェントへの指示もそれに合わせて書き換わります。
- 説明のない操作はエージェントから見えません。これは適切な失敗動作であり、
--spec-reportがある理由です。
このパッケージに同梱された定義では、パッケージ公開時点の情報しか示せませんが、エージェントが接続するのは実際に稼働している環境です。同じ理由から、オフライン時の代替手段もありません。ここにあるすべてのツールはそのインストール環境への HTTP 呼び出しであり、接続できなければ、完全なツール一覧を表示しても実行できることはありません。
要件
Node 20 以降。ビルド手順は不要で、ネイティブモジュールもありません。
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
WARDENPOINT_BASE_URL | はい | インストール環境のオリジンです。末尾のスラッシュや /api/v1 の接尾辞は付けません。定義には完全なパスが含まれます。 |
WARDENPOINT_API_TOKEN | 呼び出し時に必要 | Dashboard → Integrations → API keys で発行する会社の API キーです。X-API-Key として送信されます。--list-tools または --spec-report の実行には不要です。 |
WARDENPOINT_ALLOW_INSECURE_TLS | いいえ | 1 にすると証明書の検証を無効にします。開発環境でのみ使用してください。本番環境では絶対に使用しないでください。 |
WARDENPOINT_TIMEOUT_MS | いいえ | リクエストごとのタイムアウトです。デフォルトは 30000 です。 |
WARDENPOINT_TOOLS | いいえ | 提供するツールを絞り込む、カンマ区切りのパターンです。例:recipients,groups または v1_schedules_*。未設定の場合はすべてのツールが対象です。 |
WARDENPOINT_OPENAPI_PATH | いいえ | インストール環境の代わりに、ローカルファイルから定義を読み込みます。まだデプロイされていない定義を使った開発向けです。 |
トークンは起動のたびに環境変数から読み込まれ、このパッケージによってどこかに書き込まれることはありません。
キーに許可できる操作
キーの発行時に権限を選択します。不足している権限は 403 エラーに示されます。
config.read— 設定全体を読み取ります。最初に試すのに適しています。エージェントは、他の人が構築したアカウントについて説明できますが、変更は加えません。config.write— 作成、更新、削除を行います。notifications.send/notifications.read— アラートを送信し、確認します。
シークレットを読み取れる権限はありません。 権限の選択肢にそのような権限がないため、誤って付与されることもありません。API が返すのは、認証情報が設定されているか、検証に成功したかどうかだけです。値そのものは返しません。
ツール一覧にかかるコスト
すべてのツール定義は、ユーザーが何かを話す前にモデルへ送信されます。そのため、会話で WardenPoint に触れることがなくてもコストが発生します。89 個のツールすべてでは約 64k トークン、コンテキストウィンドウが 200k の場合、その 3 分の 1 に相当します。
このコストが見えないままにならないよう、サーバーは起動時に数値を表示します。
wardenpoint-mcp-server: 89 tools (~63k tokens of context; narrow it with WARDENPOINT_TOOLS) from …
製品の一部しか利用しないセッションの場合は、その旨を指定してください。
"env": { "WARDENPOINT_TOOLS": "recipients,groups,schedules" }
これにより、同じ実行で使われるツールは数個、トークンは数千個に抑えられます。パターンはツール名(v1_recipients_store)に一致し、* も使用できます。設定しない場合はすべてのツールが使われます。これは安全なデフォルトです。ツールがひそかに表示されなくなると、製品の機能が不足しているように見えるためです。
実行方法
npx -y @wardenpoint/mcp-server --list-tools # every tool, with its arguments
npx -y @wardenpoint/mcp-server --spec-report # gaps in the description itself
どちらも説明を取得するために WARDENPOINT_BASE_URL に接続します。トークンはどちらにも必要ありません。引数なしで実行すると、プロセスは stdio 経由で MCP を使って通信します。手動で起動するのではなく、クライアントによる起動を想定しています。
2 種類の認証情報と、それらを使い分ける理由
- API キー(
WARDENPOINT_API_TOKEN)— 接続するユーザーを識別します。すべての設定ツールで使用します。 - インテグレーションシークレット — 特定のアラートソースの Webhook が本物であることを証明します。2 つのツールで引数として受け取ります。環境変数から読み込まれることも、ここに保存されることもありません。
このサーバーが意図的にできないこと
アカウントの設定には、人が画面上で行う必要のある手順が 2 つあります。どちらも意図的にそのままにしています。
- Telegram の QR コードをスキャンすること。
- プロバイダーのシークレットを入力すること。
どちらの場合も、エージェントはインストールに一度限りのリンクを発行するよう依頼し、そのリンクをユーザーに提示して、結果をポーリングします。ユーザーは自身のログインが必要なダッシュボードでリンクを開き、自分で値を入力します。エージェントに会話経由でシークレットを伝えるよう頼んでも、エージェントは拒否します。それを避けるために、このリンクが用意されています。
エラーはそのままエージェントに届きます
API は拒否の理由を丁寧に説明します。不足している権限、検証に失敗したフィールド、送信が何もキューに追加しなかった理由などです。このサーバーは成功時も失敗時も、レスポンス本文をすべてそのまま渡します。エージェントがそのテキストだけを頼りに問題を修正するためです。
ライセンス
MIT。詳しくは LICENSE をご覧ください。
問題の報告やコントリビューションはこちら:https://github.com/WardenPoint/wardenpoint-mcp.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。