Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PROXMOX_HOSTYesProxmox host address (e.g., proxmox.example.com)
PROXMOX_PORTNoProxmox port8006
PROXMOX_USERNoProxmox user (e.g., root@pam)root@pam
PROXMOX_DEV_MODENoEnable dev mode (true/false)false
PROXMOX_TOKEN_NAMEYesAPI token name
PROXMOX_VERIFY_SSLNoWhether to verify SSL (true/false)true
PROXMOX_TOKEN_VALUEYesAPI token value (UUID)
PROXMOX_DANGEROUSLY_ALLOW_DESTRUCTIVENoAllow destructive operations without approval token (true/false)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_cluster_statusA

Return quorum status, cluster name/version, and a list of nodes with their online state and IDs.

get_nodesA

List all nodes in the cluster with their status, CPU, memory, uptime, and role.

get_node_statusA

Get detailed status (CPU, memory, uptime, storage) for a single Proxmox node.

get_node_syslogB

Read recent syslog lines from a Proxmox node.

get_node_journalA

Read recent systemd journal entries from a Proxmox node.

get_storageA

List all configured storage pools cluster-wide with type, content types, and aggregate usage.

list_tasksA

List recent Proxmox tasks cluster-wide (UPIDs). Useful for finding background work and diagnosing failures.

get_taskA

Get the current status of a Proxmox task by its UPID (e.g. 'UPID:pve:000B5C66:...').

get_task_logB

Stream log lines from a Proxmox task (UPID). Useful for diagnosing failures.

list_jobsA

List long-running Proxmox jobs tracked by this MCP server (e.g. create_vm, snapshot, backup).

get_jobA

Fetch a single tracked job by job_id, optionally refreshing from Proxmox.

poll_jobA

Force-refresh a tracked job by polling its underlying Proxmox task. Returns the latest state, exit status, progress, and recent log tail.

cancel_jobA

Request cancellation of a tracked job. Calls Proxmox's task-stop endpoint. Some operations cannot be cancelled cleanly.

retry_jobA

Re-invoke the originating tool for a failed/cancelled job, using the stored retry recipe. Returns the new job_id.

list_snapshotsB

List all snapshots for a QEMU VM or LXC container.

create_snapshotA

Take a snapshot of a QEMU VM (optionally including RAM state) or LXC container.

delete_snapshotA

Delete a snapshot from a VM or container. DESTRUCTIVE — ask the user to confirm before invoking.

rollback_snapshotA

Revert a VM or container to a previous snapshot state. VM/container will be stopped first. DESTRUCTIVE — ask the user to confirm before invoking.

list_backupsA

List vzdump backup files cluster-wide. Filter by node, storage pool, or VM ID.

create_backupB

Trigger a vzdump backup of a VM or container to a target storage pool.

restore_backupA

Restore a vzdump archive as a new VM/container. DESTRUCTIVE — ask the user to confirm before invoking.

delete_backupA

Permanently delete a vzdump backup file. DESTRUCTIVE — ask the user to confirm before invoking.

prune_backupsA

Apply a prune schedule (e.g. 'keep-last=7,keep-daily=14,keep-weekly=4') to a storage pool (Proxmox 8+).

list_isosB

List ISO images available on the cluster.

list_templatesA

List LXC OS templates (vztmpl) available on the cluster.

download_isoA

Trigger a server-side download from a URL into a storage pool (useful for large ISOs). Proxmox fetches the file directly.

delete_isoA

Permanently delete an ISO or template. DESTRUCTIVE — ask the user to confirm before invoking.

get_vmsA

List all QEMU VMs across the cluster with current status and resource usage.

get_vm_configA

Return the full Proxmox VM configuration (cores, memory, disks, network, etc.).

get_vm_statusA

Return live status (cpu, mem, uptime, qmpstatus) of a VM.

create_vmA

Create a new QEMU VM. Auto-detects default storage for the disk. Use clone_vm to duplicate from a template.

clone_vmB

Full or linked clone of an existing VM.

start_vmC

Power on a QEMU VM.

stop_vmB

Hard stop (immediate power off) — equivalent to pulling the plug.

shutdown_vmB

ACPI shutdown. The guest OS must respond (install qemu-guest-agent for reliability).

reset_vmC

Hard reset — equivalent to pressing the reset button.

reboot_vmB

ACPI reboot. Guest OS must respond.

delete_vmA

Permanently delete a VM and its disks. DESTRUCTIVE — ask the user to confirm before invoking.

get_containersA

List all LXC containers across the cluster with status and resource usage.

get_container_configB

Return the full Proxmox container configuration.

get_container_statusB

Return live status (cpu, mem, uptime) of a container.

get_container_ipA

Return the container's network interfaces with their IPv4/IPv6 addresses (DHCP-aware — no static IP needed).

create_containerB

Create a new LXC container from a vztmpl template.

clone_containerB

Clone an existing container to a new ID on the same or different node.

start_containerB

Start an LXC container.

stop_containerB

Hard-stop (immediate power off) the container.

shutdown_containerB

Graceful shutdown via pct shutdown. Equivalent to ACPI shutdown.

restart_containerC

Reboot an LXC container.

delete_containerB

Permanently delete a container and its data. DESTRUCTIVE — ask the user to confirm before invoking.

update_container_resourcesA

Convenience wrapper around update_container_config that resizes CPU, memory, swap, and disk in one call.

update_vm_configA

Patch one or more VM configuration keys (cores, memory, scsi0 size, net0, ostype, etc.). Use current=true to update a running VM where supported. Only a safe allowlist of keys is accepted — keys that can attach host PCI/USB devices, override SMBIOS, or change the QEMU machine type are rejected. HIGH RISK — ask the user to confirm before invoking.

resize_vm_diskB

Resize a VM disk (e.g. scsi0, virtio0). Use a '+N' suffix on size to grow, or absolute size like '50G'.

regenerate_vm_configA

Regenerate the VM's MAC addresses and (optionally) SMBIOS UUID. Useful after cloning.

set_vm_cloudinitB

Set cloud-init parameters (user, password, SSH keys, IP config, DNS, search domain) and regenerate the cloud-init ISO.

get_vm_pendingA

Return pending config values not yet applied (only present when running config has pending changes).

update_container_configA

Patch one or more LXC container configuration keys (cores, memory, net0, features, etc.).

resize_container_diskA

Resize an LXC container volume (e.g. rootfs, mp0). Use '+N' for relative growth, or absolute size like '20G'.

move_container_volumeA

Move an LXC volume (rootfs or mountpoint) to a different storage. Useful for migrating off slow disks.

get_vm_rrdA

Return raw RRD metrics (cpu, mem, netin/out, diskread/write) for a VM at a given timeframe. Used for charting and capacity analysis.

get_vm_rrddataA

Return recent RRD samples for a VM. Cheaper than get_vm_rrd for ad-hoc checks.

vm_agent_infoB

Return QEMU guest agent metadata.

vm_agent_get_hostnameB

Return the guest VM hostname.

vm_agent_get_osinfoC

Return guest OS info (kernel, name, version, pretty name).

vm_agent_get_usersB

Return logged-in users inside the guest.

vm_agent_get_network_interfacesB

Return network interfaces from inside the guest (with IPs).

vm_agent_get_vcpusB

Return vCPU topology and current usage from inside the guest.

vm_agent_get_timeA

Return guest clock time and skew vs host.

vm_agent_get_fsinfoA

Return guest filesystem info (mountpoints, used/free bytes).

vm_agent_fstrimA

Issue fstrim to the guest VM, returning free blocks to the hypervisor (reduces provisioned storage).

vm_agent_execA

Run a shell command inside a VM via the QEMU guest agent. Returns a pid; poll exec_status for output.

vm_agent_exec_statusA

Return exit status + captured stdout/stderr for a previously launched exec.

vm_agent_set_user_passwordA

Set a user password inside the guest via QEMU agent. HIGH RISK — ask the user to confirm before invoking.

vm_sendkeyA

Send a key combination to a QEMU VM (useful for unlocking screens, sending Ctrl+Alt+Del, etc.).

vm_monitorB

Run an arbitrary QEMU monitor command. Examples: 'info status', 'dump-guest-memory', 'screendump /tmp/screen.ppm'. MEDIUM RISK.

vm_firewall_rulesB

Return the firewall rules for a VM's network interface.

vm_firewall_optionsB

Return VM-level firewall options (enable, dhcp, macfilter, etc.).

get_container_rrdC

Return RRD time series for an LXC container.

get_container_rrddataC

Return recent RRD samples for an LXC container.

container_firewall_rulesC

Return firewall rules for an LXC container.

container_firewall_optionsC

Return container firewall options.

execute_container_commandA

Run a shell command inside an LXC container by shelling out to pct exec <vmid> -- <cmd> on the host. Requires SSH access (PROXMOX_SSH_* env).

migrate_vmA

Migrate a VM to a different node (live or offline). With online=true the VM keeps running during migration.

move_vm_diskA

Move a VM's disk to a different storage pool. Useful for migrating off slow disks or balancing storage.

convert_vm_to_templateA

Convert a VM into a Proxmox template (subsequent clones can use it as a source). HIGH RISK — original VM becomes read-only. Ask the user to confirm before invoking.

unlink_vm_diskA

Detach a disk from a VM (the disk file remains on the storage pool). Use move_vm_disk to migrate; use delete via Proxmox UI to actually remove.

migrate_containerB

Migrate an LXC container to a different node (online/offline). With online=true the container keeps running.

move_container_diskC

Move a container volume to a different storage pool.

convert_container_to_templateA

Convert an LXC container into a template. HIGH RISK — original becomes read-only. Ask the user to confirm before invoking.

unlink_container_diskB

Detach an LXC volume (file remains on storage pool).

vm_vncproxyB

Generate a VNC ticket and port to open a remote console to the VM. Returns a one-time ticket for noVNC clients.

vm_termproxyC

Generate a serial terminal (termproxy) ticket for the VM.

vm_spiceproxyB

Generate a SPICE ticket for high-fidelity VM console access.

vm_mtunnelA

Open a tunnel for VM migration. Returns port/ticket info for the migration proxy.

vm_mtunnelwebsocketC

Upgrade an existing migration tunnel to a WebSocket.

vm_featureC

Enable or disable a Proxmox VM feature (snapshot, clone, clone_from_template, migration).

container_vncproxyC

Generate a VNC ticket for an LXC container console.

container_termproxyB

Generate a terminal proxy ticket for an LXC container.

container_spiceproxyB

Generate a SPICE ticket for an LXC container.

list_poolsA

List all resource pools cluster-wide with member counts.

get_poolA

Get a single resource pool with its members.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/ngocdd/proxmox-mcps'

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