mcpField
P
Portainer MCP Server

Portainer MCP Server

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

Portainer MCP Server について

Portainer MCP Server は、Portainer API 経由で AI アシスタントが Docker リソースを管理できるサーバーです。コンテナ、イメージ、ネットワーク、サービスの操作に加え、ログ取得やコンテナのリソース制限にも対応します。

主な機能

  1. 01コンテナの作成、起動、削除
  2. 02コンテナとサービスのログ取得
  3. 03イメージの一覧表示と整理
  4. 04Docker ネットワークの確認
  5. 05コンテナのリソース制限を管理

活用シーン

  1. 01コンテナの状態とログを確認
  2. 02コンテナを起動または削除
  3. 03未使用イメージやビルドキャッシュを整理
  4. 04ネットワークとサービスを確認

MCP 対応

MCP サーバーは、Portainer 経由で Docker のコンテナ、イメージ、ネットワーク、サービスを管理するツールを公開します。MCP クライアントはログの取得やコンテナのリソース制限の更新も行えます。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MseeP.ai Security Assessment Badge

Portainer MCP サーバー

Portainer の API を通じて AI アシスタントが Docker コンテナやサービスを操作できるようにする、Portainer 向けの Model Context Protocol(MCP)サーバーの実装です。

機能

  • Docker コンテナの管理(作成、起動、削除、ログの取得)
  • Docker イメージの管理(取得、未使用のイメージの削除、ビルドキャッシュの消去)
  • Docker ネットワーク操作(詳細の確認、取得)
  • Docker サービスの管理(取得、ログの取得)
  • コンテナのリソース制限の管理

プロジェクト構成

portainer-ce-mcp/
├── src/
│   ├── api/
│   │   └── portainer.ts      # Portainer API integration
│   ├── constants/
│   │   └── index.ts          # Tool names and other constants
│   ├── types/
│   │   └── index.ts          # TypeScript type definitions
│   └── main.ts               # Main server implementation
├── package.json              # Project dependencies
├── package-lock.json         # Dependency lock file
├── deno.json                 # Deno configuration
└── README.md                 # Project documentation

前提条件

  • Deno
  • API にアクセスできる Portainer インスタンス
  • Docker がインストールされ、実行中であること

インストール

  1. リポジトリをクローンします。
git https://github.com/BirajMainali/poratiner-ce-mcp-server.git
cd portainer-ce-mcp

設定

サーバーには以下の環境変数が必要です。

  • PORTAINER_URL:Portainer インスタンスの URL
  • PORTAINER_API_KEY:Portainer API キー
  • PORTAINER_ENV_ID:Poratiner Environment Id

API ツール

サーバーは AI アシスタント向けに以下のツールを提供します。

コンテナ管理
  • FETCH_DOCKER_CONTAINERS:すべてのコンテナを一覧表示
  • CREATE_DOCKER_CONTAINER:新しいコンテナを作成
  • START_DOCKER_CONTAINER:コンテナを起動
  • DELETE_DOCKER_CONTAINER:コンテナを削除
  • FETCH_CONTAINER_LOGS:コンテナのログを取得
  • UPDATE_CONTAINER_RESOURCE_LIMITS:コンテナのリソースを更新
  • DELETE_STOPPED_CONTAINERS:停止中のコンテナを整理
イメージ管理
  • FETCH_IMAGES:すべてのイメージを一覧表示
  • DELETE_IMAGE_BUILD_CACHE:ビルドキャッシュを消去
  • DELETE_UNUSED_IMAGES:未使用のイメージを削除
ネットワーク操作
  • FETCH_NETWORKS:すべてのネットワークを一覧表示
  • INSPECT_NETWORK:ネットワークの詳細を取得
サービス管理
  • FETCH_SERVICES:すべてのサービスを一覧表示
  • FETCH_SERVICE_LOG:サービスのログを取得

開発

ビルド
deno compile --allow-env --allow-read --allow-net --env-file=.env  src/main.ts
MCP サーバーを検査
npx @modelcontextprotocol/inspector deno run --allow-env --allow-read --allow-net --env-file=.env  src/main.ts
MCP 設定
{
  "mcpServers": {
    "poratiner": {
      "command": "C:\\MCP\\portainer-ce-mcp\\src.exe", // use executable path
      "args": [
        "y"
      ]
    }
  }
}

ライセンス

MIT

貢献

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/amazing-feature)
  3. 変更をコミットします(git commit -m 'Add some amazing feature')
  4. ブランチにプッシュします(git push origin feature/amazing-feature)
  5. プルリクエストを作成します

コメント

MCP は初めてですか?

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

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