openITCOCKPIT について
openITCOCKPITは、LLMクライアントからopenITCOCKPITインスタンスを確認・管理する監視運用者向けMCPサーバーです。読み取り専用ツールに加え、既定では無効の書き込みツールを備え、用途別のツールセットで利用範囲を絞れます。
主な機能
- 01ホストとサービスの状態や障害を確認
- 02ダウンタイム、確認状況、シフト概要を確認
- 03通知の理由を説明しインシデントを調査
- 04設定時のみ書き込みツールを有効化
- 05運用向けツールセットで利用可能なツールを制限
活用シーン
- 01現在の監視障害の原因を特定
- 02インシデントが対応中か確認
- 03メンテナンス用ダウンタイムを設定
- 04エージェントを指定の監視業務に限定
MCP 対応
MCPサーバーは、openITCOCKPITの監視・設定ツールをMCPクライアントに提供します。書き込みツールは有効化するまで登録されず、ツールセットで利用範囲を制限できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm -e OITC_APIKEY -e OITC_BASEURL -e OITC_TRANSPORT -e OITC_ENABLE_WRITE_TOOLS -e OITC_VERIFY_TLS docker.io/openitcockpit/mcp-server:0.5.0OITC_APIKEYシークレットAPI key of a dedicated, least-privilege openITCOCKPIT user. This server presents it to openITCOCKPIT; it is never handed to a client.OITC_BASEURLBase URL of the openITCOCKPIT instance, e.g. https://openitcockpit.example.org - without a path.OITC_TRANSPORTTransport mode. The image defaults to 'http', which additionally requires MCP_AUTH_TOKEN and a published port; a client that runs this container itself wants 'stdio'.OITC_ENABLE_WRITE_TOOLSRegister the 15 tools that change the monitoring configuration. Off by default: they are not even registered unless this is 'true'.OITC_VERIFY_TLSVerify the openITCOCKPIT TLS certificate. On by default; for a self-signed instance set OITC_CA_BUNDLE rather than turning this off.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
openITCOCKPIT MCP サーバー
openITCOCKPIT の監視インスタンスを LLM クライアントから利用できるようにする MCP サーバーです。何が故障し、その原因は何か、誰がすでに対応しているか、何が変わったかを確認できます。また、デフォルトでは無効ですが、対象に変更を加えるツールも利用できます。
注意
ご自身の責任でご利用ください。 このサーバーを使うと、言語モデルが監視設定を読み取ることができ、書き込みツールを有効にした場合は変更することもできます。モデルが依頼を誤解したり、誤った呼び出しを選んだりする可能性があります。提案を承認する前に内容を確認し、まずは読み取り専用でご利用ください。本ソフトウェアは「現状のまま」提供され、いかなる種類の保証も責任も負いません。詳しくはMIT Licenseをご覧ください。
- openITCOCKPIT 5.6 以降が必要です(互換性)。
- 42 個のツールがあります。読み取り専用が 20 個、変更を加えるツールが 22 個です。
- 書き込みツールはデフォルトで無効であり、有効にするまで登録されません。
- ID ではなく名前を使用します。 ツールにはホスト名、テンプレート名、コンテナーパスを指定し、サーバーがそれらを解決します。
- スコープを検証してから書き込みます。 送信前に参照先が対象コンテナー内にあることを検証します。openITCOCKPIT の API 自体にはこの検証機能がありません。
クイックスタート
cp .env.example .env # fill in the two secrets, see Configuration
docker compose up --build
.env のベアラートークンを使い、クライアントの接続先を http://localhost:8000/mcp に設定します。Compose は公開ポートの設定にも同じファイルを読み込むため、そこで OITC_PORT を設定すれば、両方のポートを同時に変更できます。
まず設定する必要があるのは、3 つの項目です。MCP_AUTH_TOKEN(クライアントがこのサーバーに提示する値)、OITC_BASEURL と OITC_APIKEY(このサーバーが openITCOCKPIT に提示する値)です。それ以外はすべてデフォルト値が設定されています。
設定項目の一覧。
どのような質問ができますか
| 質問 | 回答するツール |
|---|---|
| 「今、何が故障していますか?」 | get_problem_overview - 原因とその影響を分けて表示します |
| 「db-01 がクリティカルなのはなぜですか?」 | get_service_health、investigate_problem |
| 「すでに誰かが対応していますか?」 | 同じツールです。ダウンタイムと確認応答も状態とともに表示されます |
| 「夜勤の間に何がありましたか?」 | get_shift_summary |
| 「web01 のアラートが届かなかったのはなぜですか?」 | explain_notification |
| 「月曜日まで web01 を停止してください」 | schedule_downtime(書き込み) |
| 「web-05 で使用できるテンプレートはどれですか?」 | get_allowed_elements_for_container |
各ツールの名前、パラメーター、コンテキスト消費量については、コードから生成された**docs/tools.mdをご覧ください。結果の形式と書き込み時の動作については、docs/using-the-tools.md**をご覧ください。
インスタンスの制限
監視インスタンスの運用にはさまざまな作業があるため、簡単に使えるほど機能を絞ると、実用性が損なわれます。そこで、このサーバーでは作業に必要なツールをすべて備え、ツールセットによって各エージェントに担当分を割り当てます。各セットには、その作業に必要なツールが一通り揃い、およそ 10 個のツールが含まれ、それ以外の機能はありません。一度も登録されていないツールは、呼び出すこと自体ができません。
OITC_TOOLSETS=health # find things and see how they are doing
OITC_TOOLSETS=operations # acknowledge, maintenance windows, check now
OITC_TOOLSETS=lifecycle # take things out of the monitoring, or delete them
同梱されているセットは health、operations、lifecycle、patch、reporting、catalog、onboarding、config、provisioning です。セットは差し替え可能なファイルで定義されています。docs/toolsets.mdをご覧ください。
モデルの評価
oitc-mcp-eval は、インスタンスに関する運用担当者の質問を提示し、モデルが作り話ではなくツールの情報に基づいて回答するかを確認します。すべての実行結果を SQLite に保存するため、モデルや変更を比較できます。
oitc-mcp-eval --model your-model --samples 3 # against the configured instance
oitc-mcp-eval --compare # newest run of every model
./scripts/eval-throwaway.sh --model your-model # instance created and removed for you
docs/evals.mdをご覧ください。
ドキュメント
| 設定 | 各設定項目と、それぞれに対応するシークレット |
| クライアントの接続 | HTTP と stdio の接続方法と、動作するサンプル |
| インストール | Docker、ソースからのインストール、MCP Registry |
| ツール | コードから生成されたすべてのツール |
| ツールの使用 | 結果の形式、コンテナーのスコープ、読み取り・変更・書き込み |
| ツールセット | インスタンスの制限方法と、独自のセットの作成 |
| スキルとプロンプト | ツールとともに提供される資料 |
| モデルの評価 | 評価、そのケース、結果の読み方 |
| セキュリティ | このサーバーがアクセスできる対象と、拒否する操作 |
| アーキテクチャ | 各要素の構成 |
| ツールの設計 | 新しいツールが従うルール |
| openITCOCKPIT API に関する注意事項 | このサーバーが対処する動作 |
| バージョン管理 | バージョン番号と互換性 |
| 開発 | チェック、テスト、チェックアウトからの実行 |
セキュリティの概要
サーバーは openITCOCKPIT の認証情報を 1 つ保持し、クライアントに送信することはありません。 クライアントはそれぞれのトークンで認証します。委任モードでは、各リクエストに 代わりに有効期間の短いユーザートークンが含まれ、サーバーはそのユーザーの権限で ユーザーとして動作します。書き込みツールは、有効にするまで登録されません。 openITCOCKPIT ユーザーに付与する権限など、詳しくは docs/security.md をご覧ください。
ライセンス
MIT.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。