VMware Fusion

VMware Fusion

yeahdongcn

Manages VMware Fusion virtual machines through REST API, allowing you to start, stop, suspend, and monitor VMs from within Claude or other MCP-compatible tools.

Integrates with VMware Fusion's REST API to manage virtual machine lifecycles including power operations, configuration retrieval, and status monitoring for local development environments.

8322 views4Local (stdio)

What it does

  • List all registered virtual machines
  • Start, stop, suspend, and reset VMs
  • Get detailed VM configuration information
  • Check current power state of VMs
  • Pause and unpause running VMs

Best for

Developers managing local VM test environmentsAutomating VM lifecycle operationsMonitoring VM status across multiple machines
Uses VMware Fusion's REST APIFull power state management

About VMware Fusion

VMware Fusion is a community-built MCP server published by yeahdongcn that provides AI assistants with tools and capabilities via the Model Context Protocol. Manage virtual machines with VMware Fusion's REST API for easy lifecycle, power, and status control in local dev environ It is categorized under developer tools.

How to install

You can install VMware Fusion in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

VMware Fusion is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

VMware Fusion MCP Server

agentman

PyPI version Python versions GitHub Issues Pepy Total Downloads License


A Model Context Protocol (MCP) server for managing VMware Fusion virtual machines via the Fusion REST API, built with FastMCP.

Repobeats analytics image


Features

Demo

  • 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

With uvx (recommended for VS Code/LLM)

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

Alternatives

Related Skills

Browse all skills
ui-design-system

UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.

18
ai-sdk

Answer questions about the AI SDK and help build AI-powered features. Use when developers: (1) Ask about AI SDK functions like generateText, streamText, ToolLoopAgent, embed, or tools, (2) Want to build AI agents, chatbots, RAG systems, or text generation features, (3) Have questions about AI providers (OpenAI, Anthropic, Google, etc.), streaming, tool calling, structured output, or embeddings, (4) Use React hooks like useChat or useCompletion. Triggers on: "AI SDK", "Vercel AI SDK", "generateText", "streamText", "add AI to my app", "build an agent", "tool calling", "structured output", "useChat".

6
api-documenter

Master API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.

4
openai-knowledge

Use when working with the OpenAI API (Responses API) or OpenAI platform features (tools, streaming, Realtime API, auth, models, rate limits, MCP) and you need authoritative, up-to-date documentation (schemas, examples, limits, edge cases). Prefer the OpenAI Developer Documentation MCP server tools when available; otherwise guide the user to enable `openaiDeveloperDocs`.

4
cli-builder

Guide for building TypeScript CLIs with Bun. Use when creating command-line tools, adding subcommands to existing CLIs, or building developer tooling. Covers argument parsing, subcommand patterns, output formatting, and distribution.

3
ydc-ai-sdk-integration

Integrate Vercel AI SDK applications with You.com tools (web search, AI agent, content extraction). Use when developer mentions AI SDK, Vercel AI SDK, generateText, streamText, or You.com integration with AI SDK.

2