VMware ESXi
About
Provides a RESTful API for complete VMware ESXi/vCenter environment management including VM lifecycle operations and real-time performance monitoring through pyVmomi integration
Details
- Author
- bright8192
- Repository
- bright8192/esxi-mcp-server
- GitHub stars
- 10
- Downloads
- 581
- License
- MIT License
- Categories
- Productivity, Developer Tools, Design, File Management, AI, Infrastructure, Project Management, Cloud Service
Jump to
- Support for ESXi and vCenter Server connections
- Real-time communication based on SSE (Server-Sent Events)
- RESTful API interface with JSON-RPC support
- API key authentication
- Complete virtual machine lifecycle management
- Real-time performance monitoring
- SSL/TLS secure connection support
- Flexible configuration options (YAML/JSON/Environment Variables)
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
VMware ESXiCommand (node, npx, python, etc.)pythonArguments-
Argument 1
server.py -
Argument 2
-c -
Argument 3
config.yaml
Environment-
MCP_API_KEY
your-api-key -
MCP_LOG_FILE
./logs/vmware_mcp.log -
VCENTER_HOST
your-vcenter-ip -
VCENTER_USER
administrator@vsphere.local -
MCP_LOG_LEVEL
INFO -
VCENTER_CLUSTER
your-cluster -
VCENTER_NETWORK
VM Network -
VCENTER_INSECURE
true -
VCENTER_PASSWORD
your-password -
VCENTER_DATASTORE
your-datastore -
VCENTER_DATACENTER
your-datacenter
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
1. Install dependencies:
pip install pyvmomi pyyaml uvicorn mcp-core
2. Create configuration file config.yaml:
```yaml
vcenter_host: "your-vcenter-ip"
vcenter_user: "administrator@vsphere.local"
vcenter_password: "your-password"
Create VM
Create a new virtual machine. Parameters: name (string), cpu (integer), memory (integer in MB), datastore (string), network (string)
Clone VM
Clone an existing virtual machine. Parameters: template_name (string), new_name (string)
Delete VM
Delete a virtual machine. Parameters: name (string)
Power On/Off operations
Power on or off a virtual machine. Parameters: name (string)
Get VM performance data
Retrieve performance statistics for a virtual machine. Parameters: vm_name (string)
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"vmware esxi": {
"env": {
"MCP_API_KEY": "your-api-key",
"MCP_LOG_FILE": "./logs/vmware_mcp.log",
"VCENTER_HOST": "your-vcenter-ip",
"VCENTER_USER": "administrator@vsphere.local",
"MCP_LOG_LEVEL": "INFO",
"VCENTER_CLUSTER": "your-cluster",
"VCENTER_NETWORK": "VM Network",
"VCENTER_INSECURE": "true",
"VCENTER_PASSWORD": "your-password",
"VCENTER_DATASTORE": "your-datastore",
"VCENTER_DATACENTER": "your-datacenter"
},
"args": [
"server.py",
"-c",
"config.yaml"
],
"command": "python"
}
}
}
Linux
{
"env": {
"MCP_API_KEY": "your-api-key",
"MCP_LOG_FILE": "./logs/vmware_mcp.log",
"VCENTER_HOST": "your-vcenter-ip",
"VCENTER_USER": "administrator@vsphere.local",
"MCP_LOG_LEVEL": "INFO",
"VCENTER_CLUSTER": "your-cluster",
"VCENTER_NETWORK": "VM Network",
"VCENTER_INSECURE": "true",
"VCENTER_PASSWORD": "your-password",
"VCENTER_DATASTORE": "your-datastore",
"VCENTER_DATACENTER": "your-datacenter"
},
"args": [
"server.py",
"-c",
"config.yaml"
],
"command": "python"
}
Macos
{
"env": {
"MCP_API_KEY": "your-api-key",
"MCP_LOG_FILE": "./logs/vmware_mcp.log",
"VCENTER_HOST": "your-vcenter-ip",
"VCENTER_USER": "administrator@vsphere.local",
"MCP_LOG_LEVEL": "INFO",
"VCENTER_CLUSTER": "your-cluster",
"VCENTER_NETWORK": "VM Network",
"VCENTER_INSECURE": "true",
"VCENTER_PASSWORD": "your-password",
"VCENTER_DATASTORE": "your-datastore",
"VCENTER_DATACENTER": "your-datacenter"
},
"args": [
"server.py",
"-c",
"config.yaml"
],
"command": "python"
}
Windows
{
"env": {
"MCP_API_KEY": "your-api-key",
"MCP_LOG_FILE": "./logs/vmware_mcp.log",
"VCENTER_HOST": "your-vcenter-ip",
"VCENTER_USER": "administrator@vsphere.local",
"MCP_LOG_LEVEL": "INFO",
"VCENTER_CLUSTER": "your-cluster",
"VCENTER_NETWORK": "VM Network",
"VCENTER_INSECURE": "true",
"VCENTER_PASSWORD": "your-password",
"VCENTER_DATASTORE": "your-datastore",
"VCENTER_DATACENTER": "your-datacenter"
},
"args": [
"server.py",
"-c",
"config.yaml"
],
"command": "python"
}
ESXi MCP Server
A VMware ESXi/vCenter management server based on MCP (Model Control Protocol), providing simple REST API interfaces for virtual machine management.
Features
- Support for ESXi and vCenter Server connections
- Real-time communication based on SSE (Server-Sent Events)
- RESTful API interface with JSON-RPC support
- API key authentication
- Complete virtual machine lifecycle management
- Real-time performance monitoring
- SSL/TLS secure connection support
- Flexible configuration options (YAML/JSON/Environment Variables)
Core Functions
- Virtual Machine Management
- Create VM
- Clone VM
- Delete VM
- Power On/Off operations
- List all VMs
- Performance Monitoring
- CPU usage
- Memory usage
- Storage usage
- Network traffic statistics
Requirements
- Python 3.7+
- pyVmomi
- PyYAML
- uvicorn
- mcp-core (Machine Control Protocol core library)
Quick Start
1. Install dependencies:
pip install pyvmomi pyyaml uvicorn mcp-core
2. Create configuration file config.yaml:
```yaml
vcenter_host: "your-vcenter-ip"
vcenter_user: "administrator@vsphere.local"
vcenter_password: "your-password"
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





