Skip to main content
Glama

vm_guest_provision

Automate VM provisioning by executing guest commands, uploading files, and managing services in a single call.

Instructions

[WRITE] Provision a VM by running a sequence of guest operations (exec / upload / service).

Combines key injection, software installation, and service startup into a single call. Steps execute in order; stops on first failure.

Step types:

  • exec: {"type": "exec", "command": "apt-get install -y nginx"}

  • upload: {"type": "upload", "local_path": "/tmp/id_rsa.pub", "guest_path": "/root/.ssh/authorized_keys"}

  • service: {"type": "service", "name": "nginx", "action": "start"}

Args: vm_name: Target VM name. username: Guest OS username. password: Guest OS password. steps: Ordered list of step dicts. timeout: Per-step timeout in seconds (default 300). target: Optional vCenter/ESXi target name from config.

Returns: dict with success, completed_steps, total_steps, results, error.

Example: steps = [ {"type": "upload", "local_path": "~/.ssh/id_rsa.pub", "guest_path": "/root/.ssh/authorized_keys"}, {"type": "exec", "command": "chmod 600 /root/.ssh/authorized_keys"}, {"type": "exec", "command": "apt-get install -y nginx"}, {"type": "service", "name": "nginx", "action": "enable"}, {"type": "service", "name": "nginx", "action": "start"}, ]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
vm_nameYes
usernameYes
passwordYes
stepsYes
timeoutNo
targetNo
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses steps execute in order, stop on first failure, per-step timeout, and return dict structure. Annotations already indicate write (readOnlyHint=false) and non-destructive (destructiveHint=false); description adds behavioral details beyond annotations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise at ~15 lines with clear sections: purpose, step types, arguments, return, example. No redundant sentences; every part adds value. Front-loaded with key info.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters, complex steps array, and no output schema, the description provides return format, step examples, and default timeout. Minor gap: prerequisites (e.g., VM must exist) not stated, but otherwise complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description explains each parameter (vm_name, username, password, steps, timeout, target) and provides detailed step type examples. Adds meaning beyond bare schema, though could elaborate on target selection.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Provision a VM by running a sequence of guest operations' with a clear verb (provision) and resource (VM), and distinguishes from sibling tools like vm_guest_exec (single exec) and vm_guest_upload (single upload) by combining multiple step types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for multi-step provisioning ('Combines key injection, software installation, and service startup into a single call') but does not explicitly state when not to use or name alternatives like vm_guest_exec for single commands. Guidelines are implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/zw008/vmware-aiops'

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