mcpField
E
ESXi MCP Server

ESXi MCP Server

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

ESXi MCP Server について

ESXi MCP Server は VMware ESXi と vCenter 向けの仮想マシン管理サーバーで、シンプルな REST 形式のインターフェースを提供します。プログラムや AI クライアントから仮想化環境を管理したい運用担当者向けです。

主な機能

  1. 01ESXi と vCenter Server への接続
  2. 02仮想マシンの作成、クローン、削除、電源操作
  3. 03全仮想マシンの一覧取得
  4. 04CPU、メモリ、ストレージ、ネットワークの監視
  5. 05API キー認証と SSL/TLS 対応
  6. 06YAML、JSON、環境変数による設定

活用シーン

  1. 01AI クライアントからの仮想マシンの作成とクローン
  2. 02仮想マシンのリソース使用状況の確認
  3. 03テスト環境での SSL 検証のスキップ

MCP 対応

本プロジェクトは MCP ベースのサービスで、仮想マシンの管理と性能監視の機能を MCP クライアントから呼び出せる形で提供します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

ESXi MCP サーバー

MCP(Model Control Protocol)をベースにした VMware ESXi/vCenter 管理サーバーです。仮想マシン管理用のシンプルな REST API インターフェースを提供します。

特徴

  • ESXi および vCenter Server への接続をサポート
  • SSE(Server-Sent Events)ベースのリアルタイム通信
  • JSON-RPC をサポートする RESTful API インターフェース
  • API キー認証
  • 仮想マシンのライフサイクル全体を管理
  • リアルタイムのパフォーマンス監視
  • SSL/TLS によるセキュアな接続をサポート
  • 柔軟な設定オプション(YAML/JSON/環境変数)

主な機能

  • 仮想マシン管理
    • VM の作成
    • VM のクローン作成
    • VM の削除
    • 電源のオン/オフ操作
    • すべての VM の一覧表示
  • パフォーマンス監視
    • CPU 使用率
    • メモリ使用率
    • ストレージ使用率
    • ネットワークトラフィック統計

要件

  • Python 3.7+
  • pyVmomi
  • PyYAML
  • uvicorn
  • mcp-core(Machine Control Protocol コアライブラリ)

クイックスタート

  1. 依存関係をインストールします:
pip install pyvmomi pyyaml uvicorn mcp-core
  1. 設定ファイル config.yaml を作成します:
vcenter_host: "your-vcenter-ip"
vcenter_user: "[email protected]"
vcenter_password: "your-password"
datacenter: "your-datacenter"        # Optional
cluster: "your-cluster"              # Optional
datastore: "your-datastore"          # Optional
network: "VM Network"                # Optional
insecure: true                       # Skip SSL certificate verification
api_key: "your-api-key"             # API access key
log_file: "./logs/vmware_mcp.log"   # Log file path
log_level: "INFO"                    # Log level
  1. サーバーを実行します:
python server.py -c config.yaml

API インターフェース

認証

すべての特権操作では、最初に認証が必要です:

POST /sse/messages
Authorization: Bearer your-api-key
主なツールインターフェース
  1. VM の作成
{
    "name": "vm-name",
    "cpu": 2,
    "memory": 4096,
    "datastore": "datastore-name",
    "network": "network-name"
}
  1. VM のクローン作成
{
    "template_name": "source-vm",
    "new_name": "new-vm-name"
}
  1. VM の削除
{
    "name": "vm-name"
}
  1. 電源操作
{
    "name": "vm-name"
}
リソース監視インターフェース

VM のパフォーマンスデータを取得します:

GET vmstats://{vm_name}

設定

パラメーター説明必須デフォルト
vcenter_hostvCenter/ESXi サーバーのアドレスはい-
vcenter_userログインユーザー名はい-
vcenter_passwordログインパスワードはい-
datacenterデータセンター名いいえ最初のものを自動選択
clusterクラスター名いいえ最初のものを自動選択
datastoreストレージ名いいえ利用可能な最大のものを自動選択
networkネットワーク名いいえVM Network
insecureSSL 検証をスキップするいいえfalse
api_keyAPI アクセスキーいいえ-
log_fileログファイルのパスいいえコンソール出力
log_levelログレベルいいえINFO

環境変数

すべての設定項目は環境変数で指定できます。環境変数名は次の規則に従います:

  • VCENTER_HOST
  • VCENTER_USER
  • VCENTER_PASSWORD
  • VCENTER_DATACENTER
  • VCENTER_CLUSTER
  • VCENTER_DATASTORE
  • VCENTER_NETWORK
  • VCENTER_INSECURE
  • MCP_API_KEY
  • MCP_LOG_FILE
  • MCP_LOG_LEVEL

セキュリティに関する推奨事項

  1. 本番環境:

    • 有効な SSL 証明書を使用する
    • API キー認証を有効にする
    • 適切なログレベルを設定する
    • API アクセス範囲を制限する
  2. テスト環境:

    • insecure: true を設定して SSL 検証をスキップする
    • より詳細なログレベル(DEBUG)を使用する

ライセンス

MIT ライセンス

貢献

Issue とプルリクエストを歓迎します!

変更履歴

v0.0.1
  • 初回リリース
  • 基本的な VM 管理機能
  • SSE 通信をサポート
  • API キー認証
  • パフォーマンス監視

作者

Bright8192

謝辞

  • VMware pyvmomi チーム
  • MCP Protocol 開発チーム

コメント

MCP は初めてですか?

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

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