GitHub
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
Description from the maker (original English)
Monitor and manage Proxmox VE clusters: VMs, containers, storage and backups. Read-only by default.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
MCP_TRANSPORT, PROXMOX_URL, PROXMOX_API_TOKEN, PROXMOX_USERNAME, PROXMOX_PASSWORD, PROXMOX_TLS_FINGERPRINT, PROXMOX_VERIFY_SSL, PROXMOX_DEFAULT_NODE, PROXMOX_ALLOW_WRITES, PROXMOX_ALLOW_DELETES, PROXMOX_ALLOW_EXEC, PROXMOX_TOOLSETS, PROXMOX_AUDIT_LOGValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Download the maker’s .mcpb file
The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.
Run this in your terminal
claude mcp add proxmox --env MCP_TRANSPORT=your-value --env PROXMOX_URL=your-value --env PROXMOX_API_TOKEN=your-value --env PROXMOX_USERNAME=your-value --env PROXMOX_PASSWORD=your-value --env PROXMOX_TLS_FINGERPRINT=your-value --env PROXMOX_VERIFY_SSL=your-value --env PROXMOX_DEFAULT_NODE=your-value --env PROXMOX_ALLOW_WRITES=your-value --env PROXMOX_ALLOW_DELETES=your-value --env PROXMOX_ALLOW_EXEC=your-value --env PROXMOX_TOOLSETS=your-value --env PROXMOX_AUDIT_LOG=your-value -- docker run -i --rm -e MCP_TRANSPORT -e PROXMOX_URL -e PROXMOX_API_TOKEN -e PROXMOX_USERNAME -e PROXMOX_PASSWORD -e PROXMOX_TLS_FINGERPRINT -e PROXMOX_VERIFY_SSL -e PROXMOX_DEFAULT_NODE -e PROXMOX_ALLOW_WRITES -e PROXMOX_ALLOW_DELETES -e PROXMOX_ALLOW_EXEC -e PROXMOX_TOOLSETS -e PROXMOX_AUDIT_LOG ghcr.io/mattoddie/proxmox-mcp:0.5.1Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"proxmox": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_USERNAME",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_TLS_FINGERPRINT",
"-e",
"PROXMOX_VERIFY_SSL",
"-e",
"PROXMOX_DEFAULT_NODE",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"-e",
"PROXMOX_TOOLSETS",
"-e",
"PROXMOX_AUDIT_LOG",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"env": {
"MCP_TRANSPORT": "your-value",
"PROXMOX_URL": "your-value",
"PROXMOX_API_TOKEN": "your-value",
"PROXMOX_USERNAME": "your-value",
"PROXMOX_PASSWORD": "your-value",
"PROXMOX_TLS_FINGERPRINT": "your-value",
"PROXMOX_VERIFY_SSL": "your-value",
"PROXMOX_DEFAULT_NODE": "your-value",
"PROXMOX_ALLOW_WRITES": "your-value",
"PROXMOX_ALLOW_DELETES": "your-value",
"PROXMOX_ALLOW_EXEC": "your-value",
"PROXMOX_TOOLSETS": "your-value",
"PROXMOX_AUDIT_LOG": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"proxmox": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_USERNAME",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_TLS_FINGERPRINT",
"-e",
"PROXMOX_VERIFY_SSL",
"-e",
"PROXMOX_DEFAULT_NODE",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"-e",
"PROXMOX_TOOLSETS",
"-e",
"PROXMOX_AUDIT_LOG",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"env": {
"MCP_TRANSPORT": "your-value",
"PROXMOX_URL": "your-value",
"PROXMOX_API_TOKEN": "your-value",
"PROXMOX_USERNAME": "your-value",
"PROXMOX_PASSWORD": "your-value",
"PROXMOX_TLS_FINGERPRINT": "your-value",
"PROXMOX_VERIFY_SSL": "your-value",
"PROXMOX_DEFAULT_NODE": "your-value",
"PROXMOX_ALLOW_WRITES": "your-value",
"PROXMOX_ALLOW_DELETES": "your-value",
"PROXMOX_ALLOW_EXEC": "your-value",
"PROXMOX_TOOLSETS": "your-value",
"PROXMOX_AUDIT_LOG": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
MCP_TRANSPORT envPROXMOX_USERNAME envPROXMOX_TLS_FINGERPRINT envPROXMOX_VERIFY_SSL envPROXMOX_DEFAULT_NODE envPROXMOX_ALLOW_WRITES envPROXMOX_ALLOW_DELETES envPROXMOX_ALLOW_EXEC envPROXMOX_TOOLSETS envPROXMOX_AUDIT_LOG envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 10, 2026
The registry name was verified with the GitHub account mattoddie, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: PROXMOX_URL, PROXMOX_API_TOKEN, PROXMOX_PASSWORD
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.5.1) reached the registry 18 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Docker, MCPB on your computer.
In the same category: GitHub, Desktop Commander, Cloudflare MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
MCP server for terminal commands, file operations, and process management
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Talk to your Proxmox cluster.
An open-source Model Context Protocol server for Proxmox VE. It lets Claude and other AI assistants monitor and manage your nodes, VMs, containers, storage, backups, firewall and more, all from one Docker container.
[proxmox-mcp.mattoddie.dev](https://proxmox-mcp.mattoddie.dev)
Quick start · Documentation · Tool reference · Contributing
"Why is the database VM so slow today?"
*VM 101 (db) on pve2 has averaged 94% CPU since 09:00, and pve2's IO wait has been above 30% for the same period. Its disk lives on
local-lvm, which is 91% full, and last night's backup task to the same disk is still running. Want me to show the backup task's log, or plan a migration of the VM to pve1, which has 40 GiB of free memory?*
Ask about your cluster in plain English. The assistant picks from 300+ tools to look things up and, if you allow it, make changes. Some examples:
ghcr.io/mattoddie/proxmox-mcp) for linux/amd64 and linux/arm64. It serves Streamable HTTP for a long-running service, or stdio for docker run -i..mcpb) for macOS, Windows and Linux: open it and fill in a settings form. No Docker needed.dry_run and recorded in an audit log, and passwords and keys are redacted from output.search, fields and limit, which keeps the model's context small and focused.You need Docker, a Proxmox VE 8 or 9 server or cluster, and an MCP client such as Claude Code.
1. Create an API token. On any node, as root, create a read-only user and token:
pveum user add mcp@pve --comment "proxmox-mcp"
pveum acl modify / --users mcp@pve --roles PVEAuditor pveum user token add mcp@pve mcp --privsep 0
Copy the token secret from the output. You can't see it again later. Getting started explains the options, including a token that can make changes.
2. Start the server.
mkdir proxmox-mcp && cd proxmox-mcp
curl -fsSLO https://raw.githubusercontent.com/mattoddie/proxmox-mcp/main/compose.yaml curl -fsSL https://raw.githubusercontent.com/mattoddie/proxmox-mcp/main/example.env -o .env
openssl rand -hex 32) and how to check thedocker compose up -d
3. Connect your assistant.
claude mcp add --transport http proxmox http://<docker-host>:8080/mcp \
--header "Authorization: Bearer "
Now ask *"How's my Proxmox cluster doing?"* in Claude Code.
On Claude Desktop? Skip Docker: download the .mcpb bundle for your computer from the latest release, open it, and fill in the settings form. See Claude Desktop.
Using VS Code, Cursor or Codex? See Connecting MCP clients. Prefer not to run a service? Use stdio mode with docker run -i.
proxmox-mcp is listed in the MCP Registry as io.github.mattoddie/proxmox-mcp, so clients that browse the registry can install it (as the Docker image over stdio, or as a Claude Desktop bundle) and ask for the settings.
Out of the box the assistant can look but not touch. To let it make changes, add these to .env and run docker compose up -d:
PROXMOX_ALLOW_WRITES=true # start/stop guests, create, clone, migrate, reconfigure, snapshot, back up…
PROXMOX_ALLOW_DELETES=true # also allow deleting guests, snapshots, backups and configuration (needs writes) PROXMOX_ALLOW_EXEC=true # also allow commands and file access inside VMs via the guest agent (needs writes) PROXMOX_TOOLSETS=cluster,nodes,vms,containers,snapshots,backup,tasks # optional: expose fewer tools PROXMOX_AUDIT_LOG=/audit/audit.jsonl # optional: log every change as JSON (mount ./audit; see compose.yaml)
Every tool that changes something takes dry_run, so you can ask the assistant to show you a change before it makes it. The token needs matching Proxmox permissions too. Read Security before turning on writes for a production cluster.
| Toolset | What's covered |
|---|---|
cluster | Cluster overview, nodes and guests at a glance, datacenter options, corosync config, metric servers, bulk guest actions |
nodes | Node status and statistics, services, network interfaces, DNS, time, updates and repositories, subscriptions, certificates and ACME, logs, node power |
vms | QEMU VMs: status, configuration, power, create, clone, disks, migration, templates, cloud-init, statistics |
containers | LXC containers: status, configuration, power, create, clone, volumes, migration, templates, interfaces, statistics |
agent | QEMU guest agent: OS, network and filesystem information, freeze/trim, and (with exec) commands and file access |
snapshots | VM and container snapshots: list, create, roll back, delete, and a cluster-wide view of old snapshots |
storage | Storage definitions and usage, volumes, ISO and template downloads, physical disks, SMART, ZFS and LVM |
backup | vzdump backup jobs, ad-hoc backups, backup listing, restores, pruning, guests without backups |
tasks | Proxmox tasks: list, inspect, read logs, wait for and stop them |
access | Users, groups, roles, ACLs, API tokens, realms, effective permissions, two-factor authentication |
firewall | Rules, options, aliases, IP sets and security groups at datacenter, node and guest level, firewall log |
ha | High availability status, resources, groups and rules |
sdn | SDN zones, VNets, subnets, controllers, IPAM and DNS, applying pending changes |
ceph | Ceph health, OSDs, pools, monitors, managers, metadata servers, CephFS, flags |
pools | Resource pools and their members |
replication | Storage replication jobs, status and logs |
notifications | Notification targets and matchers |
hardware | PCI and USB devices, mediated devices, resource mappings, CPU models |
raw | An escape hatch that calls any Proxmox API path. Off unless PROXMOX_TOOLSETS lists raw (e.g. all,raw) |
See the [tool reference](docs/tools.md) for every tool and argument. Ready-made prompts like cluster_health_check, backup_audit and troubleshoot_guest chain the tools together for common jobs.
The docs are also published at [proxmox-mcp.mattoddie.dev/docs](https://proxmox-mcp.mattoddie.dev/docs/), with search.
| 🚀 Getting started | Step-by-step setup, from API token to first question |
| 🔌 Connecting MCP clients | Claude Code, Claude Desktop, VS Code, Cursor, Codex, stdio mode |
| ⚙️ Configuration | Every environment variable, Docker secrets, toolsets |
| 🐳 Deployment | Compose, image tags, upgrades, TLS reverse proxy, hardening |
| 💬 Using proxmox-mcp | Example conversations, prompts, tasks, how changes and secrets work |
| 🧰 Tool reference | Every tool and prompt, generated from the code |
| 🛡️ Security | Threat model, least-privilege tokens, safe write setups |
| 📡 Compatibility | Supported Proxmox VE versions, Ceph, PBS, known gaps |
| 🩹 Troubleshooting | Common errors and how to fix them |
| 🛠️ Development | Architecture, adding a tool, testing |
On your phone? Proxly is a free Proxmox VE app for iPhone by the same author: monitor nodes, VMs and containers, start and stop guests, and take snapshots and backups without reaching for a laptop.
Contributions are very welcome, whether that's bug reports, compatibility reports from your cluster, docs or new tools. Read the contributing guide to get started, and please follow the code of conduct. To report a vulnerability, see the security policy. Please don't open a public issue for one.
MIT © Matt Oddie
*proxmox-mcp is an independent community project. It is not affiliated with, endorsed by or sponsored by Proxmox Server Solutions GmbH. Proxmox is a registered trademark of Proxmox Server Solutions GmbH.*