proxmox-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PROXMOX_HOST | Yes | Hostname/IP of Proxmox host (no scheme) | |
| PROXMOX_PORT | No | Proxmox API port (default 8006) | 8006 |
| PROXMOX_USER | Yes | Proxmox user, e.g., agent@pve | |
| PROXMOX_SSH_HOST | No | SSH host for exec (defaults to PROXMOX_HOST) | |
| PROXMOX_SSH_PORT | No | SSH port (default 22) | 22 |
| PROXMOX_SSH_USER | No | SSH user (default root) | root |
| PROXMOX_TOKEN_NAME | Yes | API token name, e.g., mcp | |
| PROXMOX_VERIFY_SSL | No | Verify SSL certificate (default false) | false |
| PROXMOX_ENABLE_EXEC | No | Enable in-guest exec (default false) | false |
| PROXMOX_TOKEN_VALUE | Yes | API token secret | |
| PROXMOX_SSH_KEY_FILE | No | Path to private SSH key | |
| PROXMOX_SSH_PASSWORD | No | SSH password (used only if no key file) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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 all nodes in the Proxmox cluster. |
| node_statusC | Get status and resource usage for a single node. |
| cluster_resourcesC | List cluster resources of a given type (e.g. vm, storage, node). |
| list_vmsB | List QEMU virtual machines on a node. |
| list_containersC | List LXC containers on a node. |
| vm_statusC | Get the current runtime status of a QEMU VM. |
| container_statusC | Get the current runtime status of an LXC container. |
| vm_configC | Get the configuration of a QEMU VM. |
| container_configC | Get the configuration of an LXC container. |
| list_storageC | List storage available on a node. |
| list_templatesB | List content (ISOs, container templates, backups) in a storage on a node. |
| next_vmidA | Get the next free cluster-wide VM/container id. |
| get_task_statusC | Get a Proxmox task status by UPID and classify its final result. |
| list_tasksC | List recent Proxmox tasks for a node. |
| start_vmC | Start a QEMU VM; returns the task UPID. |
| stop_vmB | Hard-stop a QEMU VM (immediate power off); returns the task UPID. |
| shutdown_vmC | Gracefully shut down a QEMU VM via ACPI; returns the task UPID. |
| reboot_vmC | Reboot a QEMU VM; returns the task UPID. |
| start_containerB | Start an LXC container; returns the task UPID. |
| stop_containerA | Hard-stop an LXC container (immediate power off); returns the task UPID. |
| shutdown_containerC | Gracefully shut down an LXC container via ACPI; returns the task UPID. |
| reboot_containerC | Reboot an LXC container; returns the task UPID. |
| create_containerB | Create an LXC container; returns a UPID, or final task status when wait=True. |
| create_vmC | Create a QEMU VM; returns a UPID, or final task status when wait=True. |
| clone_vmC | Clone a QEMU VM; returns a UPID, or final task status when wait=True. |
| clone_containerC | Clone an LXC container; returns a UPID, or final task status when wait=True. |
| set_vm_configB | Update the configuration of a QEMU VM (PUT); requires at least one field. |
| set_container_configB | Update the configuration of an LXC container (PUT); requires at least one field. |
| allocate_vmidA | Get the next free cluster-wide VM/container id to use before a create. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 29 tools
Each tool targets a distinct resource (container, VM, node, cluster, storage) and action (create, clone, list, get, set, start, stop, reboot, shutdown). Descriptions clearly differentiate between container and VM operations, and there is no overlap.
Most tools follow a verb_noun pattern (e.g., list_containers, create_vm), but there are minor inconsistencies: 'container_config' and 'vm_config' lack the 'get_' prefix, 'next_vmid' is not verb_noun, and 'allocate_vmid' and 'next_vmid' overlap in purpose.
29 tools cover the core aspects of Proxmox cluster management (VMs, containers, nodes, storage, tasks, IDs) without being excessive. The scope is appropriate for a comprehensive MCP server.
The set covers creation, cloning, status, configuration, and lifecycle actions, but lacks delete operations for containers and VMs. Missing features like migration, snapshots, and network management, but core workflows are present.