Proxmox MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PROXMOX_HOST | Yes | Proxmox API URL | |
| PROXMOX_TOKEN_ID | Yes | API Token ID | |
| PROXMOX_TOKEN_SECRET | Yes | API Token Secret |
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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pve_versionB | Get Proxmox VE API version information |
| pve_list_usersC | List all users |
| pve_get_userC | Get user configuration |
| pve_create_userC | Create a new user |
| pve_update_userC | Update user configuration |
| pve_delete_userC | Delete a user |
| pve_list_groupsC | List all groups |
| pve_get_groupC | Get group configuration |
| pve_create_groupC | Create a new group |
| pve_update_groupC | Update group configuration |
| pve_delete_groupC | Delete a group |
| pve_list_rolesB | List all roles |
| pve_get_roleC | Get role configuration |
| pve_create_roleC | Create a new role |
| pve_update_roleC | Update role configuration |
| pve_delete_roleC | Delete a role |
| pve_get_aclC | Get Access Control List |
| pve_update_aclC | Update Access Control List |
| pve_list_domainsB | List authentication domains/realms |
| pve_get_domainC | Get authentication domain configuration |
| pve_cluster_statusB | Get cluster status information |
| pve_cluster_resourcesC | List all cluster resources (VMs, containers, storage, nodes) |
| pve_cluster_tasksB | List recent cluster tasks |
| pve_cluster_optionsC | Get cluster options |
| pve_cluster_set_optionsD | Set cluster options |
| pve_cluster_nextidC | Get next free VMID |
| pve_cluster_logC | Read cluster log |
| pve_list_backup_jobsB | List all backup jobs |
| pve_get_backup_jobC | Get backup job configuration |
| pve_create_backup_jobC | Create a new backup job |
| pve_update_backup_jobC | Update a backup job |
| pve_delete_backup_jobC | Delete a backup job |
| pve_ha_statusC | Get HA cluster status |
| pve_list_ha_resourcesC | List HA resources |
| pve_get_ha_resourceC | Get HA resource configuration |
| pve_create_ha_resourceC | Create HA resource |
| pve_update_ha_resourceC | Update HA resource |
| pve_delete_ha_resourceD | Delete HA resource |
| pve_list_ha_groupsC | List HA groups |
| pve_get_ha_groupC | Get HA group configuration |
| pve_create_ha_groupC | Create HA group |
| pve_update_ha_groupC | Update HA group |
| pve_delete_ha_groupC | Delete HA group |
| pve_cluster_firewall_optionsC | Get cluster firewall options |
| pve_set_cluster_firewall_optionsC | Set cluster firewall options |
| pve_list_cluster_firewall_rulesC | List cluster firewall rules |
| pve_create_cluster_firewall_ruleC | Create cluster firewall rule |
| pve_list_security_groupsB | List firewall security groups |
| pve_create_security_groupC | Create firewall security group |
| pve_list_ipsetsB | List cluster IP sets |
| pve_create_ipsetC | Create cluster IP set |
| pve_list_firewall_aliasesC | List firewall aliases |
| pve_create_firewall_aliasC | Create firewall alias |
| pve_list_replication_jobsC | List replication jobs |
| pve_get_replication_jobC | Get replication job configuration |
| pve_create_replication_jobC | Create replication job |
| pve_delete_replication_jobC | Delete replication job |
| pve_list_nodesB | List all cluster nodes |
| pve_get_node_statusC | Get node status and statistics |
| pve_get_node_versionC | Get node version information |
| pve_get_node_timeC | Get node time and timezone |
| pve_set_node_timeC | Set node timezone |
| pve_get_node_dnsC | Get node DNS configuration |
| pve_set_node_dnsC | Set node DNS configuration |
| pve_get_node_syslogC | Read node system log |
| pve_get_node_journalC | Read node journal |
| pve_get_node_subscriptionC | Get node subscription status |
| pve_get_node_reportC | Generate node diagnostic report |
| pve_node_start_allC | Start all VMs and containers on node |
| pve_node_stop_allC | Stop all VMs and containers on node |
| pve_list_node_servicesC | List node services |
| pve_get_node_service_stateC | Get service state |
| pve_node_service_startC | Start a service |
| pve_node_service_stopC | Stop a service |
| pve_node_service_restartC | Restart a service |
| pve_node_service_reloadC | Reload a service |
| pve_list_node_networksB | List node network interfaces |
| pve_get_node_networkB | Get network interface configuration |
| pve_create_node_networkD | Create network interface |
| pve_update_node_networkC | Update network interface |
| pve_delete_node_networkC | Delete network interface |
| pve_apply_node_networkC | Apply network changes (reload config) |
| pve_revert_node_networkC | Revert pending network changes |
| pve_list_node_tasksD | List node tasks |
| pve_get_node_task_statusC | Get task status |
| pve_get_node_task_logD | Get task log |
| pve_stop_node_taskC | Stop a running task |
| pve_list_node_storageC | List node storage |
| pve_get_node_storage_statusC | Get storage status |
| pve_list_node_storage_contentC | List storage content |
| pve_upload_to_storageC | Upload ISO or template to storage (returns upload URL info) |
| pve_download_url_to_storageC | Download file from URL to storage |
| pve_delete_storage_contentC | Delete storage content (volume) |
| pve_list_node_disksC | List node disks |
| pve_get_node_disk_smartC | Get disk SMART data |
| pve_initialize_disk_gptC | Initialize disk with GPT partition table |
| pve_wipe_diskC | Wipe disk partition table |
| pve_list_node_certificatesC | List node certificates |
| pve_get_node_acmeC | Get node ACME account info |
| pve_order_node_certificateC | Order new ACME certificate |
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 166 tools
The tools are highly specific and well-differentiated by resource type (VM, container, node, storage, etc.) and action (create, get, list, update, delete). Overlap is minimal, with clear distinctions like pve_get_vm_config vs pve_get_vm_status, and pve_list_vms vs pve_list_containers. The sheer number of tools might cause some confusion, but each serves a distinct purpose within the Proxmox domain.
Naming is exceptionally consistent throughout the entire set. Every tool follows the pattern pve_<action>_<resource> or pve_<action>_<resource>_<subresource>, using snake_case uniformly. Verbs like create, get, list, update, delete are applied predictably across resources, making the toolset highly readable and systematic.
With 166 tools, the count is excessive for an MCP server, far beyond the typical well-scoped range of 3-15 tools. While Proxmox is a complex system, this many tools will overwhelm agents, increase cognitive load, and likely lead to misselection or inefficiency. The scope feels more like a direct API mapping than a curated tool surface.
The toolset provides comprehensive coverage of the Proxmox VE domain, including full CRUD operations for VMs, containers, storage, users, groups, firewall rules, backups, replication, HA, and node management. It supports lifecycle actions (start, stop, migrate, snapshot) and administrative tasks (network, certificates, services), leaving no obvious gaps for core workflows.