mcpField
D
Dockerfile Audit

Dockerfile Audit

リモート
github.com/UnbearableDevセキュリティ021 週間前に更新
リポジトリ

Dockerfile Audit について

Dockerfile Auditは、Dockerfileのセキュリティと品質を静的に検査するMCPサーバーです。開発者やエージェントに、重大度と行番号を示した検出結果、修正案、Dockerfileの修正例を返します。

主な機能

  1. 01Dockerfile本文またはHTTPS URLを監査
  2. 02ベースイメージと命令をチェック
  3. 03セキュリティと秘密情報の扱いを検査
  4. 04ビルド効率の設定を確認
  5. 05重大度による検出結果の絞り込み
  6. 06行番号・修正案・コード例を提示

活用シーン

  1. 01イメージのビルド前にDockerfileを確認
  2. 02root実行やハードコードされた秘密情報を発見
  3. 03古いイメージタグや命令の問題を特定

MCP 対応

MCPクライアントに全体監査とカテゴリ別チェックのツールを公開し、Dockerfile本文またはHTTPS URLを受け付けます。結果には重大度、行番号、修正案、Dockerfileの修正例が含まれます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://unbearable-dev--dockerfile-audit.apify.actor/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://unbearable-dev--dockerfile-audit.apify.actor/mcp認証が必要

ツール

詳細

Dockerfile のセキュリティと品質の監査

MCP サーバーとして、Hadolint レベルの Dockerfile 監査を行います。5 つのカテゴリにわたる 18 件以上のチェックを実施し、すべての検出結果に重大度、行番号、修正方法の説明、コピーして貼り付けられる Dockerfile のスニペットを付けて返します。

Unbearable Labs が開発。 イベントごとの従量課金制です。ツールが実際に呼び出された場合のみ課金されます。


利用可能な場所

  • Apify Actor Store — メイン、従量課金制(PPE)
  • MCPize — 申請待ち
  • MCP.so — 申請待ち
  • PulseMCP — 申請待ち
  • Smithery — 申請待ち
  • Glama — 申請待ち

ニュースレター: Unbearable TechTips Weekly · すべての Actor: github.com/UnbearableDev

できること

MCP 対応クライアント(Claude Desktop、Cursor、n8n、Make、Zapier、カスタムエージェント)からこのサーバーに接続し、Dockerfile を渡すと、構造化されたレポートが返されます。

  • 重大度 — 高/中/低/情報
  • 行番号 — ファイル内の正確な位置
  • 説明 — 問題の内容と、その問題が重要な理由
  • 修正方法 — 対処方法
  • 修正スニペット — そのまま貼り付けられる Dockerfile の構文

ツール

ツール用途
audit_dockerfile(dockerfile_content? | dockerfile_url?, min_severity='low')すべてのチェックを実行
check_base_image(...)FROM/タグ/ダイジェスト/レジストリのみをチェック
check_instructions(...)CMD の形式、ADD と COPY の使い分け、MAINTAINER などをチェック
check_security(...)USER、sudo、chmod 777、curl|bash、ハードコードされたシークレット、HEALTHCHECK をチェック
check_efficiency(...)apt キャッシュの管理、pip のキャッシュをチェック
check_secrets(...)シークレットパターンに一致する名前の ARG をチェック
list_checks(category?)すべてのチェック項目を参照

dockerfile_content(ファイルを貼り付ける)または dockerfile_url(HTTPS URL。例:GitHub raw)のいずれか一方のみを指定してください。

チェック項目(v1:5 つのカテゴリにわたる 18 件のチェック)

IDカテゴリ重大度タイトル
DFA-001base_image中イメージに :latest タグが使われているか、タグが指定されていません
DFA-002base_image情報FROM に SHA256 ダイジェストが固定されていません
DFA-003base_image中信頼できないレジストリ
DFA-010instructions低CMD がシェル形式です
DFA-011instructions低ENTRYPOINT がシェル形式です
DFA-012instructions情報MAINTAINER 命令は非推奨です
DFA-013instructions中COPY で十分な箇所で ADD が使われています
DFA-020security中USER ディレクティブがありません(root として実行されます)
DFA-021security高USER root が明示的に設定されています
DFA-022security高RUN 内で sudo が呼び出されています
DFA-023security高RUN 内で chmod 777 が使われています
DFA-024security中RUN 内で curl|bash パターンが使われています
DFA-025security高ENV にシークレットがハードコードされています
DFA-027security低HEALTHCHECK がありません
DFA-030efficiency低apt-get update の後に install がありません
DFA-031efficiency低apt-get install に --no-install-recommends が指定されていません
DFA-032efficiency低pip install に --no-cache-dir が指定されていません
DFA-040secrets中シークレットパターンに一致する名前の ARG

最新の正式なチェック項目一覧を取得するには、list_checks を使ってください。

料金

イベントUSD
監査/check_* ツールの呼び出し$0.02
list_checks による一覧取得$0.005

応答例(一部抜粋)

{
  "summary": {
    "total_findings": 6,
    "by_severity": {"high": 2, "medium": 2, "low": 2, "info": 0}
  },
  "findings": [
    {
      "id": "DFA-021",
      "category": "security",
      "severity": "high",
      "instruction": "USER",
      "line_number": 3,
      "title": "USER root set explicitly",
      "description": "...",
      "remediation": "Switch to a non-root UID after any root-required RUN steps.",
      "fix_dockerfile_snippet": "USER 10001:10001",
      "references": ["CIS-Docker-4.1"]
    }
  ]
}

Claude Desktop から接続する

{
  "mcpServers": {
    "dockerfile-audit": {
      "transport": "streamable-http",
      "url": "https://YOUR-ACTOR-URL.apify.actor/mcp"
    }
  }
}

制限

  • Dockerfile のサイズ: 監査ごとに上限 200 KB
  • URL の取得: タイムアウト 5 秒、リダイレクトは最大 3 回、HTTPS のみ
  • セッションのタイムアウト: 5 分間操作がない場合

現時点で対象外の項目

  • 稼働中のイメージの脆弱性スキャン(その用途には Trivy/Grype をお使いください)
  • マルチステージビルドの最適化分析(DFA-004/DFA-005 — ロードマップに記載)
  • Compose ファイルの監査(別の MCP: docker-compose-audit)

Unbearable Labs の関連 MCP

ソース/お問い合わせ

問題やアイデアは、[email protected] または GitHub 組織 UnbearableDev までお寄せください。

コメント

MCP は初めてですか?

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

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