proxmox-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PROXMOX_BASE_URL | Yes | The scheme, host, and optional port of the Proxmox VE API (e.g., https://proxmox.example.com:8006) | |
| PROXMOX_TOKEN_ID | Yes | The API token ID (e.g., mcp@pve!proxmox) | |
| PROXMOX_VERIFY_TLS | No | Whether to verify TLS certificates. Set to 'false' for self-signed certificates. | false |
| PROXMOX_TOKEN_SECRET | Yes | The API token secret |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_nodesA | List Proxmox nodes with status and resource usage (CPU, memory in GB, uptime). |
| list_guestsA | List all VMs and containers across the cluster. Returns vmid, name, node, type (qemu=VM, lxc=container), status, and usage. Optionally filter by type ("qemu" or "lxc"). |
| guest_statusB | Detailed current status of one VM or container. Needs node (e.g. "pve1"), vmid, and type ("qemu" or "lxc"). Use list_guests first to find these. |
| storageA | List storage pools with real usage (GB). Optionally scope to one node. Uses the per-node endpoint (which reports used/total/avail); with no node it queries every node so usage is populated rather than null. |
| storage_contentA | List what's stored on a storage pool — templates, ISOs, backups, disk images.
|
| recent_tasksB | Recent task log for a node (migrations, starts, backups, etc.). |
| task_statusA | Status (and tail of the log) of a Proxmox task by its UPID. Get a UPID from |
| guest_configA | Full provisioning config of a VM/container: cores, memory (MB), disks/mounts, network, etc. Needs node, vmid, type ("qemu"/"lxc"). Returns Proxmox's raw config keys
(e.g. |
| guest_networkA | Live network interfaces and IP addresses of a running guest. LXC reads directly; QEMU requires the guest agent (returns a note if it's not installed/running). Needs node, vmid, type. |
| start_guestA | Start a stopped VM or container. Needs node, vmid, type ("qemu"/"lxc"). |
| shutdown_guestA | Gracefully shut down a guest (sends ACPI/clean shutdown to the OS). Preferred over stop_guest. Needs node, vmid, type. |
| stop_guestA | Hard-stop a guest (pulls the virtual power cord — may lose unsaved data). Use shutdown_guest unless the guest is unresponsive. Needs node, vmid, type. |
| reboot_guestC | Reboot a guest gracefully. Needs node, vmid, type. |
| set_guest_resourcesA | Change a guest's CPU cores and/or memory. RECONFIGURES the guest.
Provide at least one. For LXC this applies live (no reboot). For QEMU, core/
memory changes generally take effect on the next reboot. Read the current
values first with |
| list_snapshotsC | List a guest's snapshots (plus the synthetic |
| create_snapshotA | Take a snapshot named Optional |
| rollback_snapshotA | Roll a guest BACK to snapshot Two-step by design: call without |
| delete_snapshotA | Delete snapshot Needs node, vmid, type. Returns the task UPID. |
| list_backupsA | List backup archives on a storage, newest first. Optionally filter to one vmid. Needs the node and storage id (from |
| create_backupA | Back up a guest now (vzdump) to
Returns the task UPID (track with |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
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/nrohozen/proxmox-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server