A VMware ESXi/vCenter management server
Integrations
Provides ESXi and vCenter Server integration for complete virtual machine lifecycle management (create, clone, delete, power operations), real-time performance monitoring (CPU, memory, storage, network), and server management through a RESTful API interface.
Supports YAML as a configuration format for defining server settings, connection parameters, and authentication details.
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
- Install dependencies:
- Create configuration file
config.yaml
:
- Run the server:
API Interface
Authentication
All privileged operations require authentication first:
Main Tool Interfaces
- Create VM
- Clone VM
- Delete VM
- Power Operations
Resource Monitoring Interface
Get VM performance data:
Configuration
Parameter | Description | Required | Default |
---|---|---|---|
vcenter_host | vCenter/ESXi server address | Yes | - |
vcenter_user | Login username | Yes | - |
vcenter_password | Login password | Yes | - |
datacenter | Datacenter name | No | Auto-select first |
cluster | Cluster name | No | Auto-select first |
datastore | Storage name | No | Auto-select largest available |
network | Network name | No | VM Network |
insecure | Skip SSL verification | No | false |
api_key | API access key | No | - |
log_file | Log file path | No | Console output |
log_level | Log level | No | INFO |
Environment Variables
All configuration items support environment variable settings, following these naming rules:
- 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
Security Recommendations
- Production Environment:
- Use valid SSL certificates
- Enable API key authentication
- Set appropriate log levels
- Restrict API access scope
- Testing Environment:
- Set insecure: true to skip SSL verification
- Use more detailed log level (DEBUG)
License
MIT License
Contributing
Issues and Pull Requests are welcome!
Changelog
v0.0.1
- Initial release
- Basic VM management functionality
- SSE communication support
- API key authentication
- Performance monitoring
Author
Bright8192
Acknowledgments
- VMware pyvmomi team
- MCP Protocol development team
This server cannot be installed
A VMware ESXi/vCenter management server based on MCP (Machine Control Protocol), providing simple REST API interfaces for virtual machine management.
- Features
- Core Functions
- Requirements
- Quick Start
- API Interface
- Configuration
- Environment Variables
- Security Recommendations
- License
- Contributing
- Changelog
- Author
- Acknowledgments