Proxmox VE MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PROXMOX_HOST | Yes | Host address and port of Proxmox VE instance | |
| PROXMOX_USER | No | Proxmox VE user identity | user@Permisions |
| PROXMOX_TIMEOUT | No | HTTP request timeout in seconds | 30.0 |
| PROXMOX_PASSWORD | No | User password for API ticket authentication | |
| PROXMOX_TOKEN_ID | No | API Token ID (takes precedence if provided) | |
| MCP_AUDIT_ENABLED | No | Enable JSON lines structured audit logging | true |
| MCP_AUDIT_LOG_PATH | No | Path to append structured audit records | audit.log |
| PROXMOX_VERIFY_SSL | No | Verify TLS certificates | false |
| PROXMOX_MAX_RETRIES | No | Maximum retry attempts on transient network errors | 3 |
| MCP_PERMISSION_LEVEL | No | Baseline permission scope (read_only, operator, admin) | operator |
| PROXMOX_TOKEN_SECRET | No | API Token Secret key | |
| MCP_ALLOWED_CLIENT_IPS | No | Comma-separated CIDR subnets allowed to execute MCP commands |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_vmsB | List all QEMU virtual machines on a specified node. |
| get_vm_statusC | Fetch detailed runtime status of a QEMU virtual machine. |
| get_vm_configC | Fetch configuration settings of a QEMU virtual machine. |
| create_vmC | Create a new QEMU virtual machine on a specified node. |
| clone_vmB | Clone an existing virtual machine or template. |
| migrate_vmC | Migrate a virtual machine to another node in the cluster. |
| delete_vmA | Delete a QEMU virtual machine and purge resources. DESTRUCTIVE: Requires confirm=True. |
| start_vmB | Start a stopped QEMU virtual machine. |
| stop_vmA | Forcefully stop (power off) a QEMU virtual machine. DESTRUCTIVE: Requires confirm=True. |
| shutdown_vmA | Gracefully shutdown a QEMU virtual machine via ACPI signal. |
| reboot_vmC | Reboot a running QEMU virtual machine. |
| pause_vmB | Pause execution of a running QEMU virtual machine. |
| resume_vmB | Resume execution of a paused QEMU virtual machine. |
| suspend_vmC | Suspend virtual machine state to disk. |
| template_vmB | Convert a QEMU virtual machine to a reusable template. |
| update_cpu_vmC | Update CPU core and socket allocation of a virtual machine. |
| update_memory_vmB | Update RAM memory size and ballooning configuration of a VM. |
| resize_vm_diskC | Extend the capacity of a virtual machine disk. |
| add_vm_diskC | Attach a new virtual disk volume to a VM. |
| move_vm_diskB | Move a virtual machine disk to a different storage pool. |
| get_cloudinit_config_vmB | Fetch Cloud-Init configuration settings of a virtual machine. |
| configure_cloudinit_vmC | Configure Cloud-Init settings for automated OS setup. |
| regenerate_cloudinit_vmC | Regenerate the Cloud-Init drive image for a VM. |
| list_snapshots_vmB | List all snapshots for a specified virtual machine. |
| create_snapshot_vmC | Create a snapshot of a virtual machine. |
| rollback_snapshot_vmA | Rollback virtual machine state to a snapshot. DESTRUCTIVE: Requires confirm=True. |
| delete_snapshot_vmA | Delete a virtual machine snapshot. DESTRUCTIVE: Requires confirm=True. |
| list_containersA | List all LXC containers on a specified node. |
| get_container_statusB | Fetch detailed runtime status of an LXC container. |
| get_container_configC | Fetch configuration settings of an LXC container. |
| create_containerC | Create a new LXC container. Default unprivileged=True. |
| clone_containerC | Clone an existing LXC container or template. |
| template_containerB | Convert an LXC container to a reusable template. |
| delete_containerA | Delete an LXC container and purge resources. DESTRUCTIVE: Requires confirm=True. |
| start_containerA | Start a stopped LXC container. |
| stop_containerA | Forcefully stop an LXC container. DESTRUCTIVE: Requires confirm=True. |
| shutdown_containerB | Gracefully shutdown an LXC container. DESTRUCTIVE: Requires confirm=True. |
| restart_containerA | Reboot/restart an LXC container. DESTRUCTIVE: Requires confirm=True. |
| resize_container_diskC | Extend rootfs or disk capacity of an LXC container. |
| update_resources_containerC | Update CPU cores, memory, or swap resources of an LXC container. |
| configure_features_containerC | Configure feature flags (nesting, keyctl, fuse) for an LXC container. |
| add_bind_mount_containerB | Add a mount point or bind mount to an LXC container. |
| remove_bind_mount_containerA | Remove a mount point from an LXC container. DESTRUCTIVE: Requires confirm=True. |
| configure_network_containerC | Configure network adapter settings for an LXC container. |
| configure_dns_containerC | Update DNS nameserver and searchdomain settings for an LXC container. |
| list_snapshots_containerA | List all snapshots for an LXC container. |
| create_snapshot_containerB | Create a snapshot of an LXC container. |
| rollback_snapshot_containerA | Rollback LXC container state to a snapshot. DESTRUCTIVE: Requires confirm=True. |
| delete_snapshot_containerA | Delete an LXC container snapshot. DESTRUCTIVE: Requires confirm=True. |
| cluster_healthA | Fetch aggregated health summary, node counts, VM counts, and CPU/memory utilization of the Proxmox cluster. |
| cluster_resourcesA | Fetch resource list across the Proxmox cluster with optional type filtering (node, qemu, lxc, storage). |
| list_nodesA | List all nodes in the Proxmox cluster with status and resource utilization. |
| node_statusA | Fetch detailed hardware metrics, CPU/memory usage, kernel version, and status for a specific node. |
| list_storageA | List storage pools globally or for a specific node, including type, status, and calculated space usage. |
| storage_contentA | List volume items (VM disks, ISOs, LXC templates, backups) inside a storage pool on a node with optional content_type filter. |
| storage_statusA | Fetch capacity, total/used bytes, and detailed status for a specific storage pool on a node. |
| recent_tasksB | List recent asynchronous background tasks globally or for a specific node, with optional status and limit filters. |
| task_statusA | Fetch status and exit status of an asynchronous Proxmox background task by UPID. |
| run_provisioning_workflowC | Execute multi-step VM or LXC container provisioning with automated step tracing and failure rollback. |
| run_bulk_operationA | Execute batch lifecycle actions (start, stop, shutdown, pause, resume) across VMs or LXC containers matching filters. |
| run_backup_flowA | Execute multi-step backup workflow: storage pre-checks, pre-backup snapshotting, vzdump execution, and cleanup. |
| run_cluster_checkA | Aggregate cluster readiness state including node health, quorum state, storage space, and task health. |
| check_client_ipA | Verify whether a given client IP address is allowed by the security policy whitelist. |
| audit_security_rulesA | Fetch current security audit status, CIDR rules, and sensitive key scrubbing configuration. |
| get_security_summaryA | Retrieve security policy configuration and status summary. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| provision_vm | Prompt template guiding VM provisioning workflow. |
| vm_snapshot_workflow | Prompt template guiding VM snapshot maintenance workflow. |
| cloudinit_config | Prompt template guiding Cloud-Init configuration and drive setup workflow. |
| provision_container | Prompt template guiding LXC container provisioning workflow. |
| lxc_troubleshooting | Prompt template guiding LXC container diagnostic and troubleshooting workflow. |
| lxc_snapshot_workflow | Prompt template guiding LXC container snapshot maintenance workflow. |
| cluster_diagnostics | Prompt template guiding cluster health and diagnostic review. |
| node_diagnostics | Prompt template guiding node diagnostic and resource inspection workflow. |
| storage_inspection | Prompt template guiding storage usage inspection workflow. |
| task_troubleshooting | Prompt template guiding task log and UPID inspection workflow. |
| workflow_selection | Prompt template guiding interactive workflow selection and parameter gathering. |
| guided_provisioning | Prompt template guiding structured VM or LXC container provisioning parameters. |
| security_audit | Prompt template guiding runtime security policy audit and verification. |
| ip_permission_check | Prompt template guiding client IP access evaluation. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_cluster_summary_resource | Resource endpoint providing live JSON summary of cluster health and metrics. |
| get_cluster_health_resource | Resource endpoint providing JSON health summary of the cluster. |
| get_security_status_resource | Resource endpoint providing live JSON status of runtime security configuration and metrics. |
| get_security_policy_resource | Resource endpoint providing active security policy configuration as JSON. |
| get_security_audit_summary_resource | Resource endpoint providing audit summary statistics as JSON. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/MTDEV2312/Proxmox_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server