Skip to content
Development
Skill

/vm-management

Working the vmm namespace through `vmm_execute`: VM inventory and lookup on AHV clusters, resolving names to extId UUIDs, reading VM configuration (disks, NICs, GPUs, power state), OData filters for VM queries, and the read-only boundaries around VM lifecycle actions.

From plugin
msp-claude-plugins
52200 skills146 agents200 commands4 MCP

Claude Code

$ npx -y skills add wyre-ai/msp-claude-plugins --skill vm-management --agent claude-code

SKILL.md

vm-management.SKILL.md
name: "Nutanix VM Management"
description: >
  Working the vmm namespace through `vmm_execute`: VM inventory and
  lookup on AHV clusters, resolving names to extId UUIDs, reading VM
  configuration (disks, NICs, GPUs, power state), OData filters for VM
  queries, and the read-only boundaries around VM lifecycle actions.
when_to_use: >-
  When listing, finding, or inspecting virtual machines on Nutanix AHV
  via Prism Central. Use when: nutanix vm, ahv vm, vm inventory nutanix,
  find vm nutanix, vm power state, vm configuration nutanix, vmm
  namespace, or vmm_execute.

Nutanix VM Management

Overview

The `vmm` namespace covers the VM lifecycle on AHV, Nutanix's built-in hypervisor, managed through Prism Central. For an MSP this is the day-to-day surface: which VMs exist across a client's clusters, how they are configured, what state they are in, and which host they run on. All access goes through the single `vmm_execute` tool — discover the exact operation with `listOperations(namespace="vmm")` first.

Key Concepts

| Concept | Notes | |---------|-------| | `extId` | UUID identifying every VM (and every sub-resource); all get-by-id operations take it | | Power state | `ON`, `OFF`, plus transitional states; read from the VM entity | | Sub-resources | Disks, NICs, GPUs, serial ports each have their own list/get operations under the VM | | Cluster association | Each VM belongs to one cluster; cross-reference `clustermgmt` for cluster detail | | Categories | Prism categories (key:value tags) attach to VMs; category CRUD lives in the `prism` namespace |

Common Workflows

Find a VM by name

1. `listOperations` with `namespace="vmm"`, `search="list vms"` to get the list-VMs operation id. 2. `getOperationSchema` for that id to confirm parameters. 3. `vmm_execute` with the operation id and `_filter="name eq 'web-prod-01'"`. Names are not unique across clusters — if several rows return, disambiguate by cluster before reporting. 4. Use the returned `extId` for any follow-up get-by-id call.

VM inventory sweep

1. List VMs with `_limit=100` and walk `_page` until a short page. 2. `_select` the fields you need (name, power state, sizing, cluster) to keep pages small on large estates. 3. Group client-side by cluster or category for the report.

Inspect one VM's configuration

1. Get the VM by `extId` for CPU/memory/power state. 2. List its disks and NICs via the corresponding sub-resource operations (discover them with `search="disk"` / `search="nic"` scoped to `vmm`).

Read-only boundary

The vmm namespace includes create, clone, update, power-cycle, and delete operations — discovery will list them, but the server's read-only mode blocks all of them. Do not offer to power-cycle, resize, clone, or delete a VM. When a change is the right next step, hand off: pull the operation's contract with `getOperationSchema` and a `getCodeSample` snippet so the operator can execute it through their own authenticated tooling.

Gotchas

  • **Name-to-extId resolution is mandatory.** Get-by-id operations only

accept `extId`. A "VM not found" on a name you can see in Prism usually means the name was passed where a UUID belongs.

  • **Filter casing follows OData, not SQL.** `name eq 'x'` works;

`name = "x"` does not. String literals take single quotes.

  • **Metrics live elsewhere.** VM performance/rightsizing analysis comes

from the `aiops` namespace, not `vmm` — see the monitoring-aiops skill.

Related Skills

  • [api-patterns](../api-patterns/SKILL.md) — discovery workflow, OData, read-only mode
  • [cluster-operations](../cluster-operations/SKILL.md) — the clusters and hosts VMs run on
  • [monitoring-aiops](../monitoring-aiops/SKILL.md) — VM rightsizing and performance analysis
Read more
@wyre-technology
Ships withmsp-claude-plugins

One command to supercharge Claude Code for MSP workflows. Then restart Claude Code. That's it. Documentation: mcp.wyre.ai

52200 skills146 agents4 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
52
Star history of wyre-technology/msp-claude-plugins on GitHub, a chart by star-history.com

Other skills on msp-claude-plugins.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills13d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react4d252k
@facebook@facebookInstall Skill

Questions about vm-management.

Which coding agents can use vm-management?
vm-management installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.