proxmox-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| resource_summaryA | Get a one-shot overview of the whole Proxmox host: node health, every VM and container, and every storage. Start here — it orients you in a single call instead of a dozen. |
| node_statusA | Get detailed live status for the Proxmox node: CPU, memory, swap, root filesystem, load average, uptime, kernel, and PVE version. |
| list_guestsA | List every VM and LXC container with vmid, name, type, status, and the confirm token used by destructive tools. |
| guest_configA | Get the full configuration of a VM or container: disks, network interfaces, memory, CPU, boot order, and every other config key. |
| guest_statusA | Get live runtime status for a VM or container: power state, uptime, CPU and memory usage, disk and network I/O counters. |
| list_storageA | List configured storages with type, enabled state, content types allowed, and space used vs available. |
| storage_contentA | List volumes in a storage: disk images, ISOs, container templates, and backup archives. Args: storage: Storage ID, e.g. "local" or "local-lvm". content: Optional filter — "images", "iso", "vztmpl", "backup", "rootdir", "snippets". vmid: Optional filter to volumes belonging to one guest. |
| list_networksA | List network interfaces on the node: bridges, bonds, VLANs and physical NICs, with their configured and active state. |
| list_tasksA | List recent Proxmox tasks (the job log behind every operation), newest first. Use this to find out what happened and why something failed. Args: limit: Maximum tasks to return. errors_only: Only tasks that ended in an error. vmid: Only tasks for one guest. typefilter: Only one task type, e.g. "vzdump", "qmstart", "qmdestroy". |
| task_logA | Get the status and full output log of one task, identified by its UPID. Args: upid: Task ID, e.g. "UPID:pve:0000ABCD:...". limit: Maximum log lines. |
| list_snapshotsA | List snapshots of a VM or container, including the synthetic "current" entry, with the confirm token needed to delete or roll back each one. |
| list_backupsA | List backup archives across every backup-capable storage, plus the configured scheduled backup jobs. Args: vmid: Optional filter to one guest's backups. |
| node_servicesA | List Proxmox system services (pveproxy, pvedaemon, pve-cluster, ...) and whether each is running. |
| read_syslogA | Read the node's system log, newest entries last. Args: limit: Maximum lines to return. since: Optional start time, e.g. "2026-08-05" or "-1h". service: Optional systemd unit to filter to, e.g. "pveproxy". |
| list_accessA | List users, groups, roles, and resource pools configured on the host. |
| node_updatesA | List available package updates for the node, including which are security updates. Read-only — this does not install anything. |
| pve_discoverA | List the child endpoints of a Proxmox API path, so you can walk the API tree to anything the curated tools do not cover. Args: path: API path to list, e.g. "/", "/nodes", "/nodes/pve", "/cluster". |
| pve_getA | Read any Proxmox API endpoint directly. Always safe — GET never mutates. Use pve_discover to find paths. Example: pve_get("/nodes/pve/qemu/100/firewall/rules"). Args: path: Full API path, starting with "/". params: Optional query parameters. |
| start_guestA | Start a stopped VM or container. |
| shutdown_guestA | Gracefully shut down a VM or container, asking the guest OS to power off. Args: vmid: Guest to shut down. timeout: Seconds to wait for the guest before giving up. force_stop: Hard-stop the guest if the graceful shutdown times out. |
| stop_guestA | Immediately stop a VM or container, like pulling the power cord. The guest OS gets no chance to flush its disks — prefer shutdown_guest. |
| reboot_guestA | Gracefully reboot a VM or container. Args: vmid: Guest to reboot. timeout: Seconds to wait for the shutdown half of the reboot. |
| suspend_guestA | Suspend a running VM. Args: vmid: Guest to suspend. to_disk: Write memory state to disk (hibernate) instead of holding it in RAM. |
| resume_guestB | Resume a suspended VM or container. |
| wait_for_taskA | Block until a Proxmox task finishes, then report how it ended. Use this when another tool returned a UPID because the job outlived its polling budget. Args: upid: Task ID returned by an earlier tool. timeout: Maximum seconds to wait. |
| create_vmA | Create a new QEMU virtual machine. Args: vmid: New VM ID. Must not already exist — check list_guests first. name: VM name. memory_mb: RAM in megabytes. cores: CPU cores per socket. sockets: CPU sockets. disk: Boot disk spec, e.g. "local-lvm:32" for a 32 GB disk on local-lvm. iso: Installer ISO volume, e.g. "local:iso/debian-12.iso". Attached as ide2. bridge: Network bridge for net0. ostype: Proxmox OS type, e.g. "l26" (Linux 6.x), "win11". start: Start the VM once created. extra: Any other Proxmox VM config key, e.g. {"agent": "1", "bios": "ovmf"}. |
| create_containerA | Create a new LXC container. Args: vmid: New container ID. Must not already exist. hostname: Container hostname. ostemplate: Template volume, e.g. "local:vztmpl/debian-12-standard_12.7-1_amd64.tar.zst". Find available templates with storage_content(storage="local", content="vztmpl"). storage: Storage for the root filesystem. rootfs_gb: Root filesystem size in gigabytes. memory_mb: RAM in megabytes. cores: CPU cores. bridge: Network bridge for net0. ip: Address for net0 — "dhcp" or CIDR like "192.168.1.50/24". unprivileged: Run unprivileged. Leave true unless you need host device access. ssh_public_keys: Public keys to install for root. Prefer this over a password. start: Start the container once created. extra: Any other Proxmox container config key, e.g. {"nameserver": "1.1.1.1"}. |
| set_guest_configA | Change configuration keys on an existing VM or container. Args: vmid: Guest to reconfigure. settings: Config keys to set, e.g. {"memory": "4096", "cores": "4", "net0": "virtio,bridge=vmbr0", "onboot": "1", "tags": "web;prod"}. Read guest_config first to see current values. |
| grow_diskA | Grow a guest disk. Growth only — shrinking is destructive and lives in shrink_disk. Args: vmid: Guest whose disk to grow. disk: Disk key from guest_config, e.g. "scsi0", "virtio0", "rootfs". increment: Amount to add, e.g. "+10G" or "+512M". Must start with "+". |
| clone_guestA | Clone a VM or container into a new guest. Args: vmid: Source guest to clone. new_vmid: ID for the clone. Must not already exist. name: Name or hostname for the clone. full: Full independent copy. False makes a linked clone, which only works from a template and stays dependent on it. storage: Target storage for a full clone. Defaults to the source's. |
| create_snapshotA | Take a snapshot of a VM or container. Args: vmid: Guest to snapshot. snapname: Snapshot name. Letters, digits, hyphens and underscores. description: Optional note stored with the snapshot. include_ram: For VMs, also save RAM so the guest resumes mid-run. |
| create_backupA | Back up a VM or container with vzdump. Args: vmid: Guest to back up. storage: Backup-capable storage to write to. mode: "snapshot" (no downtime), "suspend", or "stop". compress: "zstd", "gzip", "lzo", or "0" for none. notes: Optional note attached to the archive. wait: Seconds to wait before returning a UPID instead of a result. |
| convert_to_templateA | Convert a stopped VM or container into a template. This is one-way — the guest can no longer be started, only cloned from. |
| download_to_storageA | Download an ISO or container template straight to a storage. Args: storage: Target storage, usually "local". url: HTTP(S) URL to fetch. filename: Filename to save as, e.g. "debian-12.iso". content: "iso" or "vztmpl". checksum: Optional expected checksum. Supply it when the source publishes one. checksum_algorithm: "md5", "sha1", "sha224", "sha256", "sha384", or "sha512". wait: Seconds to wait before returning a UPID instead of a result. |
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
- 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/ssan9876/proxmox-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server