Skip to main content
Glama
havu0

vmware-mcp

by havu0

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
vm_startC

Start a VMware virtual machine.

vm_stopA

Stop a virtual machine. "soft" attempts graceful shutdown, "hard" forces power off.

vm_suspendA

Suspend a virtual machine, preserving its current state to disk. Warning: encrypted VMs may not resume via vmrun after suspend — use vm_stop instead if unsure.

vm_resetA

Reset (reboot) a virtual machine. "soft" runs shutdown scripts first.

vm_pauseB

Pause a running virtual machine without shutting it down.

vm_unpauseB

Resume a paused virtual machine.

vm_statusB

Get the running status and IP address of a virtual machine.

vm_listA

List virtual machines. By default shows only running VMs. Use all=true to include configured VMs from config.

vm_get_ipA

Get the IP address of a running virtual machine.

guest_run_commandA

Execute a shell command inside the guest VM and return stdout. Uses the appropriate shell based on guest OS type (cmd/bash). Requires guest credentials in config and VMware Tools running in guest.

guest_run_programC

Launch a program inside the guest VM. Can run asynchronously with no_wait. Requires full path to the program.

file_copy_to_guestA

Copy a file from the host machine to the guest VM.

file_copy_from_guestA

Copy a file from the guest VM to the host machine.

guest_read_fileA

Read the contents of a file inside the guest VM. Copies to host, reads, then cleans up.

guest_file_existsA

Check if a file exists inside the guest VM.

guest_directory_existsA

Check if a directory exists inside the guest VM.

guest_directory_createB

Create a directory inside the guest VM.

guest_delete_fileB

Delete a file inside the guest VM.

guest_rename_fileA

Rename or move a file inside the guest VM.

guest_list_directoryB

List the contents of a directory inside the guest VM.

guest_create_tempfileC

Create a temporary file inside the guest VM and return its path.

vm_snapshot_createA

Create a snapshot of a virtual machine. Do not use "/" in snapshot names. Note: may fail on running encrypted VMs due to vmrun limitations — stop the VM first if needed.

vm_snapshot_revertA

Revert a VM to a previous snapshot. The VM will be in suspended state after revert. Use auto_start to automatically power it back on.

vm_snapshot_listA

List all snapshots of a virtual machine in tree format.

vm_snapshot_deleteB

Delete a snapshot from a virtual machine.

guest_process_listA

List all running processes inside the guest VM. Requires guest credentials.

guest_kill_processA

Kill a process inside the guest VM by its PID.

vm_capture_screenA

Capture a screenshot of the VM screen. Returns the image as base64-encoded PNG, or saves to a specified host path. Requires guest credentials in config.

guest_type_keystrokesA

Send keystrokes to the guest VM. Useful for GUI automation when combined with vm_capture_screen. Requires macOS Accessibility permission for VMware Fusion in System Settings.

vm_read_variableB

Read a variable from the VM state.

vm_write_variableC

Write a variable to the VM state.

vm_check_toolsA

Check the VMware Tools state in the guest. Returns "unknown", "installed", or "running".

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 32 tools

Disambiguation4/5

Most tools are clearly separated by resource area: VM power, snapshots, guest files, guest processes, and VM variables. A few neighboring tools could be confused (vm_status vs vm_get_ip both expose IP, and vm_stop/vm_suspend/vm_pause are all power-management actions), but the descriptions sufficiently distinguish their behaviors.

Naming Consistency4/5

Names are uniformly snake_case and generally follow a domain-prefixed action pattern (vm_start, guest_read_file, vm_snapshot_create). Minor deviations like file_copy_to_guest/file_copy_from_guest and ordering differences between vm_list and vm_snapshot_list prevent a perfect consistency score.

Tool Count2/5

32 tools is a large surface, exceeding the typical well-scoped range. Some tools are redundant or could be consolidated, such as vm_status/vm_get_ip and guest_read_file/file_copy_from_guest, making the set feel heavier than necessary for its core VM-management purpose.

Completeness4/5

The tool set covers the operational lifecycle well: VM power control, snapshots, guest command execution, file operations, process management, screen capture/input, variables, and VMware Tools status. The main gaps are VM lifecycle provisioning operations like create/delete/clone and configuration/resource management, which appear to be outside the intended vmrun-style scope.

Maintenance

ActivityInactive
ResponsivenessNo issues