ProxmoxMCP-Plus v0.6.4
Changes
- Add
preflight_vm_migrationandmigrate_vmfor offline QEMU migration. Read native Proxmox migration preconditions alongside VM ownership/runtime, HA, storage and network evidence; reject missing or malformed evidence, local ISO media and unsupported host/device dependencies. - Preserve shared-storage semantics and generated CloudInit media. Use the larger configuration/native disk size for local capacity accounting, without charging shared disks their existing provisioned space again.
- Add
import_cloud_imagefor already uploaded raw/qcow2/vmdk volumes on import-enabled storage. Submit the asynchronous Proxmoximport-fromupdate with the current config digest into an unused SCSI slot, without URL downloads, disk overwrites or boot-order changes. - Add idempotent
configure_vm_serial_consolefor socket-backed ttyS0 and serial VGA output while preserving other serial devices. Guest serial login requires separate guest configuration. - Repair the contributed tools' approval-token dispatch, template/path validation, digest checks and uncertain submission envelopes. Enforce the selected target's high-risk/read-only/client policy, never retry mutation requests automatically, and retain a submitted UPID if local job tracking fails.
- Integrate contributions from #176 and #177 with independent API review and regression coverage of real FastMCP dispatch, negative authorization, native migration evidence and mutation outcomes.
Upgrade and operating limits
Upgrade to proxmox-mcp-plus==0.6.4 or ghcr.io/rekklesna/proxmoxmcp-plus:0.6.4, restart workers and reconnect MCP clients. Preserve existing SQLite/OAuth state; no database migration is introduced.
Custom command_policy.high_risk_operations lists must include migrate_vm, import_cloud_image and configure_vm_serial_console to apply their approval policy to these tools. Default audit-only mode remains available; explicit tool confirmations are still required.
QEMU migration is offline only: stop the VM separately and verify backup restorability, workload drain and destination CPU compatibility before confirming. The native migration GET requires VM.Migrate permission even though the preflight operation is read-only. Unsupported/missing native preconditions fail closed. Migration observations neither reserve resources nor atomically lock runtime state; Proxmox enforces its own submission constraints.
Disk import and serial setup also observe stopped state before submission and use a config digest against concurrent config edits; the digest does not lock external runtime changes. Inspect task completion and resulting configuration. On SUBMISSION_UNCERTAIN, inspect Proxmox tasks, VM config and guest location before considering another call.
No live Proxmox VM migration, image import or guest configuration change was performed during this code review. Validation uses automated unit/protocol tests and publication/runtime smoke checks.