mcpField
@
@rog0x/mcp-docker-tools

@rog0x/mcp-docker-tools

ローカル
github.com/rog0xクラウド・インフラ132 週間前に更新

@rog0x/mcp-docker-tools について

@rog0x/mcp-docker-tools は、AI エージェント向けの Docker 管理 MCP サーバーです。コンテナやイメージの確認、Dockerfile と Compose 設定の分析、ログ取得に対応します。

主な機能

  1. 01コンテナの状態とリソース使用量の一覧
  2. 02イメージサイズとレイヤー数の表示
  3. 03Dockerfile の実践項目と安全性の分析
  4. 04Compose のサービス設定の確認
  5. 05条件を指定したコンテナログの取得

活用シーン

  1. 01稼働中または停止中のコンテナ確認
  2. 02イメージの詳細とサイズの確認
  3. 03Dockerfile と Compose 設定の評価
  4. 04コンテナログから該当箇所を検索

MCP 対応

MCP クライアントに、Docker の確認と分析を行う 5 つのツールを公開します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"docker-tools": {
"command": "npx",
"args": [
"-y",
"@rog0x/mcp-docker-tools"
]
}
}
}
起動コマンドnpx -y @rog0x/mcp-docker-tools

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

パッケージ
npm@rog0x/mcp-docker-tools1.0.1

ツール

5

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

パラメーター型必須説明
allbooleanいいえtrue の場合、停止中のコンテナを含むすべてのコンテナを表示します。デフォルトは false(実行中のコンテナのみ)です。
formatenumいいえ出力形式:読みやすいテキストの 'table'、構造化データの 'json'。デフォルトは 'json' です。table | json

詳細

mcp-docker-tools

Model Context Protocolに基づいて構築された、AI エージェント向けの Docker 管理ツールです。

コンテナ、イメージ、Dockerfile、Compose 設定を調査する 5 つのツールを提供します。すべて MCP を通じて LLM から利用できます。

ツール

ツール説明
docker_container_listステータス、ポート、イメージ、作成日時、リソース使用量(CPU、メモリ、ネットワーク/ブロック I/O)とともに、実行中またはすべてのコンテナを一覧表示します
docker_image_listサイズ、タグ、作成日、レイヤー数とともに Docker イメージを一覧表示します
docker_dockerfile_analyzeマルチステージビルド、非 root ユーザー、レイヤーキャッシュ、イメージサイズ、セキュリティなど、ベストプラクティスに照らして Dockerfile を分析します
docker_compose_analyzedocker-compose.yml を分析します。サービス、ポート、ボリューム、ネットワーク、ヘルスチェック、依存関係、改善案を確認できます
docker_container_logstail、キーワードフィルター、時間範囲、タイムスタンプを指定してコンテナログを取得します

前提条件

  • Node.js >= 18
  • Docker CLI がインストールされ、PATH からアクセスできること
  • Docker デーモンが実行中であること(コンテナ/イメージツールを使用する場合)

インストール

git clone <repo-url>
cd mcp-docker-tools
npm install
npm run build

Claude Desktop での使用方法

Claude Desktop の設定(claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "docker-tools": {
      "command": "node",
      "args": ["D:/products/mcp-servers/mcp-docker-tools/dist/index.js"]
    }
  }
}

Claude Code での使用方法

claude mcp add docker-tools node D:/products/mcp-servers/mcp-docker-tools/dist/index.js

または、.claude/settings.json に追加します。

{
  "mcpServers": {
    "docker-tools": {
      "command": "node",
      "args": ["D:/products/mcp-servers/mcp-docker-tools/dist/index.js"]
    }
  }
}

ツールの使用例

実行中のコンテナを一覧表示する
{ "tool": "docker_container_list" }
停止中のコンテナを含め、すべてのコンテナを一覧表示する
{ "tool": "docker_container_list", "args": { "all": true, "format": "table" } }
名前でフィルターしてイメージを一覧表示する
{ "tool": "docker_image_list", "args": { "filter": "node" } }
Dockerfile を分析する
{
  "tool": "docker_dockerfile_analyze",
  "args": {
    "content": "FROM node:20\nCOPY . .\nRUN npm install\nCMD [\"node\", \"index.js\"]"
  }
}
docker-compose.yml を分析する
{
  "tool": "docker_compose_analyze",
  "args": {
    "content": "services:\n  web:\n    image: nginx\n    ports:\n      - 80:80"
  }
}
コンテナログを取得する
{
  "tool": "docker_container_logs",
  "args": { "container": "my-app", "tail": 50, "filter": "error" }
}

ライセンス

MIT

コメント

MCP は初めてですか?

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

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