rundeck-mcp-server について
rundeck-mcp-serverは、MCP対応のアシスタントやクライアントをRundeckに接続し、ジョブやインフラを管理します。プロジェクトとジョブ、実行監視、ノード、シークレット、Webhook、アクセス制御ポリシー、システム状態を操作できます。
主な機能
- 01プロジェクトとジョブのCRUD・設定
- 02ジョブの実行、再試行、スケジュール
- 03実行の監視とログ確認
- 04ノードの参照とキー保存の管理
- 05Webhook、ACLポリシー、システム状態の管理
活用シーン
- 01デプロイジョブの実行や再試行
- 02実行中ジョブの確認とログ閲覧
- 03フィルター式によるノード検索
- 04Rundeckの稼働状態とアクセス制御の確認
MCP 対応
Rundeckの操作をMCP対応クライアント向けのツールとして公開します。設定したRundeckのURLとAPIトークンを使ってインスタンスに接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y rundeck-mcp-serverRUNDECK_URLRundeck server URL (e.g., http://localhost:4440)RUNDECK_API_TOKENシークレットAPI token for authenticationRUNDECK_API_VERSIONRundeck API version (default: 41)RUNDECK_TIMEOUTRequest timeout in milliseconds (default: 30000)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
50掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
rundeck-mcp-server
Rundeck 向けの、最も包括的な MCP(Model Context Protocol) サーバーです。Claude、Cursor、または MCP 互換のあらゆるクライアントから、ジョブ、実行、プロジェクト、ノードなどを管理できます。
7 つのドメインにわたる 50 個のツールを提供します。完全な CRUD 操作、実行の監視、システム管理に対応しています。
Features
- プロジェクト — プロジェクトの一覧表示、作成、削除、設定
- ジョブ — ジョブの一覧表示、作成、実行、再試行、インポート/エクスポート、実行とスケジュールの有効化/無効化
- 実行 — 実行中のジョブの監視、ログの取得、実行の中止、履歴の照会
- ノード — フィルター式を使ったノードインベントリの参照
- システム — サーバー情報、ヘルスチェック、メトリクス、実行モードの制御
- キー保管 — シークレット、パスワード、SSH キーの管理
- Webhook — Webhook トリガーの作成と管理
- ACL ポリシー — システムアクセス制御ポリシーの完全な CRUD 操作
Quick Start
前提条件
- Node.js 18+
- API アクセスが有効な Rundeck インスタンス
- Rundeck API トークン(生成方法)
Claude Code での使用
MCP 設定に追加します。
{
"mcpServers": {
"rundeck": {
"command": "npx",
"args": ["-y", "rundeck-mcp-server"],
"env": {
"RUNDECK_URL": "http://your-rundeck-server:4440",
"RUNDECK_API_TOKEN": "your-api-token"
}
}
}
}
Claude Desktop での使用
claude_desktop_config.json に追加します。
{
"mcpServers": {
"rundeck": {
"command": "npx",
"args": ["-y", "rundeck-mcp-server"],
"env": {
"RUNDECK_URL": "http://your-rundeck-server:4440",
"RUNDECK_API_TOKEN": "your-api-token"
}
}
}
}
Cursor での使用
Cursor の MCP 設定(.cursor/mcp.json)に追加します。
{
"mcpServers": {
"rundeck": {
"command": "npx",
"args": ["-y", "rundeck-mcp-server"],
"env": {
"RUNDECK_URL": "http://your-rundeck-server:4440",
"RUNDECK_API_TOKEN": "your-api-token"
}
}
}
}
Configuration
| 環境変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
RUNDECK_URL | はい | — | Rundeck サーバーの URL(例:http://localhost:4440) |
RUNDECK_API_TOKEN | はい | — | 認証用 API トークン |
RUNDECK_API_VERSION | いいえ | 41 | Rundeck API のバージョン |
RUNDECK_TIMEOUT | いいえ | 30000 | リクエストのタイムアウト(ミリ秒) |
Available Tools
プロジェクト(6 個のツール)
| ツール | 説明 |
|---|---|
rundeck_list_projects | すべてのプロジェクトを一覧表示 |
rundeck_get_project | プロジェクトの詳細と設定を取得 |
rundeck_create_project | 新しいプロジェクトを作成 |
rundeck_delete_project | プロジェクトを完全に削除 |
rundeck_get_project_config | プロジェクト設定のプロパティを取得 |
rundeck_set_project_config | プロジェクト設定を更新 |
ジョブ(14 個のツール)
| ツール | 説明 |
|---|---|
rundeck_list_jobs | グループ、名前、タグで絞り込んでジョブを一覧表示 |
rundeck_get_job | ジョブ定義全体(ステップ、オプション、スケジュール)を取得 |
rundeck_get_job_metadata | ジョブのメタデータ(作成者、日付)を取得 |
rundeck_run_job | オプションとノードフィルターを指定してジョブを実行 |
rundeck_retry_job | 失敗した実行を再試行 |
rundeck_import_jobs | JSON/YAML/XML 形式のジョブをインポート |
rundeck_export_jobs | ジョブ定義をエクスポート |
rundeck_delete_job | ジョブを削除 |
rundeck_bulk_delete_jobs | 複数のジョブを一括削除 |
rundeck_enable_job_execution | ジョブの実行を有効化 |
rundeck_disable_job_execution | ジョブの実行を無効化 |
rundeck_enable_job_schedule | ジョブのスケジュールを有効化 |
rundeck_disable_job_schedule | ジョブのスケジュールを無効化 |
rundeck_get_job_forecast | 今後予定されている実行時刻を取得 |
実行(8 個のツール)
| ツール | 説明 |
|---|---|
rundeck_list_executions | ステータスと時間のフィルターを指定して実行を検索します |
rundeck_list_running_executions | 現在実行中の実行を一覧表示します |
rundeck_get_execution | 実行の詳細(ステータス、所要時間、ノード)を取得します |
rundeck_get_execution_output | 実行ログの出力を取得します |
rundeck_abort_execution | 実行中の実行を中止します |
rundeck_get_job_executions | ジョブの実行履歴を一覧表示します |
rundeck_delete_job_executions | ジョブのすべての実行を削除します |
rundeck_bulk_delete_executions | ID を指定して複数の実行を削除します |
ノード(2 個のツール)
| ツール | 説明 |
|---|---|
rundeck_list_nodes | フィルター式を指定してノードを一覧表示します |
rundeck_get_node | ノードの詳細を取得します |
システム(12 個のツール)
| ツール | 説明 |
|---|---|
rundeck_system_info | サーバーのバージョン、稼働時間、システム統計情報 |
rundeck_get_execution_mode | アクティブ/パッシブの実行モードを確認します |
rundeck_set_execution_mode | システム全体の実行を有効または無効にします |
rundeck_get_metrics | サーバーのパフォーマンス指標 |
rundeck_healthcheck | システムのヘルスチェック |
rundeck_list_users | すべてのユーザーを一覧表示します |
rundeck_get_log_storage | ログストレージのステータス |
rundeck_list_acl_policies | ACL ポリシーファイルを一覧表示します |
rundeck_get_acl_policy | ACL ポリシーの内容を取得します |
rundeck_create_acl_policy | ACL ポリシーを作成します |
rundeck_update_acl_policy | ACL ポリシーを更新します |
rundeck_delete_acl_policy | ACL ポリシーを削除します |
キーストレージ(4 個のツール)
| ツール | 説明 |
|---|---|
rundeck_list_keys | キーストレージのツリーを参照します |
rundeck_get_key_metadata | キーのメタデータを取得します(シークレット値は取得しません) |
rundeck_create_key | パスワード、公開鍵、または秘密鍵を保存します |
rundeck_delete_key | 保存済みのキーを削除します |
Webhook(4 個のツール)
| ツール | 説明 |
|---|---|
rundeck_list_webhooks | プロジェクト内の Webhook を一覧表示します |
rundeck_get_webhook | Webhook の詳細を取得します |
rundeck_create_webhook | Webhook トリガーを作成します |
rundeck_delete_webhook | Webhook を削除します |
使用例
設定が完了すると、自然言語で Rundeck を操作できます。
- 「Rundeck のすべてのプロジェクトを一覧表示して」
- 「production プロジェクトで実行中の実行を見せて」
- 「staging プロジェクトで version=2.1.0 を指定して deploy-app ジョブを実行して」
- 「実行 1234 のログを取得して」
- 「実行 5678 を中止して」
- 「過去 24 時間の失敗した実行をすべて見せて」
- 「production プロジェクトで 'web' タグが付いたノードを一覧表示して」
- 「Rundeck サーバーのヘルス状態を確認して」
- 「cleanup ジョブのスケジュールを無効にして」
開発
# Clone the repository
git clone https://github.com/mariomorenodev/rundeck-mcp-server.git
cd rundeck-mcp-server
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
RUNDECK_URL=http://localhost:4440 RUNDECK_API_TOKEN=your-token npm run dev
コントリビューション
コントリビューションを歓迎します。お気軽に Pull Request を送信してください。
- リポジトリをフォークします
- 機能ブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - Pull Request を作成します
ライセンス
このプロジェクトは Apache License 2.0 のもとでライセンスされています。詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。