Skip to main content
Glama

qemu_snapshot_save

Destructive

Save a full VM snapshot including RAM and device state under a tag, storing it in the qcow2 disk image for later restore. Reusing a tag overwrites the existing snapshot.

Instructions

Save a full VM snapshot (RAM + device state) under tag.

Uses QEMU's internal savevm mechanism, which stores the snapshot inside the disk image itself - the VM's disk must be qcow2 (raw images do not support internal snapshots). Saving again with the same tag overwrites it. tag may only contain letters, digits, '.', '_', '-'.

Input Schema

NameRequiredDescriptionDefault
tagYes
nameYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, but the description adds the concrete behavior behind it: a repeated save with the same tag destroys the previous snapshot, and the snapshot lives inside the disk image via savevm. It stops short of saying whether the VM must be running/paused or how long a save blocks the guest, which matters for a live-save operation.

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?

Three short sentences, front-loaded with the action, followed by mechanism/constraint and then the tag rule. No filler and every clause adds usable information.

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?

An output schema exists, so return values need no explanation, and the storage-location and format constraints are covered. The unexplained `name` parameter and the absence of any note about required VM state are the remaining gaps for a destructive snapshot operation.

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

Parameters3/5

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

Schema description coverage is 0%, so the description carries the full burden. It defines `tag` well (allowed characters, overwrite semantics) but says nothing about the required `name` parameter, leaving half the inputs to inference.

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?

States a specific verb and resource (save a full VM snapshot of RAM + device state under `tag`) and implicitly separates itself from qemu_snapshot_load/delete/list by describing the save direction and the internal savevm mechanism.

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

Usage Guidelines4/5

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

Gives a hard prerequisite (disk must be qcow2, raw images unsupported) and the overwrite condition, which tells the agent when the call is valid. It does not explicitly point at siblings such as qemu_snapshot_list to check existing tags or qemu_snapshot_load as the counterpart, so there are no named alternatives.

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