A VMware ESXi/vCenter management server based on MCP (Model Control Protocol), providing simple REST API interfaces for virtual machine management. - 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
Add this skill
npx mdskills install bright8192/esxi-mcp-serverComprehensive VMware management server with clear setup, authentication, and full VM lifecycle control
1# ESXi MCP Server23A VMware ESXi/vCenter management server based on MCP (Model Control Protocol), providing simple REST API interfaces for virtual machine management.45## Features67- Support for ESXi and vCenter Server connections8- Real-time communication based on SSE (Server-Sent Events)9- RESTful API interface with JSON-RPC support10- API key authentication11- Complete virtual machine lifecycle management12- Real-time performance monitoring13- SSL/TLS secure connection support14- Flexible configuration options (YAML/JSON/Environment Variables)1516## Core Functions1718- Virtual Machine Management19 - Create VM20 - Clone VM21 - Delete VM22 - Power On/Off operations23 - List all VMs24- Performance Monitoring25 - CPU usage26 - Memory usage27 - Storage usage28 - Network traffic statistics2930## Requirements3132- Python 3.7+33- pyVmomi34- PyYAML35- uvicorn36- mcp-core (Machine Control Protocol core library)3738## Quick Start39401. Install dependencies:4142```bash43pip install pyvmomi pyyaml uvicorn mcp-core44```45462. Create configuration file `config.yaml`:4748```yaml49vcenter_host: "your-vcenter-ip"50vcenter_user: "administrator@vsphere.local"51vcenter_password: "your-password"52datacenter: "your-datacenter" # Optional53cluster: "your-cluster" # Optional54datastore: "your-datastore" # Optional55network: "VM Network" # Optional56insecure: true # Skip SSL certificate verification57api_key: "your-api-key" # API access key58log_file: "./logs/vmware_mcp.log" # Log file path59log_level: "INFO" # Log level60```61623. Run the server:6364```bash65python server.py -c config.yaml66```6768## API Interface6970### Authentication7172All privileged operations require authentication first:7374```http75POST /sse/messages76Authorization: Bearer your-api-key77```7879### Main Tool Interfaces80811. Create VM82```json83{84 "name": "vm-name",85 "cpu": 2,86 "memory": 4096,87 "datastore": "datastore-name",88 "network": "network-name"89}90```91922. Clone VM93```json94{95 "template_name": "source-vm",96 "new_name": "new-vm-name"97}98```991003. Delete VM101```json102{103 "name": "vm-name"104}105```1061074. Power Operations108```json109{110 "name": "vm-name"111}112```113114### Resource Monitoring Interface115116Get VM performance data:117```http118GET vmstats://{vm_name}119```120121## Configuration122123| Parameter | Description | Required | Default |124|-----------|-------------|----------|---------|125| vcenter_host | vCenter/ESXi server address | Yes | - |126| vcenter_user | Login username | Yes | - |127| vcenter_password | Login password | Yes | - |128| datacenter | Datacenter name | No | Auto-select first |129| cluster | Cluster name | No | Auto-select first |130| datastore | Storage name | No | Auto-select largest available |131| network | Network name | No | VM Network |132| insecure | Skip SSL verification | No | false |133| api_key | API access key | No | - |134| log_file | Log file path | No | Console output |135| log_level | Log level | No | INFO |136137## Environment Variables138139All configuration items support environment variable settings, following these naming rules:140- VCENTER_HOST141- VCENTER_USER142- VCENTER_PASSWORD143- VCENTER_DATACENTER144- VCENTER_CLUSTER145- VCENTER_DATASTORE146- VCENTER_NETWORK147- VCENTER_INSECURE148- MCP_API_KEY149- MCP_LOG_FILE150- MCP_LOG_LEVEL151152## Security Recommendations1531541. Production Environment:155 - Use valid SSL certificates156 - Enable API key authentication157 - Set appropriate log levels158 - Restrict API access scope1591602. Testing Environment:161 - Set insecure: true to skip SSL verification162 - Use more detailed log level (DEBUG)163164## License165166MIT License167168## Contributing169170Issues and Pull Requests are welcome!171172## Changelog173174### v0.0.1175- Initial release176- Basic VM management functionality177- SSE communication support178- API key authentication179- Performance monitoring180181## Author182183Bright8192184185## Acknowledgments186187- VMware pyvmomi team188- MCP Protocol development team189
Full transparency — inspect the skill content before installing.