Skip to main content
Glama

VMware Fusion MCP Server

by yeahdongcn
MIT License
3

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

  1. Clone the repository:
    git clone https://github.com/yeahdongcn/vmware-fusion-mcp-server.git cd vmware-fusion-mcp-server
  2. Set up the environment and install dependencies:
    make env

VMware Fusion Setup

  1. Enable the REST API:
    • Open VMware Fusion > Preferences > Advanced
    • Check "Enable REST API"
    • Note the API port (default: 8697)
  2. Start the REST API service:
    vmrest
    The 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

{ "mcpServers": { "vmware-fusion": { "command": "uvx", "args": ["vmware-fusion-mcp-server"], "env": { "VMREST_USER": "your-username", "VMREST_PASS": "your-password" } } } }
  • Set VMREST_USER and VMREST_PASS to your vmrest credentials.

Usage

Run the MCP Server

With Make
VMREST_USER=your-username VMREST_PASS=your-password make run
VMREST_USER=your-username VMREST_PASS=your-password uvx vmware-fusion-mcp-server

VS Code / LLM Integration

To use this server as a tool provider in VS Code (or any MCP-compatible client):

  1. Install uvx:
    uv pip install uvx
  2. Add to your MCP server config (e.g., .vscode/mcp.json):
    { "mcpServers": { "vmware-fusion": { "command": "uvx", "args": ["vmware-fusion-mcp-server"], "env": { "VMREST_USER": "your-username", "VMREST_PASS": "your-password" } } } }
    • Set VMREST_USER and VMREST_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 VM
    • action (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

make test

Format Code

make fmt

Lint

make lint

Project Structure

  • vmware_fusion_mcp/server.py - Main FastMCP server implementation
  • vmware_fusion_mcp/vmware_client.py - VMware Fusion REST API client
  • tests/ - Unit and integration tests

License

MIT License - see LICENSE for details.


Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linting: make test && make lint
  5. Submit a pull request

References

-
security - not tested
A
license - permissive license
-
quality - not tested

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.

  1. Features
    1. Prerequisites
      1. Installation
        1. VMware Fusion Setup
          1. Configuration
            1. Example: MCP server config for VS Code with credentials
          2. Usage
            1. Run the MCP Server
          3. VS Code / LLM Integration
            1. MCP Tools
              1. list_vms
              2. get_vm_info
              3. power_vm
              4. get_vm_power_state
            2. Development
              1. Run Tests
              2. Format Code
              3. Lint
            3. Project Structure
              1. License
                1. Contributing
                  1. References

                    Related MCP Servers

                    • -
                      security
                      A
                      license
                      -
                      quality
                      A Model Context Protocol server that provides file system operations, analysis, and manipulation capabilities through a standardized tool interface.
                      Last updated -
                      4
                      TypeScript
                      MIT License
                    • A
                      security
                      A
                      license
                      A
                      quality
                      A 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 -
                      8
                      286
                      15
                      JavaScript
                      MIT License
                    • -
                      security
                      F
                      license
                      -
                      quality
                      A 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 -
                      1
                      6
                      Python
                      • Linux
                      • Apple
                    • -
                      security
                      A
                      license
                      -
                      quality
                      A Model Context Protocol server implementation that provides a standardized interface for applications to interact with OpenRouter's language models through a unified conversation management system.
                      Last updated -
                      1
                      TypeScript
                      MIT License

                    View all related MCP servers

                    MCP directory API

                    We provide all the information about MCP servers via our MCP API.

                    curl -X GET 'https://glama.ai/api/mcp/v1/servers/yeahdongcn/vmware-fusion-mcp-server'

                    If you have feedback or need assistance with the MCP directory API, please join our Discord server