home / mcp / vsphere mcp server
Provides a VMware vSphere MCP server enabling AI agents to manage VMs, hosts, networks, and storage via a secure, Dockerized interface.
Configuration
View docs{
"mcpServers": {
"akshyaganesh-vmware-mcp": {
"url": "http://vsphere-mcp-server:8000/mcp",
"headers": {
"INSECURE": "True",
"SERVER_HOST": "0.0.0.0",
"SERVER_PORT": "8000",
"VCENTER_HOST": "vcenter.example.local",
"VCENTER_USER": "[email protected]",
"VCENTER_PASSWORD": "YOUR_PASSWORD"
}
}
}
}You have a dedicated MCP server for VMware vSphere that gives AI agents secure, dockerized access to manage virtual infrastructure. It exposes a wide set of VM, host, network, and datastore operations, with safety features and comprehensive monitoring to help you automate, audit, and scale your VMware environment.
You interact with the vSphere MCP Server through your MCP client to perform day-to-day VM management, infrastructure queries, monitoring, and reporting. Start by connecting your client to the MCP endpoint, then issue intent-driven requests such as listing VMs, retrieving details, powering VMs on or off, creating snapshots, and generating reports. All destructive operations require explicit confirmation, and results are returned with clear success or error messaging to help you troubleshoot quickly.
Prerequisites ensure your environment can run containerized services and reach your vCenter Server.
Install and run the MCP server with Docker Compose by following these steps.
# Prerequisites
- Docker
- Docker Compose
- VMware vCenter Server with REST API access
- Valid vCenter credentials
# Quick Start
# 1. Prepare environment variables
cp env.example .env
# Edit .env with your vCenter credentials and server settings
# 2. Deploy the MCP server
docker compose up -dCreate a local environment file to configure vCenter connection and server listening details.
# .env example content after editing
VCENTER_HOST=vcenter.domain.local
[email protected]
VCENTER_PASSWORD=your_password_here
INSECURE=True
SERVER_HOST=0.0.0.0
SERVER_PORT=8000List all virtual machines with their current power states
Retrieve detailed information for a specific VM by its ID or name
Power on a specified VM
Power off a specified VM
Restart a specified VM
List all ESXi hosts in the environment
List all datastores available in the vCenter
List all networks present in the vCenter
List all datacenters managed by the vCenter
Get performance metrics for a specific VM or all VMs
Get performance metrics for a host or all hosts
Get disk usage statistics for a VM
Get datastore utilization details
Identify VMs with high CPU/memory/disk usage
List snapshots for a given VM
Create a snapshot for a VM with a name and optional description
Delete a specific VM snapshot with optional confirmation
List VM templates available in the environment
Retrieve VM-related events
Get active alarms from the environment
List network port groups in use by the environment
Generate a comprehensive report for one or more VMs
Provide a summary of CPU, memory, and storage utilization across the environment
Perform power operations on multiple VMs in a single call
Delete multiple VMs in a single operation
Delete a VM (requires explicit confirmation)