A Community MCP Server for VMware Desktop Hypervisors
This server has 18 tools with significant definition gaps. Tools 3-18 share a generic parameter set (action, vmx_path, vmx_position, verbose, output_format, command_args) that is poorly documented. Descriptions are present but generic (e.g., 'vmcli Chipset module. Valid actions: query, SetCoresPerSocket...'). No tool has documented output schemas. Parameter descriptions lack constraints, ranges, or format guidance. Error handling is not visible in tool definitions. The server acts as a thin wrapper around vmcli commands rather than providing LLM-optimized abstractions.
vmcli Chipset module. Valid actions: query, SetCoresPerSocket, SetMemSize, SetSimultaneousThreads, SetVCpuCount
vmcli ConfigParams module. Valid actions: query, SetEntry
vmcli Disk module. Valid actions: Branch, BranchCancel, ConnectionControl, ConvertAllocType, ConvertAllocTypeCancel, Create, Extend, IsPresent, Move, Purge, query, SetAllowGuestControl, SetBackingInfo, SetBandwidthCap, SetCbrcCacheEnabled, SetCtkEnabled, SetDigest, SetDiskUUID, SetDiskUuidEnabled, SetExclusiveAccess, SetGlobalCtkDisallowed, SetHardDiskHostBuffer, SetHardDiskPageAlign, SetHideTypeOfROnlyPart, SetMode, SetPolicy, SetPresent, SetReadOnly, SetReservation, SetShares, SetSharing, SetSpifFilters, SetStartConnected, SetThroughputCap, SetWriteThrough...
vmcli Ethernet module. Valid actions: ConnectionControl, IsPresent, MoveDevice, Purge, query, SetAddressType, SetAllowGuestControl, SetConnectionType, SetCustomTypeBacking, SetDvsTypeBacking, SetExternalId, SetFeatures, SetLinkStatePropagation, SetMigrateControl, SetNetworkName, SetNiocTypeBacking, SetOpaqueNetworkTypeBacking, SetPciSlotNumber, SetPresent, SetPvnTypeBacking, SetSecurityPolicy, SetStartConnected, SetTransferLatency, SetTransferRate, SetUptCompatibility, SetVirtualDevice, SetWakeOnPcktRcv...
vmcli HGFS module. Valid actions: query, SetEnabled, SetExpiration, SetFollowSymlinks, SetGuestName, SetHostDefaultCase, SetHostPath, SetPresent, SetReadAccess, SetTags, SetWriteAccess
Tools vm_list and vm_discover_capabilities have empty input schemas ({}), violating hard rule: missing schemas must score 0.
16 tools (3-18) share a generic parameter set with minimal descriptions. 'action' parameter lacks enum constraints listing valid actions; LLMs will hallucinate invalid actions. 'command_args' is an untyped array with no guidance on format or constraints.
No tool has a documented output schema. LLMs cannot plan downstream calls or extract required fields. Responses are opaque to the agent.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | <=2025-11-25 | v2 |
vmcli MKS module. Valid actions: captureScreenshot, query, sendKeyEvent, sendKeySequence, SetAccel3d, SetFullscreenAtPowerOn, SetFullScreenOnAllHostDisplays, SetGraphicsMemoryKB, SetGuestResolution, SetNumDisplays, SetRenderer3d, SetVramSize
vmcli Nvme module. Valid actions: FindFirstFree, IsChildPresent, Move, Purge, query, SetBusType, SetMaxDevices, SetPciSlotNumber, SetPresent, SetType
vmcli Sata module. Valid actions: FindFirstFree, HasNoDevice, IsChildPresent, IsPresent, Move, Purge, query, SetMaxDevices, SetNumaNode, SetPciSlotNumber, SetPresent, SetType
vmcli Serial module. Valid actions: ConnectionControl, Purge, Query, SetAllowGuestControl, SetBackingInfo, SetPresent, StartConnected, TryNoRxLoss, YieldOnMsrRead
vmcli Tools module. Valid actions: Install, Query, Upgrade
Live-discover vmcli modules and commands from local --help output.
Guest module: run, copyFrom, copyTo, ps, ls, mkdir, ...
VM module: Create new virtual machine (-n, -d, -g/-c).
List virtual machines discovered on disk (.vmx inventory).
Power module: query, Start, Stop, Pause, Reset, Suspend, Unpause.
Snapshot module: query, Take, Delete, Revert, Clone.
vmcli VMTemplate module. Valid actions: Create, Deploy
vmcli VProbes module. Valid actions: Load, Query, Reset, SetEnabled
Descriptions for tools 3-18 are bare action lists (e.g., 'vmcli Chipset module. Valid actions: query, SetCoresPerSocket...') without explaining WHEN to use the tool, WHAT it returns, or HOW to compose it with other tools. Descriptions under 50 chars or purely enumerative.
Parameter 'vmx_position' enum ['first', 'last'] is cryptic. Description does not explain what this controls or why an LLM would choose one over the other. Likely a vmcli implementation detail leaking into the interface.