mcpField
R
RAD Security MCP Server

RAD Security MCP Server

ローカル
rad.security開発ツール62 日前に更新

RAD Security MCP Server について

RAD Security MCP Serverは、MCPクライアントをRAD SecurityのKubernetesおよびクラウドセキュリティデータに接続します。検出事項やワークロード、脆弱性、監査を調査するツールを提供し、ツールセットや書き込み権限を制限できます。

主な機能

  1. 01クラスターとコンテナの確認
  2. 02セキュリティ検出事項の確認と更新
  3. 03実行プロセスとベースラインの分析
  4. 04イメージ、脆弱性、Kubernetesリソースの照会
  5. 05自動化、ダッシュボード、連携の管理
  6. 06ツールセットの絞り込みと書き込み制限

活用シーン

  1. 01Kubernetesのセキュリティ検出事項の調査
  2. 02脆弱性のあるイメージとSBOMの確認
  3. 03コンテナ内で動作中のプロセスの確認
  4. 04選択したツールのみをエージェントに読み取り専用で提供

MCP 対応

ホスト型Streamable HTTPまたはセルフホスト型サーバーを通じて、RAD Securityのデータと操作をMCPツールとして提供します。クライアント側で利用するツールセットを限定し、読み取り専用にできます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"rad-security": {
"command": "npx",
"args": [
"-y",
"@rad-security/mcp-server"
],
"env": {
"RAD_SECURITY_ACCESS_KEY_ID": "<RAD_SECURITY_ACCESS_KEY_ID>",
"RAD_SECURITY_SECRET_KEY": "<RAD_SECURITY_SECRET_KEY>",
"RAD_SECURITY_ACCOUNT_ID": "<RAD_SECURITY_ACCOUNT_ID>"
}
}
}
}
起動コマンドnpx -y @rad-security/mcp-server
設定が必要な環境変数
RAD_SECURITY_ACCESS_KEY_IDシークレット
RAD_SECURITY_SECRET_KEYシークレット
RAD_SECURITY_ACCOUNT_ID

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@rad-security/mcp-server

ツール

52

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
filtersstringいいえフィルター文字列(例:'image_name:nginx'、'image_digest:sha256:...'、'owner_namespace:namespace'、'cluster_id:cluster_id')。複数のフィルターはカンマで結合できます。
offsetnumberいいえページネーションのオフセット。デフォルト:0
limitnumberいいえ返す結果の最大数。デフォルト:20
qstringいいえフリーテキスト検索クエリ

詳細

RAD Security MCP サーバー

npm version

RAD Security 向けの Model Context Protocol(MCP)サーバーです。Kubernetes とクラウド環境に、AI を活用したセキュリティに関する分析情報を提供します。

RAD Security MCP サーバー

接続(ホスト型 — 推奨)

RAD Security が MCP サーバーを実行するため、ほとんどのユーザーはインストールやホスティングを行う必要がありません。MCP クライアントからホスト型エンドポイントに接続し、RAD Security の認証情報で認証してください。

  • エンドポイント: https://api.rad.security/mcp/ — 末尾のスラッシュに注意してください。

  • トランスポート: Streamable HTTP。

  • 認証: Authorization ヘッダーで認証情報を送信します。

    Authorization: Bearer <access_key_id>:<secret_key>:<account_id>
    

    <access_key_id> と <secret_key> は RAD Security API アクセスキーです(RAD Security コンソールで作成してください)。<account_id> はアカウント ID です。サーバーはすべてのリクエストを RAD Security API に対して認証します。サーバー側に認証情報は保存されません。

有効期間の短い形式 Bearer ory_st_<session_token>:<account_id> も使用できますが、セッショントークンには有効期限があります。長期利用(Slack / Claude Tag など)にはアクセスキーをお勧めします。

Claude Code
claude mcp add --transport http rad-security https://api.rad.security/mcp/ \
  --header "Authorization: Bearer <access_key_id>:<secret_key>:<account_id>"
OpenAI Codex CLI

~/.codex/config.toml:

[mcp_servers.rad-security]
url = "https://api.rad.security/mcp/"
http_headers = { "Authorization" = "Bearer <access_key_id>:<secret_key>:<account_id>" }

または CLI を使用し、シークレットを環境変数に保存します(export RAD_MCP_TOKEN=<access_key_id>:<secret_key>:<account_id>)。

codex mcp add rad-security --url https://api.rad.security/mcp/ --bearer-token-env-var RAD_MCP_TOKEN
Cursor

.cursor/mcp.json:

{
  "mcpServers": {
    "rad-security": {
      "type": "http",
      "url": "https://api.rad.security/mcp/",
      "headers": {
        "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>"
      }
    }
  }
}
VS Code(GitHub Copilot)

.vscode/mcp.json — ラッパーキーは mcpServers ではなく servers です。

{
  "servers": {
    "rad-security": {
      "type": "http",
      "url": "https://api.rad.security/mcp/",
      "headers": {
        "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>"
      }
    }
  }
}
Gemini CLI

~/.gemini/settings.json — URL フィールドは url ではなく httpUrl です。

{
  "mcpServers": {
    "rad-security": {
      "httpUrl": "https://api.rad.security/mcp/",
      "headers": {
        "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>"
      }
    }
  }
}
Cline

cline_mcp_settings.json — type は正確に streamableHttp(キャメルケース)である必要があります。

{
  "mcpServers": {
    "rad-security": {
      "type": "streamableHttp",
      "url": "https://api.rad.security/mcp/",
      "headers": {
        "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>"
      }
    }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json — URL フィールドは serverUrl です。

{
  "mcpServers": {
    "rad-security": {
      "serverUrl": "https://api.rad.security/mcp/",
      "headers": {
        "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>"
      }
    }
  }
}
その他のクライアント

ほとんどの MCP クライアントは、URL と Authorization ヘッダーを指定してリモートの Streamable HTTP サーバーに接続できます。フィールド名だけが異なります。どの場合も、URL の末尾のスラッシュを残してください。

クライアント設定場所URL フィールドトランスポート識別子ヘッダーフィールド
Claude Codeclaude mcp add位置引数--transport http--header
OpenAI Codex CLI~/.codex/config.tomlurl自動判定http_headers / bearer_token_env_var
Cursor.cursor/mcp.jsonurltype: "http"headers
VS Code.vscode/mcp.json (servers)urltype: "http"headers
Gemini CLI~/.gemini/settings.jsonhttpUrl自動判定headers
Clinecline_mcp_settings.jsonurltype: "streamableHttp"headers
Windsurf~/.codeium/windsurf/mcp_config.jsonserverUrl自動判定headers
Claude.ai / Claude Desktop / Claude Tag(Slack)

これらの環境では、リモート MCP サーバーをコネクタとして追加します。コネクタは、リクエストヘッダーを直接指定するのではなく、独自の認証情報設定を使用します。カスタムコネクタとして https://api.rad.security/mcp/ を追加し、コネクタの設定からベアラー認証情報を指定してください。

  • Claude Tag(Slack): .mcp.json でエンドポイントを指定したサーバーをプラグインとして追加し、Access バンドルの Credentials タブでベアラー認証情報を追加します。Claude Tag — カスタム MCP サーバーへの接続を参照してください。
  • Claude.ai / Desktop: Settings → Connectors で追加してください。カスタムコネクタを参照してください。
テスト(MCP Inspector または curl)
npx @modelcontextprotocol/inspector
# Transport:      Streamable HTTP
# URL:            https://api.rad.security/mcp/   (trailing slash)
# Custom headers: { "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>" }
curl -H "authorization: Bearer <access_key_id>:<secret_key>:<account_id>" \
  -H "content-type: application/json" \
  -H "accept: application/json, text/event-stream" \
  -X POST https://api.rad.security/mcp/ \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
エージェントに表示するツールのスコープ設定

デフォルトでは、接続ですべてのツールキットが利用できます。エージェントにより小さなセットを割り当てるには(コンテキストやトークンのオーバーヘッドを抑え、最小権限にするため)、Authorization とともに、その接続にスコープ設定用のヘッダーを追加します。指定したサブセットが強制されます。スコープ外のツールは tools/list に表示されず、呼び出された場合も拒否されます。

ヘッダー効果
X-Rad-Toolkits: findings, images指定したツールキットのみ
X-Rad-Exclude-Toolkits: workflows指定したものを除くすべてのツールキット
X-Rad-Readonly: true読み取り専用ツールのみ(書き込みツールを除外)

ツールキット:containers、clusters、audit、images、kubeobject、runtime、findings、inbox、workflows、knowledge_base、radql、dashboards、integrations。デフォルトではすべて有効です。上記のヘッダーで範囲を絞り、すべての書き込みツールを除外する場合は X-Rad-Readonly を使用してください。

例 — 読み取り専用の findings/images エージェント(ヘッダーに対応する任意のクライアント。ここでは Cursor を使用):

{
  "mcpServers": {
    "rad-security-findings": {
      "type": "http",
      "url": "https://api.rad.security/mcp/",
      "headers": {
        "Authorization": "Bearer <access_key_id>:<secret_key>:<account_id>",
        "X-Rad-Toolkits": "findings, images",
        "X-Rad-Readonly": "true"
      }
    }
  }
}

Claude Code では、追加の --header を渡します。

claude mcp add --transport http rad-security https://api.rad.security/mcp/ \
  --header "Authorization: Bearer <access_key_id>:<secret_key>:<account_id>" \
  --header "X-Rad-Toolkits: findings, images"

機能

すべてのツールを使用するには、RAD Security のアカウントと認証が必要です。ホスト型エンドポイントでは、デフォルトですべてのツールキットが公開されます。X-Rad-Toolkits / X-Rad-Exclude-Toolkits でクライアントの範囲を絞るか、X-Rad-Readonly: true ですべての書き込みツールを除外してください。

  • アカウントインベントリ

    • クラスターとその詳細を一覧表示
  • コンテナインベントリ

    • コンテナとその詳細を一覧表示
  • セキュリティ検出結果

    • セキュリティ検出結果を一覧表示して分析
    • セキュリティ検出結果のステータスを更新
  • ランタイムセキュリティ

    • 実行中のコンテナのプロセスツリーを取得
    • 実行中のコンテナのランタイムベースラインを取得
    • 実行中のコンテナのプロセス動作を分析
  • 監査

    • ポッドにシェル接続したユーザーを一覧表示
  • イメージと脆弱性

    • SBOM を取得
    • イメージとその脆弱性を一覧表示
    • 脆弱性が最も多いイメージを取得
    • CVE を無視/無視解除し、有効な CVE の処理を一覧表示
  • Kubernetes オブジェクト

    • 特定の Kubernetes リソースの詳細を取得
    • Kubernetes リソースを一覧表示
  • インボックス

    • インボックス項目とその詳細を一覧表示
    • インボックス項目を誤検知としてマーク
  • 自動化(workflows)

    • 自動化、実行、スケジュールを一覧表示
    • 自動化と実行の詳細を取得
    • 自動化を実行
    • 自動化を作成・更新し、cron スケジュールを追加

    「自動化」はユーザーに表示される製品名です。「workflow」は API とツール名で使用される基盤の Windmill オブジェクトです。 これらは同じものです。

  • ナレッジベース

    • ナレッジベースを検索
    • コレクションとドキュメントを一覧表示
    • ドキュメントに対して構造化クエリを実行
  • ダッシュボード

    • ダッシュボードを一覧表示し、詳細を取得
    • ダッシュボードとウィジェットのテンプレートを一覧表示・取得
    • ダッシュボードを作成し、その場で更新(省略したフィールドは変更されないため、小さな編集でダッシュボード全体を再送信する必要はありません)
  • インテグレーション

    • 外部インテグレーションを一覧表示
  • RadQL(高度なクエリ)

    • クエリに利用できるデータ型(containers、findings、kubernetes_resources など)を一覧表示
    • 特定のデータ型のスキーマ/メタデータを取得
    • フィルターフィールドで指定可能な値を一覧表示
    • フィルタリング、検索、集計を使用して RadQL クエリを実行
    • 構造化条件からプログラムでクエリを構築
    • 複数のクエリを並列実行

セルフホスト

たとえば、エアギャップ環境やデータレジデンシー要件がある場合、あるいはホスト型ゲートウェイを経由したくない場合など、サーバーを自分で実行したい場合は、npm パッケージとコンテナイメージとして公開されています。

前提条件
  • Node.js 20.x 以降
認証情報

環境変数を使用して RAD Security の認証情報を設定します。

RAD_SECURITY_ACCESS_KEY_ID="your_access_key"
RAD_SECURITY_SECRET_KEY="your_secret_key"
RAD_SECURITY_ACCOUNT_ID="your_account_id"

# Optional: fetched automatically from the account if not set
RAD_SECURITY_TENANT_ID="your_tenant_id"
npx(stdio)— 例:Claude Desktop
{
  "mcpServers": {
    "rad-security": {
      "command": "npx",
      "args": ["-y", "@rad-security/mcp-server"],
      "env": {
        "RAD_SECURITY_ACCESS_KEY_ID": "<your-access-key-id>",
        "RAD_SECURITY_SECRET_KEY": "<your-secret-key>",
        "RAD_SECURITY_ACCOUNT_ID": "<your-account-id>"
      }
    }
  }
}
Docker(Streamable HTTP)
docker build -t rad-security/mcp-server .
docker run \
  -e TRANSPORT_TYPE=streamable \
  -e RAD_SECURITY_ACCESS_KEY_ID=your_access_key \
  -e RAD_SECURITY_SECRET_KEY=your_secret_key \
  -e RAD_SECURITY_ACCOUNT_ID=your_account_id \
  -p 3000:3000 \
  rad-security/mcp-server
ツールキットのフィルタリング

セルフホスト可能なサーバーが公開するツールキットを制御します。

  • INCLUDE_TOOLKITS:含めるツールキットのカンマ区切りリストです(これらのみが有効になります)。
  • EXCLUDE_TOOLKITS:除外するツールキットのカンマ区切りリストです(それ以外はすべて有効になります)。INCLUDE_TOOLKITS が設定されている場合は無視されます。

利用可能なツールキット:containers、clusters、audit、images、kubeobject、runtime、findings、inbox、workflows、knowledge_base、radql、dashboards、integrations。デフォルトではすべて有効です。

# Only the workflows toolkit
INCLUDE_TOOLKITS="workflows"

# Everything except runtime
EXCLUDE_TOOLKITS="runtime"
マルチテナント(リクエストごとの認証)

MCP_AUTH_MODE は、ストリーミング可能な HTTP デプロイメントで受信リクエストを認証する方法を制御します。ホスト型エンドポイントでは、この設定が使用されます。

  • MCP_AUTH_MODE=env(デフォルト):すべてのセッションで RAD_SECURITY_* 環境変数の認証情報を使用します。シングルテナントであり、HTTP 層では認証されないため、信頼できないネットワークからアクセス可能にしてはいけません。
  • MCP_AUTH_MODE=header:すべてのリクエストで、Authorization ヘッダーに独自の認証情報(上記の Bearer <access_key_id>:<secret_key>:<account_id> 形式)を含める必要があります。ヘッダーがない場合や形式が不正な場合は、401 で拒否されます。TRANSPORT_TYPE=streamable の場合にのみサポートされます。RAD_SECURITY_API_URL は呼び出し元ではなく、サーバー設定から取得されます。
docker run \
  -e TRANSPORT_TYPE=streamable \
  -e MCP_AUTH_MODE=header \
  -e RAD_SECURITY_API_URL=https://api.rad.security \
  -p 3000:3000 \
  rad-security/mcp-server

SSE トランスポート(TRANSPORT_TYPE=sse)は非推奨であり、Streamable HTTP が推奨されています。また、環境変数の認証情報のみを使用します。

開発

# Install dependencies
npm install

# Run type checking
npm run type-check

# Run linter
npm run lint

# Build
npm run build

ライセンス

MIT ライセンスの詳細については、LICENSE ファイルを参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。