Includes GitHub integration for repository management, displaying project analytics via Repobeats, and hosting project assets.
Integrates with PyPI for package distribution and version management, allowing users to install the server directly from the Python Package Index.
Provides tools for managing VMware Fusion virtual machines via the Fusion REST API, enabling operations such as listing VMs, retrieving VM details, performing power actions (on, off, suspend, pause, unpause, reset), and querying VM power states.
Features YouTube integration for demonstration videos, with embedded video content showing the server's capabilities.
VMware Fusion MCP Server
A Model Context Protocol (MCP) server for managing VMware Fusion virtual machines via the Fusion REST API, built with FastMCP.
Features
List VMs: View all VMs registered in VMware Fusion.
Get VM Info: Retrieve detailed information about a specific VM.
Power Operations: Perform power actions (on, off, suspend, pause, unpause, reset) on a VM.
Get Power State: Query the current power state of a VM.
Modern MCP/LLM Integration: Exposes all features as MCP tools for LLMs and agent frameworks.
Prerequisites
VMware Fusion Pro (with REST API enabled)
Python 3.10+
uv (recommended) or pip
uvx (for VS Code/LLM integration)
Installation
Clone the repository:
git clone https://github.com/yeahdongcn/vmware-fusion-mcp-server.git cd vmware-fusion-mcp-serverSet up the environment and install dependencies:
make env
VMware Fusion Setup
Enable the REST API:
Open VMware Fusion > Preferences > Advanced
Check "Enable REST API"
Note the API port (default: 8697)
Start the REST API service:
vmrestThe API will be available at
http://localhost:8697
by default.
Configuration
The server connects to VMware Fusion's REST API at http://localhost:8697
by default. You must configure authentication for the vmrest API using environment variables:
VMREST_USER
: Username for the vmrest API (required if authentication is enabled)VMREST_PASS
: Password for the vmrest API (required if authentication is enabled)
These must be set in your shell, in your VS Code MCP config, or in your deployment environment.
Example: MCP server config for VS Code with credentials
Set
VMREST_USER
andVMREST_PASS
to your vmrest credentials.
Usage
Run the MCP Server
With Make
With uvx (recommended for VS Code/LLM)
VS Code / LLM Integration
To use this server as a tool provider in VS Code (or any MCP-compatible client):
Install
uv pip install uvxAdd to your MCP server config (e.g.,
{ "mcpServers": { "vmware-fusion": { "command": "uvx", "args": ["vmware-fusion-mcp-server"], "env": { "VMREST_USER": "your-username", "VMREST_PASS": "your-password" } } } }Set
VMREST_USER
andVMREST_PASS
to your vmrest credentials.You can now use the VMware Fusion tools in any MCP-enabled LLM or agent in VS Code.
MCP Tools
list_vms
Description: List all VMs in VMware Fusion.
Parameters: None
get_vm_info
Description: Get detailed information about a specific VM.
Parameters:
vm_id
(string): The ID of the VM
power_vm
Description: Perform a power action on a VM.
Parameters:
vm_id
(string): The ID of the VMaction
(string): One of: "on", "off", "suspend", "pause", "unpause", "reset"
get_vm_power_state
Description: Get the power state of a specific VM.
Parameters:
vm_id
(string): The ID of the VM
Development
Run Tests
Format Code
Lint
Project Structure
vmware_fusion_mcp/server.py
- Main FastMCP server implementationvmware_fusion_mcp/vmware_client.py
- VMware Fusion REST API clienttests/
- Unit and integration tests
License
MIT License - see LICENSE for details.
Contributing
Fork the repository
Create a feature branch
Make your changes
Run tests and linting:
make test && make lint
Submit a pull request
References
A Model Context Protocol server that allows managing VMware Fusion virtual machines through natural language, enabling users to list VMs, retrieve VM information, and perform power operations via the Fusion REST API.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that provides intelligent access to PowerPlatform/Dataverse entities and records. This tool offers context-aware assistance, entity exploration and metadata access.Last updated -85618MIT License
- -securityFlicense-qualityA Model Context Protocol server that provides a comprehensive interface for interacting with the ConnectWise Manage API, simplifying API discovery, execution, and management for both developers and AI assistants.Last updated -15
- -securityFlicense-qualityA server implementation of the Model Context Protocol (MCP) that provides REST API endpoints for managing and interacting with MCP resources.Last updated -
- -securityFlicense-qualityA comprehensive Model Context Protocol server that provides over 50 file and system management tools for AI models, including navigation, file operations, search, compression, and system information capabilities.Last updated -