Proxmox VE MCP Server
Manage Proxmox VE infrastructure including virtual machines, containers, storage, networking, firewall rules, high availability, and more.
MCP Info
| Attribute | Details |
|---|---|
| Docker Image | mcp/proxmox |
| Author | GethosTheWalrus |
| Repository | https://github.com/GethosTheWalrus/proxmox-mcp |
Image Building Info
| Attribute | Details |
|---|---|
| Dockerfile | https://github.com/GethosTheWalrus/proxmox-mcp/blob/060b7f5bbbf14bb69f1dac928f1566125e0b03b5/Dockerfile |
| Commit | 060b7f5bbbf14bb69f1dac928f1566125e0b03b5 |
| Docker Image built by | Docker Inc. |
| Docker Scout Health Score | Docker Scout Health Score |
| Verify Signature | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/proxmox --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
| Licence | Other |
Available Tools (286)
| Tools provided by this Server | Short Description |
|---|---|
add_firewall_ipset_entry |
Add an IP/CIDR to an IP set. |
allocate_storage_volume |
Allocate a new disk volume in storage. |
apply_sdn_changes |
Apply pending SDN configuration changes to all nodes. |
bulk_migrate_guests |
Bulk migrate guests to a target node. |
bulk_shutdown_guests |
Bulk shutdown guests across the cluster. |
bulk_start_guests |
Bulk start guests across the cluster. |
change_password |
Change a user's password. |
clone_container |
Clone a container. |
clone_vm |
Clone a VM to create a new one. |
convert_container_to_template |
Convert a container into a template (irreversible). |
convert_vm_to_template |
Convert a VM into a template (irreversible). |
create_backup_job |
Create a scheduled backup job. |
create_ceph_osd |
Create a new Ceph OSD on a device. |
create_ceph_pool |
Create a new Ceph pool. |
create_cluster_firewall_rule |
Create a cluster-level firewall rule. |
create_container |
Create a new LXC container. |
create_container_firewall_rule |
Create a firewall rule for an LXC container. |
create_container_snapshot |
Create a snapshot of a container. |
create_directory_storage |
Create a directory-based storage mount from a device. |
create_firewall_alias |
Create a firewall alias (named IP address or CIDR). |
create_firewall_group |
Create a new firewall security group. |
create_firewall_group_rule |
Add a rule to a firewall security group. |
create_firewall_ipset |
Create a new firewall IP set. |
create_group |
Create a new group. |
create_ha_group |
Create an HA group. |
create_ha_resource |
Add a resource to HA management. |
create_lvm |
Create a new LVM volume group on a device. |
create_lvmthin |
Create a new LVM thin pool. |
create_node_network_interface |
Create a network interface on a node. |
create_pool |
Create a resource pool. |
create_replication_job |
Create a storage replication job. |
create_role |
Create a new role with specific privileges. |
create_sdn_subnet |
Create a subnet for an SDN VNet. |
create_sdn_vnet |
Create an SDN VNet. |
create_sdn_zone |
Create an SDN zone. |
create_storage |
Create a new storage pool configuration. |
create_user |
Create a new user. |
create_user_token |
Create a new API token for a user. |
create_vm |
Create a new QEMU virtual machine. |
create_vm_firewall_rule |
Create a firewall rule for a QEMU VM. |
create_vm_snapshot |
Create a snapshot of a VM. |
create_vzdump |
Start an immediate backup (vzdump) on a node. |
create_zfs_pool |
Create a new ZFS pool. |
delete_backup_job |
Delete a scheduled backup job. |
delete_cluster_firewall_rule |
Delete a cluster-level firewall rule. |
delete_container |
Delete a container. |
delete_container_snapshot |
Delete a container snapshot. |
delete_firewall_alias |
Delete a firewall alias. |
delete_firewall_ipset_entry |
Remove an IP/CIDR from an IP set. |
delete_group |
Delete a group. |
delete_ha_group |
Delete an HA group. |
delete_ha_resource |
Remove a resource from HA management. |
delete_pool |
Delete a resource pool. |
delete_replication_job |
Delete a replication job. |
delete_role |
Delete a role. |
delete_sdn_vnet |
Delete an SDN VNet. |
delete_sdn_zone |
Delete an SDN zone. |
delete_storage |
Delete a storage pool configuration (does not delete data on the backend). |
delete_storage_volume |
Delete a volume from storage. |
delete_user |
Delete a user. |
delete_user_token |
Delete an API token. |
delete_vm |
Delete a VM. |
delete_vm_snapshot |
Delete a VM snapshot. |
download_appliance_template |
Download an appliance template to local storage. |
download_file_restore |
Download a file from a vzdump backup. |
download_url_to_storage |
Download a file from a URL directly to storage (ISO, template, etc.). |
dump_vm_cloudinit |
Dump the Cloud-Init generated config file (user-data, network-data, or meta-data). |
get_acl |
Get the full ACL (access control list) — shows all permission assignments. |
get_acme_account |
Get ACME account details. |
get_acme_directories |
List known ACME directory URLs. |
get_acme_plugin |
Get ACME plugin configuration. |
get_acme_tos |
Get the ACME Terms of Service URL. |
get_auth_domain |
Get authentication domain configuration. |
get_backup_job |
Get details of a specific backup job. |
get_backup_job_included_volumes |
Get volumes included in a backup job. |
get_ceph_config |
Get the raw Ceph configuration. |
get_ceph_crush_rules |
Get Ceph CRUSH rules. |
get_ceph_flags |
Get Ceph global flags (noout, noscrub, etc.). |
get_ceph_metadata |
Get Ceph metadata (versions, services across nodes). |
get_ceph_status_cluster |
Get Ceph cluster status (health, monitors, OSDs, PGs). |
get_ceph_status_node |
Get Ceph status from a specific node's perspective. |
get_cluster_config |
Get the current cluster configuration (corosync, nodes, join info). |
get_cluster_config_nodes |
List nodes configured in the cluster. |
get_cluster_firewall_options |
Get cluster-wide firewall options (enable, policy_in, policy_out, etc.). |
get_cluster_firewall_rule |
Get a specific cluster firewall rule. |
get_cluster_join_info |
Get info needed to join a node to this cluster. |
get_cluster_log |
Get the cluster log (recent events). |
get_cluster_options |
Get datacenter/cluster-wide options (keyboard layout, console, language, etc.). |
get_cluster_resources |
List all resources across the cluster (VMs, containers, storage, nodes). |
get_cluster_status |
Get cluster status (nodes online, quorum, HA state). |
get_cluster_tasks |
List recent tasks across all nodes in the cluster. |
get_cluster_totem |
Get the corosync totem configuration. |
get_container_config |
Get the configuration of a container. |
get_container_feature |
Check if a feature is available for a container (snapshot, clone, copy). |
get_container_firewall_options |
Get firewall options for an LXC container. |
get_container_interfaces |
Get network interfaces and IPs of a running container. |
get_container_pending |
Get pending configuration changes for a container. |
get_container_rrddata |
Get RRD statistics data for a container (CPU, memory, disk, network over time). |
get_container_status |
Get the current runtime status of a container. |
get_disk_smart |
Get S.M.A.R.T. |
get_firewall_group_rules |
List rules in a firewall security group. |
get_firewall_refs |
Get available firewall references (aliases, ipsets, names usable in rules). |
get_group |
Get group details. |
get_ha_group |
Get HA group configuration. |
get_ha_manager_status |
Get detailed HA manager status. |
get_ha_resource |
Get HA resource configuration. |
get_ha_status |
Get HA manager status (active, quorum, manager status). |
get_metric_server |
Get metric server configuration. |
get_next_vmid |
Get the next available VMID in the cluster. |
get_node_aplinfo |
List available appliance templates (LXC templates) that can be downloaded. |
get_node_apt_update |
List available package updates on a node. |
get_node_capabilities_qemu |
Get QEMU capabilities for a node: supported CPU models, machine types, etc. |
get_node_certificates |
Get certificate info for a node. |
get_node_config |
Get the configuration of a node (description, wakeonlan, etc.). |
get_node_disks |
List physical disks on a node. |
get_node_dns |
Get DNS settings for a node. |
get_node_firewall_log |
Get firewall log for a node. |
get_node_firewall_options |
Get firewall options for a specific node. |
get_node_hardware_pci |
List PCI hardware devices on a node (for passthrough). |
get_node_hardware_usb |
List USB hardware devices on a node. |
get_node_hosts |
Get the /etc/hosts file content for a node. |
get_node_journal |
Read systemd journal entries from a node. |
get_node_netstat |
Get network statistics for a node (per-interface traffic). |
get_node_network |
Get network interface configuration for a node. |
get_node_network_interface |
Get details for a specific network interface. |
get_node_report |
Generate a system report for a node (useful for diagnostics). |
get_node_status |
Get detailed status of a specific node including CPU, memory, disk, uptime, and kernel info. |
get_node_storage_scan |
Scan for available storage targets (NFS, CIFS, iSCSI, LVM, ZFS, PBS). |
get_node_storage_status |
Get usage status of a storage pool on a node (total, used, available). |
get_node_subscription |
Get subscription status for a node. |
get_node_syslog |
Read system log (syslog) entries from a node. |
get_node_time |
Get the current time and timezone of a node. |
get_node_version |
Get Proxmox VE version information for a specific node. |
get_permissions |
Check effective permissions for a user on a given path. |
get_pool |
Get pool configuration and members. |
get_replication_job |
Get a specific replication job configuration. |
get_role |
Get role details and its privileges. |
get_sdn_controller |
Get SDN controller configuration. |
get_sdn_ipam |
Get IPAM plugin configuration. |
get_sdn_vnet |
Get SDN VNet configuration. |
get_sdn_zone |
Get SDN zone configuration. |
get_storage_config |
Get configuration of a specific storage pool. |
get_storage_rrddata |
Get RRD statistics for a storage pool (usage over time). |
get_storage_volume_info |
Get details about a specific volume in storage. |
get_task_log |
Get log output of a specific task. |
get_task_status |
Get the status of a specific task by its UPID. |
get_user |
Get details for a specific user. |
get_user_token |
Get details for a specific API token. |
get_version |
Get the Proxmox VE API version information. |
get_vm_cloudinit |
Get Cloud-Init configuration for a VM. |
get_vm_config |
Get the configuration of a VM. |
get_vm_feature |
Check if a specific feature is available/supported for a VM (e.g. |
get_vm_firewall_options |
Get firewall options for a QEMU VM. |
get_vm_pending |
Get pending configuration changes for a VM (not yet applied). |
get_vm_rrddata |
Get RRD statistics data for a VM (CPU, memory, disk, network over time). |
get_vm_snapshot_config |
Get the configuration stored in a VM snapshot. |
get_vm_spiceproxy |
Create a SPICE proxy connection for a VM console. |
get_vm_status |
Get the current runtime status of a VM (state, CPU, memory, disk, network, uptime). |
get_vm_vncproxy |
Create a VNC proxy connection ticket for a VM (for console access). |
get_vzdump_defaults |
Get the default vzdump configuration for a node. |
get_vzdump_extractconfig |
Extract the guest configuration from a vzdump backup archive. |
get_zfs_pool |
Get details of a ZFS pool. |
initialize_gpt |
Initialize a disk with GPT partition table (WARNING: destroys all data). |
join_cluster |
Join a node to an existing cluster. |
list_acme_accounts |
List ACME (Let's Encrypt) accounts. |
list_acme_plugins |
List ACME DNS challenge plugins. |
list_auth_domains |
List configured authentication realms/domains (PAM, PVE, LDAP, AD, OpenID). |
list_backup_file_restore |
List files in a vzdump backup for single-file restore. |
list_backup_jobs |
List all scheduled backup jobs (vzdump) in the cluster. |
list_ceph_fs |
List CephFS filesystems. |
list_ceph_managers |
List Ceph managers. |
list_ceph_mds |
List Ceph metadata servers (MDS, for CephFS). |
list_ceph_monitors |
List Ceph monitors. |
list_ceph_osds |
List Ceph OSDs on a node. |
list_ceph_pools |
List Ceph pools. |
list_cluster_firewall_rules |
List cluster-level firewall rules. |
list_container_firewall_rules |
List firewall rules for an LXC container. |
list_container_snapshots |
List all snapshots of a container. |
list_containers |
List all LXC containers on a node with status, memory, CPU, and disk info. |
list_dir_mappings |
List directory mappings. |
list_directory_storage |
List directory-based storage mounts on a node. |
list_file_restore |
List files in a backup volume for file-level restore (PBS backups). |
list_firewall_aliases |
List cluster firewall aliases (named IP addresses/ranges). |
list_firewall_groups |
List firewall security groups (reusable sets of rules). |
list_firewall_ipset_entries |
List entries in a firewall IP set. |
list_firewall_ipsets |
List cluster firewall IP sets (named groups of IPs). |
list_firewall_macros |
List available firewall macros (predefined rule sets like SSH, HTTP, etc.). |
list_groups |
List all user groups. |
list_ha_groups |
List HA groups (define which nodes can run HA resources). |
list_ha_resources |
List all HA-managed resources. |
list_lvm_volumes |
List LVM volume groups on a node. |
list_lvmthin_pools |
List LVM thin pools on a node. |
list_metric_servers |
List configured metric servers (InfluxDB, Graphite). |
list_node_firewall_rules |
List firewall rules for a node. |
list_node_services |
List all system services on a node (pve, ssh, cron, etc.). |
list_node_storage |
List storage pools available on a specific node with usage info. |
list_node_tasks |
List recent tasks on a node. |
list_nodes |
List all nodes in the Proxmox cluster with their status, CPU, memory, and uptime. |
list_notification_endpoints |
List all configured notification endpoints (sendmail, gotify, smtp, webhook). |
list_notification_matchers |
List all notification matchers (rules that route notifications). |
list_notification_targets |
List all notification targets. |
list_pci_mappings |
List PCI device mappings for passthrough. |
list_pools |
List all resource pools. |
list_realm_sync_jobs |
List realm synchronization jobs. |
list_replication_jobs |
List all replication jobs in the cluster. |
list_roles |
List all available roles. |
list_scheduled_jobs |
List all scheduled cluster jobs (realm-sync, etc.). |
list_sdn_controllers |
List SDN controllers (e.g. |
list_sdn_dns |
List SDN DNS plugins. |
list_sdn_ipams |
List IPAM (IP Address Management) plugins. |
list_sdn_subnets |
List subnets for an SDN VNet. |
list_sdn_vnets |
List SDN virtual networks (VNets). |
list_sdn_zones |
List SDN zones. |
list_storage |
List all configured storage pools at the datacenter level. |
list_storage_content |
List content of a storage pool (disk images, ISOs, templates, backups). |
list_tfa |
List TFA (two-factor auth) entries. |
list_usb_mappings |
List USB device mappings for passthrough. |
list_user_tokens |
List API tokens for a user. |
list_users |
List all users in Proxmox. |
list_vm_firewall_rules |
List firewall rules for a QEMU VM. |
list_vm_snapshots |
List all snapshots of a VM. |
list_vms |
List all QEMU virtual machines on a node with status, memory, CPU, and disk info. |
list_zfs_pools |
List ZFS pools on a node. |
manage_node_service |
Start, stop, restart, or reload a system service on a node. |
migrate_container |
Migrate a container to another node. |
migrate_ha_resource |
Request migration of an HA resource to a different node. |
migrate_vm |
Migrate a VM to another node in the cluster. |
move_container_volume |
Move a container volume to different storage or to another container. |
move_vm_disk |
Move a VM disk to different storage or attach to another VM. |
order_node_certificate |
Order/renew ACME certificate for a node. |
proxmox_api_raw |
Make an arbitrary Proxmox API call for any endpoint not covered by specific tools. |
prune_storage_backups |
Prune (delete) old backups from storage according to retention policy. |
reboot_container |
Reboot a container. |
reboot_vm |
Reboot a VM via ACPI. |
register_acme_account |
Register a new ACME account. |
relocate_ha_resource |
Request relocation of an HA resource to a different node. |
reset_vm |
Hard reset a VM (like pressing the reset button). |
resize_container_disk |
Resize a container disk/volume. |
resize_vm_disk |
Resize a VM disk. |
resume_container |
Resume a suspended container. |
resume_vm |
Resume a suspended/paused VM. |
rollback_container_snapshot |
Rollback a container to a previous snapshot. |
rollback_vm_snapshot |
Rollback a VM to a previous snapshot (current state will be lost). |
run_apt_update |
Refresh the package index on a node (apt update). |
send_vm_key |
Send a key event to a VM (e.g. |
send_vm_monitor_command |
Send a QEMU monitor command to a VM (advanced/low-level). |
set_ceph_flags |
Set a Ceph global flag. |
set_cluster_firewall_options |
Set cluster-wide firewall options. |
set_node_firewall_options |
Set firewall options for a node. |
set_vm_firewall_options |
Set firewall options for a QEMU VM. |
shutdown_container |
Gracefully shut down a container. |
shutdown_vm |
Gracefully shut down a VM via ACPI. |
start_container |
Start a container. |
start_vm |
Start a VM. |
startall_node |
Start all VMs and containers on a node (respecting boot order). |
stop_container |
Hard-stop a container (immediate, like power off). |
stop_task |
Stop (abort) a running task. |
stop_vm |
Hard-stop a VM (like pulling the power plug). |
stopall_node |
Stop all VMs and containers on a node. |
suspend_container |
Suspend (freeze) a container. |
suspend_vm |
Suspend a VM (pause execution or hibernate to disk). |
sync_auth_domain |
Sync users/groups from an external auth domain (LDAP/AD). |
test_notification_target |
Send a test notification to a target. |
update_acl |
Add or remove ACL entries (permission assignments). |
update_backup_job |
Update a scheduled backup job. |
update_cluster_firewall_rule |
Update a cluster-level firewall rule. |
update_cluster_options |
Update datacenter/cluster-wide options. |
update_container_config |
Update the configuration of an existing container. |
update_group |
Update a group. |
update_ha_group |
Update an HA group. |
update_ha_resource |
Update an HA resource configuration. |
update_pool |
Update a resource pool (add/remove members). |
update_role |
Update role privileges. |
update_sdn_vnet |
Update an SDN VNet. |
update_storage |
Update an existing storage pool configuration. |
update_user |
Update an existing user. |
update_vm_cloudinit |
Set Cloud-Init parameters for a VM (user, password, SSH keys, network). |
update_vm_config |
Update the configuration of an existing VM. |
upload_to_storage |
Upload a file (ISO, template, etc.) to storage. |
vm_agent_exec |
Execute a command inside a VM via the QEMU Guest Agent. |
vm_agent_exec_status |
Get the status/result of a command previously executed via the guest agent. |
vm_agent_file_read |
Read a file from inside a VM via the guest agent. |
vm_agent_file_write |
Write content to a file inside a VM via the guest agent. |
vm_agent_get_info |
Get various system information from a VM via the guest agent. |
vm_agent_set_password |
Set a user password inside a VM via the guest agent. |
wakeonlan_node |
Send a Wake-on-LAN magic packet to a node. |
Tools Details
Tool: add_firewall_ipset_entry
Add an IP/CIDR to an IP set.
| Parameters | Type | Description |
|---|---|---|
cidr |
string |
IP address or CIDR. |
name |
string |
IP set name. |
comment |
string optional |
Description. |
nomatch |
boolean optional |
Exclude this entry (nomatch). |
Tool: allocate_storage_volume
Allocate a new disk volume in storage.
| Parameters | Type | Description |
|---|---|---|
filename |
string |
Volume name. |
node |
string |
The node name. |
size |
string |
Volume size (e.g. '10G'). |
storage |
string |
The storage ID. |
vmid |
integer |
VM ID to associate with. |
format |
string optional |
Disk format (raw, qcow2, vmdk). Auto-detected if empty. |
Tool: apply_sdn_changes
Apply pending SDN configuration changes to all nodes.
Tool: bulk_migrate_guests
Bulk migrate guests to a target node.
| Parameters | Type | Description |
|---|---|---|
target |
string |
Target node name. |
vms |
string optional |
Comma-separated VMIDs. |
Tool: bulk_shutdown_guests
Bulk shutdown guests across the cluster.
| Parameters | Type | Description |
|---|---|---|
vms |
string optional |
Comma-separated list of VMIDs (empty = all). |
Tool: bulk_start_guests
Bulk start guests across the cluster.
| Parameters | Type | Description |
|---|---|---|
vms |
string optional |
Comma-separated list of VMIDs (empty = all). |
Tool: change_password
Change a user's password.
| Parameters | Type | Description |
|---|---|---|
password |
string |
New password. |
userid |
string |
User ID (format: 'user@realm'). |
Tool: clone_container
Clone a container.
| Parameters | Type | Description |
|---|---|---|
newid |
integer |
ID for the new container. |
node |
string |
The source node name. |
vmid |
integer |
The source container ID. |
description |
string optional |
Description. |
full |
boolean optional |
Full clone (True) or linked clone (False). |
hostname |
string optional |
Hostname for the clone. |
pool |
string optional |
Resource pool. |
snapname |
string optional |
Snapshot to clone from. |
storage |
string optional |
Target storage for full clone. |
target |
string optional |
Target node (default: same node). |
Tool: clone_vm
Clone a VM to create a new one. Can be a full copy or linked clone.
| Parameters | Type | Description |
|---|---|---|
newid |
integer |
The VMID for the new clone. |
node |
string |
The source node name. |
vmid |
integer |
The source VM ID. |
description |
string optional |
Description for the clone. |
full |
boolean optional |
Full clone (True) or linked clone (False). |
name |
string optional |
Name for the clone. |
pool |
string optional |
Resource pool. |
snapname |
string optional |
Snapshot name to clone from. |
storage |
string optional |
Target storage for full clone. |
target |
string optional |
Target node for the clone (default: same node). |
Tool: convert_container_to_template
Convert a container into a template (irreversible).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: convert_vm_to_template
Convert a VM into a template (irreversible).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: create_backup_job
Create a scheduled backup job.
| Parameters | Type | Description |
|---|---|---|
storage |
string |
Target storage ID for backups. |
all_guests |
boolean optional |
Backup all guests. |
comment |
string optional |
Description. |
compress |
string optional |
Compression: 'none', 'lzo', 'gzip', 'zstd'. |
enabled |
boolean optional |
Enable the job. |
mailnotification |
string optional |
'always' or 'failure'. |
mailto |
string optional |
Comma-separated email addresses. |
maxfiles |
integer optional |
Max backup files to keep (0 = unlimited, deprecated - use prune_backups). |
mode |
string optional |
Backup mode: 'snapshot', 'suspend', 'stop'. |
node |
string optional |
Only back up guests on this node. |
notes_template |
string optional |
Template for backup notes. |
prune_backups |
string optional |
Retention schedule (e.g. 'keep-daily=7,keep-weekly=4'). |
schedule |
string optional |
Schedule in systemd calendar format (e.g. 'daily', 'weekly', '02:00'). |
vmid |
string optional |
Comma-separated VMIDs to back up (if not all_guests). |
Tool: create_ceph_osd
Create a new Ceph OSD on a device.
| Parameters | Type | Description |
|---|---|---|
dev |
string |
Block device for the OSD (e.g. '/dev/sdb'). |
node |
string |
The node name. |
db_dev |
string optional |
Separate block device for DB. |
encrypted |
boolean optional |
Encrypt the OSD. |
wal_dev |
string optional |
Separate block device for WAL. |
Tool: create_ceph_pool
Create a new Ceph pool.
| Parameters | Type | Description |
|---|---|---|
name |
string |
Pool name. |
node |
string |
The node name. |
application |
string optional |
Pool application (rbd, cephfs, rgw). |
min_size |
integer optional |
Minimum replicas for I/O (default 2). |
pg_num |
integer optional |
Number of placement groups (default 128). |
size |
integer optional |
Number of replicas (default 3). |
Tool: create_cluster_firewall_rule
Create a cluster-level firewall rule.
| Parameters | Type | Description |
|---|---|---|
action |
string |
'ACCEPT', 'DROP', 'REJECT'. |
type |
string |
'in', 'out', 'group'. |
comment |
string optional |
Description. |
dest |
string optional |
Destination address/range. |
dport |
string optional |
Destination port(s). |
enable |
integer optional |
1 = enabled, 0 = disabled. |
iface |
string optional |
Network interface. |
log |
string optional |
Log level: 'emerg', 'alert', 'crit', 'err', 'warning', 'notice', 'info', 'debug', 'nolog'. |
macro |
string optional |
Use predefined macro (e.g. 'SSH', 'HTTP', 'HTTPS', 'Ping'). |
pos |
integer optional |
Rule position (-1 = append). |
proto |
string optional |
Protocol (tcp, udp, icmp, etc.). |
source |
string optional |
Source address/range (CIDR or alias). |
sport |
string optional |
Source port(s). |
Tool: create_container
Create a new LXC container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
ostemplate |
string |
Template volume (e.g. 'local:vztmpl/debian-12-standard_12.2-1_amd64.tar.zst'). |
vmid |
integer |
The container ID. |
cores |
integer optional |
CPU cores (default 1). |
cpulimit |
number optional |
CPU limit (0 = unlimited). |
description |
string optional |
Container description. |
features |
string optional |
Comma-separated features (e.g. 'nesting=1,keyctl=1'). |
hostname |
string optional |
Container hostname. |
memory |
integer optional |
Memory in MB (default 512). |
mp0 |
string optional |
Mount point (e.g. 'local-lvm:4,mp=/mnt/data'). |
nameserver |
string optional |
DNS nameserver. |
net0 |
string optional |
Network config (e.g. 'name=eth0,bridge=vmbr0,ip=dhcp'). |
onboot |
boolean optional |
Start on host boot. |
password |
string optional |
Root password. |
pool |
string optional |
Resource pool. |
rootfs |
string optional |
Root filesystem spec (e.g. 'local-lvm:8' for 8GB). |
searchdomain |
string optional |
DNS search domain. |
ssh_public_keys |
string optional |
SSH public keys (newline delimited). |
start |
boolean optional |
Start after creation. |
storage |
string optional |
Storage for rootfs (default 'local'). |
swap |
integer optional |
Swap in MB (default 512). |
tags |
string optional |
Semicolon-separated tags. |
unprivileged |
boolean optional |
Create an unprivileged container (default True, recommended). |
Tool: create_container_firewall_rule
Create a firewall rule for an LXC container.
| Parameters | Type | Description |
|---|---|---|
action |
string |
'ACCEPT', 'DROP', 'REJECT'. |
node |
string |
The node name. |
type |
string |
'in', 'out', 'group'. |
vmid |
integer |
The container ID. |
comment |
string optional |
Description. |
dest |
string optional |
Destination CIDR or alias. |
dport |
string optional |
Destination port(s). |
enable |
integer optional |
1 = enabled, 0 = disabled. |
macro |
string optional |
Predefined macro. |
proto |
string optional |
Protocol. |
source |
string optional |
Source CIDR or alias. |
Tool: create_container_snapshot
Create a snapshot of a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
Snapshot name. |
vmid |
integer |
The container ID. |
description |
string optional |
Snapshot description. |
Tool: create_directory_storage
Create a directory-based storage mount from a device.
| Parameters | Type | Description |
|---|---|---|
device |
string |
Block device path. |
name |
string |
Storage name. |
node |
string |
The node name. |
add_to_storage |
boolean optional |
Auto-add as Proxmox storage. |
filesystem |
string optional |
Filesystem type (ext4, xfs). |
Tool: create_firewall_alias
Create a firewall alias (named IP address or CIDR).
| Parameters | Type | Description |
|---|---|---|
cidr |
string |
IP address or CIDR (e.g. '10.0.0.0/24' or '192.168.1.1'). |
name |
string |
Alias name. |
comment |
string optional |
Description. |
Tool: create_firewall_group
Create a new firewall security group.
| Parameters | Type | Description |
|---|---|---|
group |
string |
Group name. |
comment |
string optional |
Description. |
Tool: create_firewall_group_rule
Add a rule to a firewall security group.
| Parameters | Type | Description |
|---|---|---|
action |
string |
'ACCEPT', 'DROP', 'REJECT'. |
group |
string |
Security group name. |
type |
string |
'in', 'out'. |
comment |
string optional |
Description. |
dest |
string optional |
Destination address/range. |
dport |
string optional |
Destination port(s). |
enable |
integer optional |
1 = enabled, 0 = disabled. |
macro |
string optional |
Predefined macro. |
proto |
string optional |
Protocol. |
source |
string optional |
Source address/range. |
sport |
string optional |
Source port(s). |
Tool: create_firewall_ipset
Create a new firewall IP set.
| Parameters | Type | Description |
|---|---|---|
name |
string |
IP set name. |
comment |
string optional |
Description. |
Tool: create_group
Create a new group.
| Parameters | Type | Description |
|---|---|---|
groupid |
string |
Group ID. |
comment |
string optional |
Description. |
Tool: create_ha_group
Create an HA group.
| Parameters | Type | Description |
|---|---|---|
group |
string |
Group ID. |
nodes |
string |
Node list with optional priority (e.g. 'node1:2,node2:1' — higher = preferred). |
comment |
string optional |
Description. |
nofailback |
boolean optional |
If true, don't fail back to higher-priority nodes once recovered. |
restricted |
boolean optional |
Only run on nodes in this group (otherwise runs anywhere but prefers group nodes). |
Tool: create_ha_resource
Add a resource to HA management.
| Parameters | Type | Description |
|---|---|---|
sid |
string |
Resource ID (format: 'type:vmid', e.g. 'vm:100' or 'ct:101'). |
comment |
string optional |
Description. |
group |
string optional |
HA group name. |
max_relocate |
integer optional |
Max relocations on failure. |
max_restart |
integer optional |
Max restarts on failure. |
state |
string optional |
Desired state: 'started', 'stopped', 'enabled', 'disabled', 'ignored'. |
Tool: create_lvm
Create a new LVM volume group on a device.
| Parameters | Type | Description |
|---|---|---|
device |
string |
Block device path (e.g. '/dev/sdb'). |
name |
string |
VG name. |
node |
string |
The node name. |
add_to_storage |
boolean optional |
Auto-add as Proxmox storage. |
Tool: create_lvmthin
Create a new LVM thin pool.
| Parameters | Type | Description |
|---|---|---|
device |
string |
Block device path. |
name |
string |
Thin pool name. |
node |
string |
The node name. |
add_to_storage |
boolean optional |
Auto-add as Proxmox storage. |
Tool: create_node_network_interface
Create a network interface on a node.
| Parameters | Type | Description |
|---|---|---|
iface |
string |
Interface name (e.g. 'vmbr1'). |
node |
string |
The node name. |
type |
string |
Interface type (bridge, bond, eth, alias, vlan, OVSBridge, OVSPort, OVSIntPort, OVSBond). |
address |
string optional |
IP address (CIDR notation or IP). |
autostart |
boolean optional |
Whether to start on boot. |
bridge_ports |
string optional |
Bridge ports (for bridge type). |
comments |
string optional |
Comments for the interface. |
gateway |
string optional |
Default gateway. |
netmask |
string optional |
Subnet mask. |
Tool: create_pool
Create a resource pool.
| Parameters | Type | Description |
|---|---|---|
poolid |
string |
Pool ID. |
comment |
string optional |
Description. |
Tool: create_replication_job
Create a storage replication job.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Job ID (format: GUEST-JOBNUM, e.g. '100-0'). |
target |
string |
Target node. |
comment |
string optional |
Description. |
disable |
boolean optional |
Create disabled. |
rate |
number optional |
Rate limit in mbps. |
schedule |
string optional |
Schedule in systemd calendar format (default '*/15' = every 15 min). |
type |
string optional |
Replication type (currently only 'local'). |
Tool: create_role
Create a new role with specific privileges.
| Parameters | Type | Description |
|---|---|---|
privs |
string |
Comma-separated list of privileges (e.g. 'VM.Allocate,VM.Config.Disk,VM.PowerMgmt'). |
roleid |
string |
Role ID. |
Tool: create_sdn_subnet
Create a subnet for an SDN VNet.
| Parameters | Type | Description |
|---|---|---|
subnet |
string |
Subnet CIDR (e.g. '10.0.0.0/24'). |
vnet |
string |
VNet ID. |
dnszoneprefix |
string optional |
DNS zone prefix. |
gateway |
string optional |
Gateway IP. |
snat |
boolean optional |
Enable SNAT. |
Tool: create_sdn_vnet
Create an SDN VNet.
| Parameters | Type | Description |
|---|---|---|
vnet |
string |
VNet ID. |
zone |
string |
Zone ID. |
alias |
string optional |
Display alias. |
tag |
integer optional |
VLAN tag. |
vlanaware |
boolean optional |
Enable VLAN-aware bridge. |
Tool: create_sdn_zone
Create an SDN zone.
| Parameters | Type | Description |
|---|---|---|
type |
string |
Zone type: 'simple', 'vlan', 'qinq', 'vxlan', 'evpn'. |
zone |
string |
Zone ID. |
bridge |
string optional |
Bridge name. |
dns |
string optional |
DNS plugin name. |
ipam |
string optional |
IPAM plugin name. |
mtu |
integer optional |
MTU. |
nodes |
string optional |
Comma-separated node list. |
Tool: create_storage
Create a new storage pool configuration.
| Parameters | Type | Description |
|---|---|---|
storage |
string |
Storage ID. |
type |
string |
Storage type: dir, lvm, lvmthin, zfspool, nfs, cifs, iscsi, rbd, cephfs, pbs, glusterfs, btrfs. |
content |
string optional |
Comma-separated content types (images, rootdir, vztmpl, iso, backup, snippets, import). |
datastore |
string optional |
PBS datastore name. |
disable |
boolean optional |
Create disabled. |
export |
string optional |
NFS export path. |
maxfiles |
integer optional |
Max backup files (0 = unlimited). |
nodes |
string optional |
Restrict storage to these nodes (comma-separated). |
path |
string optional |
File system path (for dir, nfs mounts). |
pool |
string optional |
Pool name (for Ceph RBD/CephFS, ZFS). |
portal |
string optional |
iSCSI portal. |
prune_backups |
string optional |
Backup retention policy. |
server |
string optional |
Server IP/hostname (for nfs, cifs, iscsi, pbs, glusterfs, rbd, cephfs). |
shared |
boolean optional |
Mark as shared storage. |
target |
string optional |
iSCSI target. |
thinpool |
string optional |
LVM thin pool name (for lvmthin). |
vgname |
string optional |
LVM volume group name. |
Tool: create_user
Create a new user.
| Parameters | Type | Description |
|---|---|---|
userid |
string |
User ID (format: 'user@realm', e.g. 'myuser@pve'). |
comment |
string optional |
Description. |
email |
string optional |
Email address. |
enable |
boolean optional |
Enable user. |
expire |
integer optional |
Account expiration (Unix epoch, 0 = never). |
firstname |
string optional |
First name. |
groups |
string optional |
Comma-separated group list. |
lastname |
string optional |
Last name. |
password |
string optional |
Password (only for pve/pam realms). |
Tool: create_user_token
Create a new API token for a user. Returns the token value (shown only once).
| Parameters | Type | Description |
|---|---|---|
tokenid |
string |
Token ID (alphanumeric). |
userid |
string |
User ID (format: 'user@realm'). |
comment |
string optional |
Token description. |
expire |
integer optional |
Expiration (Unix epoch, 0 = never). |
privsep |
boolean optional |
Enable privilege separation (token has own permissions, not user's full permissions). |
Tool: create_vm
Create a new QEMU virtual machine.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID number. |
agent |
string optional |
QEMU guest agent: '1' to enable, 'enabled=1,fstrim_cloned_disks=1'. |
bios |
string optional |
BIOS type: seabios, ovmf (UEFI). |
boot |
string optional |
Boot order (e.g. 'order=scsi0;ide2;net0'). |
cdrom |
string optional |
CD-ROM ISO image path. |
cores |
integer optional |
Number of CPU cores per socket (default 1). |
cpu |
string optional |
CPU type (default 'host'). |
description |
string optional |
VM description. |
ide2 |
string optional |
IDE device, often used for CD-ROM (e.g. 'local:iso/ubuntu.iso,media=cdrom'). |
machine |
string optional |
Machine type (e.g. 'q35', 'i440fx'). |
memory |
integer optional |
Memory in MB (default 2048). |
name |
string optional |
VM name. |
net0 |
string optional |
Network device (e.g. 'virtio,bridge=vmbr0'). |
onboot |
boolean optional |
Start on host boot. |
ostype |
string optional |
OS type: l26 (Linux 2.6+), win10, win11, wxp, other, etc. |
pool |
string optional |
Resource pool to add the VM to. |
scsi0 |
string optional |
First SCSI disk (e.g. 'local-lvm:32' for 32GB on local-lvm). |
scsihw |
string optional |
SCSI controller: virtio-scsi-single, virtio-scsi-pci, lsi, megasas, pvscsi. |
sockets |
integer optional |
Number of CPU sockets (default 1). |
start |
boolean optional |
Start the VM after creation. |
tags |
string optional |
Semicolon-separated tags. |
Tool: create_vm_firewall_rule
Create a firewall rule for a QEMU VM.
| Parameters | Type | Description |
|---|---|---|
action |
string |
'ACCEPT', 'DROP', 'REJECT'. |
node |
string |
The node name. |
type |
string |
'in', 'out', 'group'. |
vmid |
integer |
The VM ID. |
comment |
string optional |
Description. |
dest |
string optional |
Destination CIDR or alias. |
dport |
string optional |
Destination port(s). |
enable |
integer optional |
1 = enabled, 0 = disabled. |
macro |
string optional |
Predefined macro. |
proto |
string optional |
Protocol. |
source |
string optional |
Source CIDR or alias. |
Tool: create_vm_snapshot
Create a snapshot of a VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
Snapshot name. |
vmid |
integer |
The VM ID. |
description |
string optional |
Snapshot description. |
vmstate |
boolean optional |
Include RAM state (for running VMs). |
Tool: create_vzdump
Start an immediate backup (vzdump) on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node to run the backup on. |
all_guests |
boolean optional |
Back up all guests on the node. |
compress |
string optional |
Compression: 'none', 'lzo', 'gzip', 'zstd'. |
mode |
string optional |
Backup mode: 'snapshot', 'suspend', 'stop'. |
stdout |
boolean optional |
Write to stdout instead of storage. |
storage |
string optional |
Target storage (empty = default). |
vmid |
string optional |
Comma-separated VMIDs (required if not all_guests). |
Tool: create_zfs_pool
Create a new ZFS pool.
| Parameters | Type | Description |
|---|---|---|
devices |
string |
Space-separated device paths (e.g. '/dev/sdb /dev/sdc'). |
name |
string |
Pool name. |
node |
string |
The node name. |
raidlevel |
string |
RAID level: single, mirror, raid10, raidz, raidz2, raidz3, draid, draid2, draid3. |
add_to_storage |
boolean optional |
Auto-add as Proxmox storage. |
ashift |
integer optional |
ashift value (default 12). |
compression |
string optional |
Compression (on, off, lz4, zstd, etc.). |
Tool: delete_backup_job
Delete a scheduled backup job.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Backup job ID. |
Tool: delete_cluster_firewall_rule
Delete a cluster-level firewall rule.
| Parameters | Type | Description |
|---|---|---|
pos |
integer |
Rule position to delete. |
Tool: delete_container
Delete a container. Must be stopped first unless force=True.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
destroy_unreferenced_disks |
boolean optional |
Destroy unreferenced disks. |
force |
boolean optional |
Force destroy even if running. |
purge |
boolean optional |
Remove from replication, HA, backup and ACLs too. |
Tool: delete_container_snapshot
Delete a container snapshot.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
Snapshot name. |
vmid |
integer |
The container ID. |
force |
boolean optional |
Force delete. |
Tool: delete_firewall_alias
Delete a firewall alias.
| Parameters | Type | Description |
|---|---|---|
name |
string |
Alias name. |
Tool: delete_firewall_ipset_entry
Remove an IP/CIDR from an IP set.
| Parameters | Type | Description |
|---|---|---|
cidr |
string |
IP address or CIDR to remove. |
name |
string |
IP set name. |
Tool: delete_group
Delete a group.
| Parameters | Type | Description |
|---|---|---|
groupid |
string |
Group ID. |
Tool: delete_ha_group
Delete an HA group.
| Parameters | Type | Description |
|---|---|---|
group |
string |
Group ID. |
Tool: delete_ha_resource
Remove a resource from HA management.
| Parameters | Type | Description |
|---|---|---|
sid |
string |
Resource ID (format: 'type:vmid'). |
Tool: delete_pool
Delete a resource pool.
| Parameters | Type | Description |
|---|---|---|
poolid |
string |
Pool ID. |
Tool: delete_replication_job
Delete a replication job.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Replication job ID. |
force |
boolean optional |
Force removal (skip cleanup). |
keep |
boolean optional |
Keep replicated data on target. |
Tool: delete_role
Delete a role.
| Parameters | Type | Description |
|---|---|---|
roleid |
string |
Role ID. |
Tool: delete_sdn_vnet
Delete an SDN VNet.
| Parameters | Type | Description |
|---|---|---|
vnet |
string |
VNet ID. |
Tool: delete_sdn_zone
Delete an SDN zone.
| Parameters | Type | Description |
|---|---|---|
zone |
string |
Zone ID. |
Tool: delete_storage
Delete a storage pool configuration (does not delete data on the backend).
| Parameters | Type | Description |
|---|---|---|
storage |
string |
The storage ID. |
Tool: delete_storage_volume
Delete a volume from storage.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
volume |
string |
The volume ID. |
Tool: delete_user
Delete a user.
| Parameters | Type | Description |
|---|---|---|
userid |
string |
User ID to delete (format: 'user@realm'). |
Tool: delete_user_token
Delete an API token.
| Parameters | Type | Description |
|---|---|---|
tokenid |
string |
Token ID. |
userid |
string |
User ID (format: 'user@realm'). |
Tool: delete_vm
Delete a VM. The VM must be stopped first.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
destroy_unreferenced_disks |
boolean optional |
Also destroy unreferenced disks owned by the VM. |
purge |
boolean optional |
Remove from replication, HA, backup jobs and ACLs too. |
Tool: delete_vm_snapshot
Delete a VM snapshot.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
Snapshot name to delete. |
vmid |
integer |
The VM ID. |
force |
boolean optional |
Force delete even if snapshot is in use. |
Tool: download_appliance_template
Download an appliance template to local storage.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
Target storage ID. |
template |
string |
Template name to download. |
Tool: download_file_restore
Download a file from a vzdump backup.
| Parameters | Type | Description |
|---|---|---|
filepath |
string |
Path of the file to download from the backup. |
node |
string |
The node name. |
storage |
string |
Storage ID. |
volume |
string |
Backup volume ID. |
Tool: download_url_to_storage
Download a file from a URL directly to storage (ISO, template, etc.).
| Parameters | Type | Description |
|---|---|---|
content |
string |
Content type: 'iso', 'vztmpl'. |
filename |
string |
Target filename. |
node |
string |
The node name. |
storage |
string |
The storage ID. |
url |
string |
URL to download from. |
checksum |
string optional |
Expected checksum. |
checksum_algorithm |
string optional |
Checksum algorithm (sha256, sha512, md5). |
Tool: dump_vm_cloudinit
Dump the Cloud-Init generated config file (user-data, network-data, or meta-data).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
type |
string optional |
Config type: 'user', 'network', or 'meta'. |
Tool: get_acl
Get the full ACL (access control list) — shows all permission assignments.
Tool: get_acme_account
Get ACME account details.
| Parameters | Type | Description |
|---|---|---|
name |
string optional |
Account name (default: 'default'). |
Tool: get_acme_directories
List known ACME directory URLs.
Tool: get_acme_plugin
Get ACME plugin configuration.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Plugin ID. |
Tool: get_acme_tos
Get the ACME Terms of Service URL.
Tool: get_auth_domain
Get authentication domain configuration.
| Parameters | Type | Description |
|---|---|---|
realm |
string |
Realm ID (e.g. 'pam', 'pve', 'my-ldap'). |
Tool: get_backup_job
Get details of a specific backup job.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Backup job ID. |
Tool: get_backup_job_included_volumes
Get volumes included in a backup job.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Backup job ID. |
Tool: get_ceph_config
Get the raw Ceph configuration.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_ceph_crush_rules
Get Ceph CRUSH rules.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_ceph_flags
Get Ceph global flags (noout, noscrub, etc.).
Tool: get_ceph_metadata
Get Ceph metadata (versions, services across nodes).
Tool: get_ceph_status_cluster
Get Ceph cluster status (health, monitors, OSDs, PGs).
Tool: get_ceph_status_node
Get Ceph status from a specific node's perspective.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_cluster_config
Get the current cluster configuration (corosync, nodes, join info).
Tool: get_cluster_config_nodes
List nodes configured in the cluster.
Tool: get_cluster_firewall_options
Get cluster-wide firewall options (enable, policy_in, policy_out, etc.).
Tool: get_cluster_firewall_rule
Get a specific cluster firewall rule.
| Parameters | Type | Description |
|---|---|---|
pos |
integer |
Rule position number. |
Tool: get_cluster_join_info
Get info needed to join a node to this cluster.
Tool: get_cluster_log
Get the cluster log (recent events).
| Parameters | Type | Description |
|---|---|---|
max_entries |
integer optional |
Max log entries. |
Tool: get_cluster_options
Get datacenter/cluster-wide options (keyboard layout, console, language, etc.).
Tool: get_cluster_resources
List all resources across the cluster (VMs, containers, storage, nodes).
| Parameters | Type | Description |
|---|---|---|
type |
string optional |
Filter by type: 'vm', 'storage', 'node', 'sdn', 'pool' (empty = all). |
Tool: get_cluster_status
Get cluster status (nodes online, quorum, HA state).
Tool: get_cluster_tasks
List recent tasks across all nodes in the cluster.
| Parameters | Type | Description |
|---|---|---|
limit |
integer optional |
Maximum number of tasks to return. |
Tool: get_cluster_totem
Get the corosync totem configuration.
Tool: get_container_config
Get the configuration of a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: get_container_feature
Check if a feature is available for a container (snapshot, clone, copy).
| Parameters | Type | Description |
|---|---|---|
feature |
string |
Feature to check ('snapshot', 'clone', 'copy'). |
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: get_container_firewall_options
Get firewall options for an LXC container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: get_container_interfaces
Get network interfaces and IPs of a running container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: get_container_pending
Get pending configuration changes for a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: get_container_rrddata
Get RRD statistics data for a container (CPU, memory, disk, network over time).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
timeframe |
string optional |
Time range: 'hour', 'day', 'week', 'month', 'year'. |
Tool: get_container_status
Get the current runtime status of a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID (CTID). |
Tool: get_disk_smart
Get S.M.A.R.T. health data for a disk.
| Parameters | Type | Description |
|---|---|---|
disk |
string |
Disk device path (e.g. '/dev/sda'). |
node |
string |
The node name. |
Tool: get_firewall_group_rules
List rules in a firewall security group.
| Parameters | Type | Description |
|---|---|---|
group |
string |
Security group name. |
Tool: get_firewall_refs
Get available firewall references (aliases, ipsets, names usable in rules).
Tool: get_group
Get group details.
| Parameters | Type | Description |
|---|---|---|
groupid |
string |
Group ID. |
Tool: get_ha_group
Get HA group configuration.
| Parameters | Type | Description |
|---|---|---|
group |
string |
Group ID. |
Tool: get_ha_manager_status
Get detailed HA manager status.
Tool: get_ha_resource
Get HA resource configuration.
| Parameters | Type | Description |
|---|---|---|
sid |
string |
HA resource ID (format: 'type:vmid', e.g. 'vm:100' or 'ct:101'). |
Tool: get_ha_status
Get HA manager status (active, quorum, manager status).
Tool: get_metric_server
Get metric server configuration.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Metric server ID. |
Tool: get_next_vmid
Get the next available VMID in the cluster.
| Parameters | Type | Description |
|---|---|---|
vmid |
integer optional |
Specific VMID to check availability for (0 = auto-assign). |
Tool: get_node_aplinfo
List available appliance templates (LXC templates) that can be downloaded.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_apt_update
List available package updates on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_capabilities_qemu
Get QEMU capabilities for a node: supported CPU models, machine types, etc.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_certificates
Get certificate info for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_config
Get the configuration of a node (description, wakeonlan, etc.).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_disks
List physical disks on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_dns
Get DNS settings for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_firewall_log
Get firewall log for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
limit |
integer optional |
Max entries. |
Tool: get_node_firewall_options
Get firewall options for a specific node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_hardware_pci
List PCI hardware devices on a node (for passthrough).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_hardware_usb
List USB hardware devices on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_hosts
Get the /etc/hosts file content for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_journal
Read systemd journal entries from a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
lastentries |
integer optional |
Max number of entries (default 50). |
since |
string optional |
Show entries since date/time. |
startcursor |
string optional |
Start cursor for paging. |
until |
string optional |
Show entries until date/time. |
Tool: get_node_netstat
Get network statistics for a node (per-interface traffic).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_network
Get network interface configuration for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_network_interface
Get details for a specific network interface.
| Parameters | Type | Description |
|---|---|---|
iface |
string |
Interface name (e.g. 'vmbr0', 'eth0'). |
node |
string |
The node name. |
Tool: get_node_report
Generate a system report for a node (useful for diagnostics).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_status
Get detailed status of a specific node including CPU, memory, disk, uptime, and kernel info.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name (e.g. 'pve1'). |
Tool: get_node_storage_scan
Scan for available storage targets (NFS, CIFS, iSCSI, LVM, ZFS, PBS).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
scan_type |
string |
Type to scan: 'nfs', 'cifs', 'iscsi', 'lvm', 'lvmthin', 'zfs', 'pbs'. |
server |
string optional |
Server address (required for nfs, cifs, iscsi, pbs). |
Tool: get_node_storage_status
Get usage status of a storage pool on a node (total, used, available).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
Tool: get_node_subscription
Get subscription status for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_syslog
Read system log (syslog) entries from a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
limit |
integer optional |
Max number of log lines to return (default 50). |
since |
string optional |
Only show entries since this date (YYYY-MM-DD). |
start |
integer optional |
Start line number. |
until |
string optional |
Only show entries until this date (YYYY-MM-DD). |
Tool: get_node_time
Get the current time and timezone of a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_node_version
Get Proxmox VE version information for a specific node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_permissions
Check effective permissions for a user on a given path.
| Parameters | Type | Description |
|---|---|---|
path |
string optional |
Object path to check (empty = root). |
userid |
string optional |
User to check (empty = current user). |
Tool: get_pool
Get pool configuration and members.
| Parameters | Type | Description |
|---|---|---|
poolid |
string |
Pool ID. |
Tool: get_replication_job
Get a specific replication job configuration.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Replication job ID (format: GUEST-JOBNUM, e.g. '100-0'). |
Tool: get_role
Get role details and its privileges.
| Parameters | Type | Description |
|---|---|---|
roleid |
string |
Role ID. |
Tool: get_sdn_controller
Get SDN controller configuration.
| Parameters | Type | Description |
|---|---|---|
controller |
string |
Controller ID. |
Tool: get_sdn_ipam
Get IPAM plugin configuration.
| Parameters | Type | Description |
|---|---|---|
ipam |
string |
IPAM ID. |
Tool: get_sdn_vnet
Get SDN VNet configuration.
| Parameters | Type | Description |
|---|---|---|
vnet |
string |
VNet ID. |
Tool: get_sdn_zone
Get SDN zone configuration.
| Parameters | Type | Description |
|---|---|---|
zone |
string |
Zone ID. |
Tool: get_storage_config
Get configuration of a specific storage pool.
| Parameters | Type | Description |
|---|---|---|
storage |
string |
The storage ID. |
Tool: get_storage_rrddata
Get RRD statistics for a storage pool (usage over time).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
timeframe |
string optional |
Time range: 'hour', 'day', 'week', 'month', 'year'. |
Tool: get_storage_volume_info
Get details about a specific volume in storage.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
volume |
string |
The volume ID. |
Tool: get_task_log
Get log output of a specific task.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
upid |
string |
The task UPID string. |
limit |
integer optional |
Max lines to return. |
start |
integer optional |
Start line number. |
Tool: get_task_status
Get the status of a specific task by its UPID.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
upid |
string |
The task UPID string. |
Tool: get_user
Get details for a specific user.
| Parameters | Type | Description |
|---|---|---|
userid |
string |
User ID (format: 'user@realm', e.g. 'admin@pam'). |
Tool: get_user_token
Get details for a specific API token.
| Parameters | Type | Description |
|---|---|---|
tokenid |
string |
Token ID. |
userid |
string |
User ID (format: 'user@realm'). |
Tool: get_version
Get the Proxmox VE API version information.
Tool: get_vm_cloudinit
Get Cloud-Init configuration for a VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_config
Get the configuration of a VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
current |
boolean optional |
If True, return current (runtime) config. If False, return pending config. |
Tool: get_vm_feature
Check if a specific feature is available/supported for a VM (e.g. snapshot, clone, copy).
| Parameters | Type | Description |
|---|---|---|
feature |
string |
Feature to check ('snapshot', 'clone', 'copy'). |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_firewall_options
Get firewall options for a QEMU VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_pending
Get pending configuration changes for a VM (not yet applied).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_rrddata
Get RRD statistics data for a VM (CPU, memory, disk, network over time).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
timeframe |
string optional |
Time range: 'hour', 'day', 'week', 'month', 'year'. |
Tool: get_vm_snapshot_config
Get the configuration stored in a VM snapshot.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
The snapshot name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_spiceproxy
Create a SPICE proxy connection for a VM console.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_status
Get the current runtime status of a VM (state, CPU, memory, disk, network, uptime).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: get_vm_vncproxy
Create a VNC proxy connection ticket for a VM (for console access).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
websocket |
boolean optional |
Use WebSocket connection. |
Tool: get_vzdump_defaults
Get the default vzdump configuration for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: get_vzdump_extractconfig
Extract the guest configuration from a vzdump backup archive.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
volume |
string |
Backup volume ID (e.g. 'local:backup/vzdump-qemu-100-2024_01_01-00_00_00.vma.zst'). |
Tool: get_zfs_pool
Get details of a ZFS pool.
| Parameters | Type | Description |
|---|---|---|
name |
string |
ZFS pool name. |
node |
string |
The node name. |
Tool: initialize_gpt
Initialize a disk with GPT partition table (WARNING: destroys all data).
| Parameters | Type | Description |
|---|---|---|
disk |
string |
Disk device path (e.g. '/dev/sdb'). |
node |
string |
The node name. |
Tool: join_cluster
Join a node to an existing cluster.
| Parameters | Type | Description |
|---|---|---|
fingerprint |
string |
SSL fingerprint of the cluster node. |
hostname |
string |
Hostname/IP of existing cluster node. |
password |
string |
Root password of the cluster node. |
force |
boolean optional |
Force join even with warnings. |
nodeid |
integer optional |
Force specific node ID. |
Tool: list_acme_accounts
List ACME (Let's Encrypt) accounts.
Tool: list_acme_plugins
List ACME DNS challenge plugins.
Tool: list_auth_domains
List configured authentication realms/domains (PAM, PVE, LDAP, AD, OpenID).
Tool: list_backup_file_restore
List files in a vzdump backup for single-file restore.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
Storage ID. |
volume |
string |
Backup volume ID. |
filepath |
string optional |
Path within the backup (default '/'). |
Tool: list_backup_jobs
List all scheduled backup jobs (vzdump) in the cluster.
Tool: list_ceph_fs
List CephFS filesystems.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_ceph_managers
List Ceph managers.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_ceph_mds
List Ceph metadata servers (MDS, for CephFS).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_ceph_monitors
List Ceph monitors.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_ceph_osds
List Ceph OSDs on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_ceph_pools
List Ceph pools.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_cluster_firewall_rules
List cluster-level firewall rules.
Tool: list_container_firewall_rules
List firewall rules for an LXC container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: list_container_snapshots
List all snapshots of a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: list_containers
List all LXC containers on a node with status, memory, CPU, and disk info.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_dir_mappings
List directory mappings.
Tool: list_directory_storage
List directory-based storage mounts on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_file_restore
List files in a backup volume for file-level restore (PBS backups).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
volume |
string |
The backup volume ID. |
filepath |
string optional |
Path inside the backup to list (default '/'). |
Tool: list_firewall_aliases
List cluster firewall aliases (named IP addresses/ranges).
Tool: list_firewall_groups
List firewall security groups (reusable sets of rules).
Tool: list_firewall_ipset_entries
List entries in a firewall IP set.
| Parameters | Type | Description |
|---|---|---|
name |
string |
IP set name. |
Tool: list_firewall_ipsets
List cluster firewall IP sets (named groups of IPs).
Tool: list_firewall_macros
List available firewall macros (predefined rule sets like SSH, HTTP, etc.).
Tool: list_groups
List all user groups.
Tool: list_ha_groups
List HA groups (define which nodes can run HA resources).
Tool: list_ha_resources
List all HA-managed resources.
Tool: list_lvm_volumes
List LVM volume groups on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_lvmthin_pools
List LVM thin pools on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_metric_servers
List configured metric servers (InfluxDB, Graphite).
Tool: list_node_firewall_rules
List firewall rules for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_node_services
List all system services on a node (pve, ssh, cron, etc.).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_node_storage
List storage pools available on a specific node with usage info.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
content |
string optional |
Filter by content type (images, rootdir, vztmpl, iso, backup). |
enabled |
boolean optional |
Only show enabled storage. |
Tool: list_node_tasks
List recent tasks on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
limit |
integer optional |
Max tasks to return (default 50). |
start |
integer optional |
Offset for paging. |
statusfilter |
string optional |
Filter by status ('running', 'ok', 'error', etc.). |
typefilter |
string optional |
Filter by task type (e.g. 'qmstart', 'vzstart', 'vzcreate'). |
vmid |
integer optional |
Filter by VM ID (0 = all). |
Tool: list_nodes
List all nodes in the Proxmox cluster with their status, CPU, memory, and uptime.
Tool: list_notification_endpoints
List all configured notification endpoints (sendmail, gotify, smtp, webhook).
Tool: list_notification_matchers
List all notification matchers (rules that route notifications).
Tool: list_notification_targets
List all notification targets.
Tool: list_pci_mappings
List PCI device mappings for passthrough.
Tool: list_pools
List all resource pools.
Tool: list_realm_sync_jobs
List realm synchronization jobs.
Tool: list_replication_jobs
List all replication jobs in the cluster.
Tool: list_roles
List all available roles.
Tool: list_scheduled_jobs
List all scheduled cluster jobs (realm-sync, etc.).
Tool: list_sdn_controllers
List SDN controllers (e.g. EVPN controller).
Tool: list_sdn_dns
List SDN DNS plugins.
Tool: list_sdn_ipams
List IPAM (IP Address Management) plugins.
Tool: list_sdn_subnets
List subnets for an SDN VNet.
| Parameters | Type | Description |
|---|---|---|
vnet |
string |
VNet ID. |
Tool: list_sdn_vnets
List SDN virtual networks (VNets).
Tool: list_sdn_zones
List SDN zones.
Tool: list_storage
List all configured storage pools at the datacenter level.
| Parameters | Type | Description |
|---|---|---|
enabled |
boolean optional |
Only show enabled storage (default True). |
type |
string optional |
Filter by type (dir, lvm, lvmthin, zfspool, nfs, cifs, iscsi, rbd, cephfs, pbs, glusterfs, btrfs). |
Tool: list_storage_content
List content of a storage pool (disk images, ISOs, templates, backups).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
content |
string optional |
Filter by type: 'images', 'rootdir', 'vztmpl', 'iso', 'backup', 'snippets'. |
vmid |
integer optional |
Filter by VM ID. |
Tool: list_tfa
List TFA (two-factor auth) entries.
| Parameters | Type | Description |
|---|---|---|
userid |
string optional |
Filter by user ID (empty = all users). |
Tool: list_usb_mappings
List USB device mappings for passthrough.
Tool: list_user_tokens
List API tokens for a user.
| Parameters | Type | Description |
|---|---|---|
userid |
string |
User ID (format: 'user@realm'). |
Tool: list_users
List all users in Proxmox.
| Parameters | Type | Description |
|---|---|---|
enabled |
boolean optional |
Only show enabled users. |
full |
boolean optional |
Include detailed info (groups, tokens, etc.). |
Tool: list_vm_firewall_rules
List firewall rules for a QEMU VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: list_vm_snapshots
List all snapshots of a VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: list_vms
List all QEMU virtual machines on a node with status, memory, CPU, and disk info.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: list_zfs_pools
List ZFS pools on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: manage_node_service
Start, stop, restart, or reload a system service on a node.
| Parameters | Type | Description |
|---|---|---|
action |
string |
One of 'start', 'stop', 'restart', 'reload'. |
node |
string |
The node name. |
service |
string |
Service name (e.g. 'pvedaemon', 'pveproxy', 'ssh', 'cron', 'postfix'). |
Tool: migrate_container
Migrate a container to another node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The source node. |
target |
string |
Target node name. |
vmid |
integer |
The container ID. |
online |
boolean optional |
Live migration. |
restart |
boolean optional |
Restart container after migration (for non-live). |
target_storage |
string optional |
Target storage mapping. |
Tool: migrate_ha_resource
Request migration of an HA resource to a different node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
Target node. |
sid |
string |
Resource ID. |
Tool: migrate_vm
Migrate a VM to another node in the cluster.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The source node. |
target |
string |
Target node name. |
vmid |
integer |
The VM ID. |
online |
boolean optional |
Live migration (True) or offline (False). |
targetstorage |
string optional |
Target storage mapping for migration (e.g. 'local-lvm'). |
with_local_disks |
boolean optional |
Migrate local disks as well. |
Tool: move_container_volume
Move a container volume to different storage or to another container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
volume |
string |
Volume name (e.g. 'rootfs', 'mp0'). |
delete_original |
boolean optional |
Delete original after move. |
storage |
string optional |
Target storage. |
target_vmid |
integer optional |
Target container ID. |
target_volume |
string optional |
Target volume slot. |
Tool: move_vm_disk
Move a VM disk to different storage or attach to another VM.
| Parameters | Type | Description |
|---|---|---|
disk |
string |
Source disk name (e.g. 'scsi0'). |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
delete_original |
boolean optional |
Delete the original disk after moving. |
storage |
string optional |
Target storage ID (for moving to different storage). |
target_disk |
string optional |
Target disk slot on the target VM. |
target_vmid |
integer optional |
Target VM ID (for moving disk to another VM). |
Tool: order_node_certificate
Order/renew ACME certificate for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
force |
boolean optional |
Force renewal even if not due. |
Tool: proxmox_api_raw
Make an arbitrary Proxmox API call for any endpoint not covered by specific tools.
| Parameters | Type | Description |
|---|---|---|
method |
string |
HTTP method: 'get', 'post', 'put', 'delete'. |
path |
string |
API path (e.g. '/nodes/pve1/qemu/100/status/current'). |
params |
string optional |
JSON string of parameters (e.g. '{"memory": 4096}'). |
Tool: prune_storage_backups
Prune (delete) old backups from storage according to retention policy.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
storage |
string |
The storage ID. |
dry_run |
boolean optional |
If True, only simulate (default True for safety). |
prune_backups |
string optional |
Retention spec (e.g. 'keep-last=3,keep-daily=7,keep-weekly=4'). |
type |
string optional |
Guest type filter ('qemu' or 'lxc'). |
vmid |
integer optional |
Filter by VM ID. |
Tool: reboot_container
Reboot a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
timeout |
integer optional |
Timeout in seconds. |
Tool: reboot_vm
Reboot a VM via ACPI.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
timeout |
integer optional |
Wait timeout in seconds. |
Tool: register_acme_account
Register a new ACME account.
| Parameters | Type | Description |
|---|---|---|
contact |
string |
Contact email address. |
directory |
string optional |
ACME directory URL (empty = Let's Encrypt production). |
name |
string optional |
Account name. |
tos_url |
string optional |
Terms of service URL to accept. |
Tool: relocate_ha_resource
Request relocation of an HA resource to a different node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
Target node. |
sid |
string |
Resource ID. |
Tool: reset_vm
Hard reset a VM (like pressing the reset button).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: resize_container_disk
Resize a container disk/volume.
| Parameters | Type | Description |
|---|---|---|
disk |
string |
Disk name (e.g. 'rootfs', 'mp0'). |
node |
string |
The node name. |
size |
string |
New size or increment (e.g. '10G', '+2G'). |
vmid |
integer |
The container ID. |
Tool: resize_vm_disk
Resize a VM disk. Can only grow, not shrink.
| Parameters | Type | Description |
|---|---|---|
disk |
string |
Disk name (e.g. 'scsi0', 'virtio0', 'ide0'). |
node |
string |
The node name. |
size |
string |
New size or size increment (e.g. '50G', '+10G'). |
vmid |
integer |
The VM ID. |
Tool: resume_container
Resume a suspended container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: resume_vm
Resume a suspended/paused VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: rollback_container_snapshot
Rollback a container to a previous snapshot.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
Snapshot name. |
vmid |
integer |
The container ID. |
Tool: rollback_vm_snapshot
Rollback a VM to a previous snapshot (current state will be lost).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
snapname |
string |
The snapshot name to rollback to. |
vmid |
integer |
The VM ID. |
Tool: run_apt_update
Refresh the package index on a node (apt update).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Tool: send_vm_key
Send a key event to a VM (e.g. ctrl-alt-del).
| Parameters | Type | Description |
|---|---|---|
key |
string |
Key combination (e.g. 'ctrl-alt-delete'). |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: send_vm_monitor_command
Send a QEMU monitor command to a VM (advanced/low-level).
| Parameters | Type | Description |
|---|---|---|
command |
string |
The QEMU monitor command. |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: set_ceph_flags
Set a Ceph global flag.
| Parameters | Type | Description |
|---|---|---|
flag |
string |
Flag name (noout, noscrub, nobackfill, norebalance, nodown, noup, etc.). |
value |
boolean |
True to set, False to unset. |
Tool: set_cluster_firewall_options
Set cluster-wide firewall options.
| Parameters | Type | Description |
|---|---|---|
delete |
string optional |
Comma-separated options to delete. |
ebtables |
integer optional |
1 to enable ebtables rules, 0 to disable, -1 to not change. |
enable |
integer optional |
1 to enable, 0 to disable, -1 to not change. |
log_ratelimit |
string optional |
Log rate limit (e.g. 'enable=1,rate=1/second,burst=5'). |
policy_in |
string optional |
Default input policy: 'ACCEPT', 'REJECT', 'DROP'. |
policy_out |
string optional |
Default output policy: 'ACCEPT', 'REJECT', 'DROP'. |
Tool: set_node_firewall_options
Set firewall options for a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
delete |
string optional |
Comma-separated options to delete. |
enable |
integer optional |
1 = enable, 0 = disable, -1 = don't change. |
log_level_in |
string optional |
Input log level. |
log_level_out |
string optional |
Output log level. |
ndp |
integer optional |
1 = enable NDP, 0 = disable, -1 = don't change. |
nf_conntrack_max |
integer optional |
Max conntrack entries (0 = don't change). |
Tool: set_vm_firewall_options
Set firewall options for a QEMU VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
delete |
string optional |
Comma-separated options to delete. |
dhcp |
integer optional |
1 = enable DHCP. |
enable |
integer optional |
1 = enable, 0 = disable. |
ipfilter |
integer optional |
1 = enable IP filter. |
macfilter |
integer optional |
1 = enable MAC filter. |
policy_in |
string optional |
Input policy. |
policy_out |
string optional |
Output policy. |
Tool: shutdown_container
Gracefully shut down a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
force_stop |
boolean optional |
Force stop after timeout. |
timeout |
integer optional |
Timeout in seconds before force stop. |
Tool: shutdown_vm
Gracefully shut down a VM via ACPI. Falls back to hard stop after timeout if force_stop is true.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
force_stop |
boolean optional |
Force stop after timeout (default True). |
timeout |
integer optional |
Timeout in seconds before force stop. |
Tool: start_container
Start a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: start_vm
Start a VM.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
timeout |
integer optional |
Timeout in seconds (0 = default). |
Tool: startall_node
Start all VMs and containers on a node (respecting boot order).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
force |
boolean optional |
Force start even if already running. |
vms |
string optional |
Comma-separated list of VMIDs to start (empty = all). |
Tool: stop_container
Hard-stop a container (immediate, like power off).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: stop_task
Stop (abort) a running task.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
upid |
string |
The task UPID string. |
Tool: stop_vm
Hard-stop a VM (like pulling the power plug). Prefer shutdown_vm for graceful stop.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
skiplock |
boolean optional |
Ignore locks (requires root). |
timeout |
integer optional |
Wait timeout in seconds. |
Tool: stopall_node
Stop all VMs and containers on a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vms |
string optional |
Comma-separated list of VMIDs to stop (empty = all). |
Tool: suspend_container
Suspend (freeze) a container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
Tool: suspend_vm
Suspend a VM (pause execution or hibernate to disk).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
todisk |
boolean optional |
If True, hibernate to disk. If False, pause in RAM. |
Tool: sync_auth_domain
Sync users/groups from an external auth domain (LDAP/AD).
| Parameters | Type | Description |
|---|---|---|
realm |
string |
Realm ID to sync. |
dry_run |
boolean optional |
Only show what would change. |
enable_new |
boolean optional |
Enable newly synced users. |
full |
boolean optional |
Full sync (not just incremental). |
remove_vanished |
string optional |
Comma-separated: 'entry' (remove users), 'properties' (clear), 'acl' (remove ACLs). |
Tool: test_notification_target
Send a test notification to a target.
| Parameters | Type | Description |
|---|---|---|
name |
string |
Target name. |
Tool: update_acl
Add or remove ACL entries (permission assignments).
| Parameters | Type | Description |
|---|---|---|
path |
string |
Object path (e.g. '/', '/vms/100', '/storage/local', '/pool/mypool'). |
roles |
string |
Comma-separated role list. |
delete |
boolean optional |
Remove the ACL entry instead of adding. |
groups |
string optional |
Comma-separated group list. |
propagate |
boolean optional |
Propagate permissions to child objects. |
tokens |
string optional |
Comma-separated token list (format: 'user@realm!tokenid'). |
users |
string optional |
Comma-separated user list (format: 'user@realm'). |
Tool: update_backup_job
Update a scheduled backup job.
| Parameters | Type | Description |
|---|---|---|
id |
string |
Backup job ID. |
all_guests |
boolean optional |
Backup all guests. |
compress |
string optional |
Compression. |
delete |
string optional |
Comma-separated properties to delete. |
enabled |
boolean optional |
Enable/disable. |
mode |
string optional |
Backup mode. |
node |
string optional |
Node filter. |
schedule |
string optional |
Schedule in systemd calendar format. |
storage |
string optional |
Target storage ID. |
vmid |
string optional |
Comma-separated VMIDs. |
Tool: update_cluster_firewall_rule
Update a cluster-level firewall rule.
| Parameters | Type | Description |
|---|---|---|
pos |
integer |
Rule position to update. |
action |
string optional |
'ACCEPT', 'DROP', 'REJECT'. |
comment |
string optional |
Description. |
delete |
string optional |
Comma-separated properties to delete. |
dest |
string optional |
Destination address/range. |
dport |
string optional |
Destination port(s). |
enable |
integer optional |
1 = enabled, 0 = disabled, -1 = don't change. |
macro |
string optional |
Predefined macro. |
moveto |
integer optional |
Move rule to this position. |
proto |
string optional |
Protocol. |
source |
string optional |
Source address/range. |
sport |
string optional |
Source port(s). |
Tool: update_cluster_options
Update datacenter/cluster-wide options.
| Parameters | Type | Description |
|---|---|---|
console |
string optional |
Default console viewer: 'applet', 'vv', 'html5', 'xtermjs'. |
delete |
string optional |
Comma-separated settings to delete. |
description |
string optional |
Datacenter description. |
email_from |
string optional |
Default email sender address. |
http_proxy |
string optional |
HTTP proxy URL. |
keyboard |
string optional |
Keyboard layout (e.g. 'en-us', 'de'). |
language |
string optional |
Default language. |
max_workers |
integer optional |
Max parallel workers. |
Tool: update_container_config
Update the configuration of an existing container.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The container ID. |
cores |
integer optional |
CPU cores. |
cpulimit |
number optional |
CPU limit (0 = unlimited). |
delete |
string optional |
Comma-separated list of settings to delete. |
description |
string optional |
Description. |
features |
string optional |
Comma-separated features. |
hostname |
string optional |
Container hostname. |
memory |
integer optional |
Memory in MB. |
nameserver |
string optional |
DNS nameserver. |
net0 |
string optional |
Network config. |
onboot |
string optional |
Start on boot. |
searchdomain |
string optional |
DNS search domain. |
swap |
integer optional |
Swap in MB. |
tags |
string optional |
Semicolon-separated tags. |
Tool: update_group
Update a group.
| Parameters | Type | Description |
|---|---|---|
groupid |
string |
Group ID. |
comment |
string optional |
Description. |
Tool: update_ha_group
Update an HA group.
| Parameters | Type | Description |
|---|---|---|
group |
string |
Group ID. |
comment |
string optional |
Description. |
delete |
string optional |
Comma-separated properties to delete. |
nodes |
string optional |
Node list with optional priority. |
nofailback |
boolean optional |
Don't fail back. |
restricted |
boolean optional |
Only run on group nodes. |
Tool: update_ha_resource
Update an HA resource configuration.
| Parameters | Type | Description |
|---|---|---|
sid |
string |
Resource ID. |
comment |
string optional |
Description. |
delete |
string optional |
Comma-separated properties to delete. |
group |
string optional |
HA group name. |
max_relocate |
integer optional |
Max relocations (-1 = don't change). |
max_restart |
integer optional |
Max restarts (-1 = don't change). |
state |
string optional |
Desired state. |
Tool: update_pool
Update a resource pool (add/remove members).
| Parameters | Type | Description |
|---|---|---|
poolid |
string |
Pool ID. |
comment |
string optional |
Description. |
delete |
boolean optional |
If true, remove the specified vms/storage from the pool instead of adding. |
storage |
string optional |
Comma-separated storage IDs to add/remove. |
vms |
string optional |
Comma-separated VMIDs to add/remove. |
Tool: update_role
Update role privileges.
| Parameters | Type | Description |
|---|---|---|
privs |
string |
Comma-separated list of privileges. |
roleid |
string |
Role ID. |
append |
boolean optional |
Append privileges instead of replacing. |
Tool: update_sdn_vnet
Update an SDN VNet.
| Parameters | Type | Description |
|---|---|---|
vnet |
string |
VNet ID. |
alias |
string optional |
Display alias. |
delete |
string optional |
Comma-separated properties to delete. |
tag |
integer optional |
VLAN tag (-1 = don't change). |
zone |
string optional |
Zone ID. |
Tool: update_storage
Update an existing storage pool configuration.
| Parameters | Type | Description |
|---|---|---|
storage |
string |
The storage ID to update. |
content |
string optional |
Content types (images, rootdir, vztmpl, iso, backup, snippets, import). |
delete |
string optional |
Comma-separated list of settings to delete. |
disable |
string optional |
Disable this storage. |
nodes |
string optional |
Allowed nodes (comma-separated). |
prune_backups |
string optional |
Backup retention policy. |
shared |
string optional |
Mark as shared. |
Tool: update_user
Update an existing user.
| Parameters | Type | Description |
|---|---|---|
userid |
string |
User ID (format: 'user@realm'). |
append |
boolean optional |
Append groups instead of replacing. |
comment |
string optional |
Description. |
email |
string optional |
Email address. |
enable |
boolean optional |
Enable/disable user. |
expire |
integer optional |
Account expiration (Unix epoch, 0 = never, -1 = don't change). |
firstname |
string optional |
First name. |
groups |
string optional |
Comma-separated group list. |
lastname |
string optional |
Last name. |
Tool: update_vm_cloudinit
Set Cloud-Init parameters for a VM (user, password, SSH keys, network).
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
cipassword |
string optional |
Cloud-Init password. |
ciuser |
string optional |
Cloud-Init user name. |
ipconfig0 |
string optional |
IP config for first interface (e.g. 'ip=dhcp' or 'ip=10.0.0.5/24,gw=10.0.0.1'). |
nameserver |
string optional |
DNS nameserver IP. |
searchdomain |
string optional |
DNS search domain. |
sshkeys |
string optional |
SSH public keys (URL-encoded, newline delimited). |
Tool: update_vm_config
Update the configuration of an existing VM. Only provided parameters are changed.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
agent |
string optional |
Guest agent config. |
boot |
string optional |
Boot order. |
cores |
integer optional |
CPU cores per socket. |
cpu |
string optional |
CPU type. |
delete |
string optional |
Comma-separated list of settings to delete. |
description |
string optional |
Description. |
hotplug |
string optional |
Hotplug features (disk, network, usb, memory, cpu). |
memory |
integer optional |
Memory in MB. |
name |
string optional |
VM name. |
net0 |
string optional |
Network config. |
onboot |
string optional |
Start on boot. |
sockets |
integer optional |
CPU sockets. |
tags |
string optional |
Semicolon-separated tags. |
Tool: upload_to_storage
Upload a file (ISO, template, etc.) to storage. Note: actual file upload must go through the HTTP API directly.
| Parameters | Type | Description |
|---|---|---|
content |
string |
Content type: 'iso', 'vztmpl', 'snippets', 'import'. |
filename |
string |
Target filename. |
node |
string |
The node name. |
storage |
string |
The storage ID. |
tmpfilename |
string optional |
Temporary filename for the upload. |
Tool: vm_agent_exec
Execute a command inside a VM via the QEMU Guest Agent.
| Parameters | Type | Description |
|---|---|---|
command |
string |
The command to execute. |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
input_data |
string optional |
Data to pass to stdin. |
Tool: vm_agent_exec_status
Get the status/result of a command previously executed via the guest agent.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
pid |
integer |
The PID returned by the exec call. |
vmid |
integer |
The VM ID. |
Tool: vm_agent_file_read
Read a file from inside a VM via the guest agent.
| Parameters | Type | Description |
|---|---|---|
file |
string |
Absolute file path inside the guest. |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: vm_agent_file_write
Write content to a file inside a VM via the guest agent.
| Parameters | Type | Description |
|---|---|---|
content |
string |
File content to write. |
file |
string |
Absolute file path inside the guest. |
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
Tool: vm_agent_get_info
Get various system information from a VM via the guest agent.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
vmid |
integer |
The VM ID. |
info_type |
string optional |
Info to retrieve: 'get-osinfo', 'get-host-name', 'get-time', |
Tool: vm_agent_set_password
Set a user password inside a VM via the guest agent.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
password |
string |
The new password. |
username |
string |
The username. |
vmid |
integer |
The VM ID. |
crypted |
boolean optional |
If True, password is already encrypted. |
Tool: wakeonlan_node
Send a Wake-on-LAN magic packet to a node.
| Parameters | Type | Description |
|---|---|---|
node |
string |
The node name. |
Use this MCP Server
{
"mcpServers": {
"proxmox": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROXMOX_HOST",
"-e",
"PROXMOX_USER",
"-e",
"PROXMOX_TOKEN_NAME",
"-e",
"PROXMOX_PORT",
"-e",
"PROXMOX_VERIFY_SSL",
"-e",
"PROXMOX_TIMEOUT",
"-e",
"PROXMOX_TOKEN_VALUE",
"-e",
"PROXMOX_PASSWORD",
"mcp/proxmox"
],
"env": {
"PROXMOX_HOST": "192.168.1.100",
"PROXMOX_USER": "root@pam",
"PROXMOX_TOKEN_NAME": "mcp-token",
"PROXMOX_PORT": "8006",
"PROXMOX_VERIFY_SSL": "false",
"PROXMOX_TIMEOUT": "30",
"PROXMOX_TOKEN_VALUE": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"PROXMOX_PASSWORD": "your-proxmox-password"
}
}
}
}