ESXi MCP Server

ESXi MCP Server

site icon
2025.03.24 1
Python虚拟化管理性能监控其它
ESXi MCP Server 是一个基于 MCP(Model Control Protocol)的 VMware ESXi/vCenter 管理服务器,提供简单的 REST API 接口用于虚拟机管理。该服务器支持 ESXi 和 vCenter Server 连接,基于 SSE(Server-Sent Events)实现实时通信,提供 RESTful API 接口并支持 JSON-RPC,具备 API 密钥认证功能,能够管理虚拟机的完整生命周期,并支持实时性能监控和 SSL/TLS 安全连接。
View on GitHub

Overview

基本能力

产品定位

ESXi MCP Server 是一个用于管理 VMware ESXi/vCenter 虚拟机的服务器,提供 REST API 接口和实时通信功能。

核心功能

  • 虚拟机管理:创建、克隆、删除虚拟机,执行电源操作(开机/关机),列出所有虚拟机。
  • 性能监控:监控 CPU 使用率、内存使用率、存储使用率和网络流量统计。
  • 安全连接:支持 SSL/TLS 安全连接和 API 密钥认证。
  • 灵活配置:支持 YAML/JSON/环境变量配置。

适用场景

  • 虚拟化管理:适用于需要自动化管理 VMware 虚拟机的场景。
  • 性能监控:适用于需要实时监控虚拟机性能的场景。
  • 开发与测试:适用于开发和测试环境中快速部署和管理虚拟机。

工具列表

  • pyVmomi:用于与 VMware ESXi/vCenter 交互的 Python SDK。
  • PyYAML:用于解析 YAML 配置文件。
  • uvicorn:用于运行 ASGI 服务器。
  • mcp-core:MCP 核心库,提供协议支持。

常见问题解答

  • 如何跳过 SSL 证书验证?:在配置文件中设置 insecure: true
  • 如何设置 API 密钥?:在配置文件中设置 api_key 或通过环境变量 MCP_API_KEY 设置。
  • 如何查看日志?:在配置文件中设置 log_filelog_level

使用教程

使用依赖

安装以下依赖:

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

调试方式

  1. 检查日志文件 ./logs/vmware_mcp.log
  2. 使用 DEBUG 日志级别:
log_level: "DEBUG"
  1. 测试 API 接口:
POST /sse/messages
Authorization: Bearer your-api-key

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。