Search / io.github.mattoddie/proxmox-mcp
Proxmox VE
L0· runs locallyMonitor and manage Proxmox VE clusters: VMs, containers, storage and backups. Read-only by default.
v0.5.1 · active · repository · website · descriptor JSON · versions
Search / io.github.mattoddie/proxmox-mcp
L0· runs locallyMonitor and manage Proxmox VE clusters: VMs, containers, storage and backups. Read-only by default.
v0.5.1 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"proxmox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"env": {
"PROXMOX_URL": "${PROXMOX_URL}",
"PROXMOX_API_TOKEN": "${PROXMOX_API_TOKEN}",
"PROXMOX_PASSWORD": "${PROXMOX_PASSWORD}",
"PROXMOX_ALLOW_WRITES": "false",
"PROXMOX_ALLOW_DELETES": "false",
"PROXMOX_ALLOW_EXEC": "false"
}
}
}
}claude mcp add proxmox-mcp -e "PROXMOX_URL=${PROXMOX_URL}" -e "PROXMOX_API_TOKEN=${PROXMOX_API_TOKEN}" -e "PROXMOX_PASSWORD=${PROXMOX_PASSWORD}" -e "PROXMOX_ALLOW_WRITES=false" -e "PROXMOX_ALLOW_DELETES=false" -e "PROXMOX_ALLOW_EXEC=false" -- docker run -i --rm -e PROXMOX_URL -e PROXMOX_API_TOKEN -e PROXMOX_PASSWORD -e PROXMOX_ALLOW_WRITES -e PROXMOX_ALLOW_DELETES -e PROXMOX_ALLOW_EXEC ghcr.io/mattoddie/proxmox-mcp:0.5.1[mcp_servers.proxmox-mcp]
command = "docker"
args = ["run", "-i", "--rm", "-e", "PROXMOX_URL", "-e", "PROXMOX_API_TOKEN", "-e", "PROXMOX_PASSWORD", "-e", "PROXMOX_ALLOW_WRITES", "-e", "PROXMOX_ALLOW_DELETES", "-e", "PROXMOX_ALLOW_EXEC", "ghcr.io/mattoddie/proxmox-mcp:0.5.1"]
env = { "PROXMOX_URL" = "${PROXMOX_URL}", "PROXMOX_API_TOKEN" = "${PROXMOX_API_TOKEN}", "PROXMOX_PASSWORD" = "${PROXMOX_PASSWORD}", "PROXMOX_ALLOW_WRITES" = "false", "PROXMOX_ALLOW_DELETES" = "false", "PROXMOX_ALLOW_EXEC" = "false" }
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"proxmox-mcp": {
"type": "local",
"command": [
"docker",
"run",
"-i",
"--rm",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"enabled": true,
"environment": {
"PROXMOX_URL": "{env:PROXMOX_URL}",
"PROXMOX_API_TOKEN": "{env:PROXMOX_API_TOKEN}",
"PROXMOX_PASSWORD": "{env:PROXMOX_PASSWORD}",
"PROXMOX_ALLOW_WRITES": "false",
"PROXMOX_ALLOW_DELETES": "false",
"PROXMOX_ALLOW_EXEC": "false"
}
}
}
}{
"mcpServers": {
"proxmox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"env": {
"PROXMOX_URL": "${PROXMOX_URL}",
"PROXMOX_API_TOKEN": "${PROXMOX_API_TOKEN}",
"PROXMOX_PASSWORD": "${PROXMOX_PASSWORD}",
"PROXMOX_ALLOW_WRITES": "false",
"PROXMOX_ALLOW_DELETES": "false",
"PROXMOX_ALLOW_EXEC": "false"
}
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=proxmox-mcp&config=eyJjb21tYW5kIjoiZG9ja2VyIiwiYXJncyI6WyJydW4iLCItaSIsIi0tcm0iLCItZSIsIlBST1hNT1hfVVJMIiwiLWUiLCJQUk9YTU9YX0FQSV9UT0tFTiIsIi1lIiwiUFJPWE1PWF9QQVNTV09SRCIsIi1lIiwiUFJPWE1PWF9BTExPV19XUklURVMiLCItZSIsIlBST1hNT1hfQUxMT1dfREVMRVRFUyIsIi1lIiwiUFJPWE1PWF9BTExPV19FWEVDIiwiZ2hjci5pby9tYXR0b2RkaWUvcHJveG1veC1tY3A6MC41LjEiXSwiZW52Ijp7IlBST1hNT1hfVVJMIjoiJHtQUk9YTU9YX1VSTH0iLCJQUk9YTU9YX0FQSV9UT0tFTiI6IiR7UFJPWE1PWF9BUElfVE9LRU59IiwiUFJPWE1PWF9QQVNTV09SRCI6IiR7UFJPWE1PWF9QQVNTV09SRH0iLCJQUk9YTU9YX0FMTE9XX1dSSVRFUyI6ImZhbHNlIiwiUFJPWE1PWF9BTExPV19ERUxFVEVTIjoiZmFsc2UiLCJQUk9YTU9YX0FMTE9XX0VYRUMiOiJmYWxzZSJ9fQ%3D%3D"
}{
"servers": {
"proxmox-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"env": {
"PROXMOX_URL": "${PROXMOX_URL}",
"PROXMOX_API_TOKEN": "${PROXMOX_API_TOKEN}",
"PROXMOX_PASSWORD": "${PROXMOX_PASSWORD}",
"PROXMOX_ALLOW_WRITES": "false",
"PROXMOX_ALLOW_DELETES": "false",
"PROXMOX_ALLOW_EXEC": "false"
}
}
}
}{
"mcpServers": {
"proxmox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROXMOX_URL",
"-e",
"PROXMOX_API_TOKEN",
"-e",
"PROXMOX_PASSWORD",
"-e",
"PROXMOX_ALLOW_WRITES",
"-e",
"PROXMOX_ALLOW_DELETES",
"-e",
"PROXMOX_ALLOW_EXEC",
"ghcr.io/mattoddie/proxmox-mcp:0.5.1"
],
"env": {
"PROXMOX_URL": "${PROXMOX_URL}",
"PROXMOX_API_TOKEN": "${PROXMOX_API_TOKEN}",
"PROXMOX_PASSWORD": "${PROXMOX_PASSWORD}",
"PROXMOX_ALLOW_WRITES": "false",
"PROXMOX_ALLOW_DELETES": "false",
"PROXMOX_ALLOW_EXEC": "false"
}
}
}
}extensions:
"proxmox-mcp":
enabled: true
name: "proxmox-mcp"
type: stdio
cmd: "docker"
args:
- "run"
- "-i"
- "--rm"
- "-e"
- "PROXMOX_URL"
- "-e"
- "PROXMOX_API_TOKEN"
- "-e"
- "PROXMOX_PASSWORD"
- "-e"
- "PROXMOX_ALLOW_WRITES"
- "-e"
- "PROXMOX_ALLOW_DELETES"
- "-e"
- "PROXMOX_ALLOW_EXEC"
- "ghcr.io/mattoddie/proxmox-mcp:0.5.1"
envs:
"PROXMOX_URL": "${PROXMOX_URL}"
"PROXMOX_API_TOKEN": "${PROXMOX_API_TOKEN}"
"PROXMOX_PASSWORD": "${PROXMOX_PASSWORD}"
"PROXMOX_ALLOW_WRITES": "false"
"PROXMOX_ALLOW_DELETES": "false"
"PROXMOX_ALLOW_EXEC": "false"
timeout: 300
Placeholders to fill from your own secret store: ${PROXMOX_API_TOKEN}, ${PROXMOX_PASSWORD}. The registry never accepts secret values.
This is a local package: the command runs on your machine.
Not scored: fewer than three checks apply, usually because no remote answered a credential-free probe or the server is a local package.
protocol.modern, protocol.stateless, protocol.transport, protocol.list_ttlno remote answered a protocol handshake (not probed yet, unreachable, or local-only)auth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptions, tools.description_length, tools.schemas, tools.annotations, tools.directory_hints, tools.token_cost, tools.api_dumptool list unknown (behind auth, not probed, or empty)stability.changes, stability.rug_pulltool list unknowndeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website ~liveness-unmeasured +updated-16d-ago -unpinned-packages(7)
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
ghcr.io/mattoddie/proxmox-mcp:0.5.1 | oci | unpinned | – | PROXMOX_API_TOKEN, PROXMOX_PASSWORD |
https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-darwin-arm64.mcpb | mcpb | unpinned | – | |
https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-darwin-amd64.mcpb | mcpb | unpinned | – | |
https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-windows-amd64.mcpb | mcpb | unpinned | – | |
https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-windows-arm64.mcpb | mcpb | unpinned | – | |
https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-linux-amd64.mcpb | mcpb | unpinned | – | |
https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-linux-arm64.mcpb | mcpb | unpinned | – |
No tools observed. Local packages are never executed by the registry.
Schemas: list_tools.
{
"name": "io.github.mattoddie/proxmox-mcp",
"title": "Proxmox VE",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"version": "0.5.1",
"packages": [
{
"transport": {
"type": "stdio"
},
"identifier": "ghcr.io/mattoddie/proxmox-mcp:0.5.1",
"registryType": "oci",
"environmentVariables": [
{
"name": "MCP_TRANSPORT",
"value": "stdio",
"description": "Runs the server over stdio. The image defaults to HTTP."
},
{
"name": "PROXMOX_URL",
"isRequired": true,
"description": "Address of any node in the cluster, with the port.",
"placeholder": "https://pve.example.lan:8006"
},
{
"name": "PROXMOX_API_TOKEN",
"isSecret": true,
"description": "Recommended. The whole API token as user@realm!tokenid=secret. Leave empty to use a username and password."
},
{
"name": "PROXMOX_USERNAME",
"description": "Used instead of an API token, as user@realm (e.g. mcp@pve)."
},
{
"name": "PROXMOX_PASSWORD",
"isSecret": true,
"description": "The user's password, used with the username."
},
{
"name": "PROXMOX_TLS_FINGERPRINT",
"description": "Recommended for Proxmox's self-signed certificate: its SHA-256 fingerprint. An https URL needs this or PROXMOX_VERIFY_SSL.",
"placeholder": "AA:BB:CC:…"
},
{
"name": "PROXMOX_VERIFY_SSL",
"description": "Leave empty when you set a fingerprint. true: the certificate is publicly trusted. false: skip the check (insecure)."
},
{
"name": "PROXMOX_DEFAULT_NODE",
"description": "Node used when a request doesn't name one. Not needed on a single-node install."
},
{
"name": "PROXMOX_ALLOW_WRITES",
"format": "boolean",
"default": "false",
"description": "Allow changes: start and stop guests, edit configuration, create VMs, snapshots and backups."
},
{
"name": "PROXMOX_ALLOW_DELETES",
"format": "boolean",
"default": "false",
"description": "Also allow deleting guests, volumes, snapshots, backups and configuration. Needs writes."
},
{
"name": "PROXMOX_ALLOW_EXEC",
"format": "boolean",
"default": "false",
"description": "Also allow commands and file access inside VMs through the guest agent. Needs writes."
},
{
"name": "PROXMOX_TOOLSETS",
"description": "Optional comma-separated toolsets, to expose fewer tools. Empty means all (except raw).",
"placeholder": "cluster,nodes,vms,containers,backup"
},
{
"name": "PROXMOX_AUDIT_LOG",
"description": "Optional. stderr, or a file path inside the container, to log every change as a JSON line."
}
]
},
{
"transport": {
"type": "stdio"
},
"fileSha256": "6c1a1ae20b7fce5f1b11b1d2d6f0de506122682b8abe48637f1a85cea4a88667",
"identifier": "https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-darwin-arm64.mcpb",
"registryType": "mcpb"
},
{
"transport": {
"type": "stdio"
},
"fileSha256": "2de4a2a437efe6ccfb6fd8631a8ab310d34259de6a9d2030ae342d3ed87dff95",
"identifier": "https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-darwin-amd64.mcpb",
"registryType": "mcpb"
},
{
"transport": {
"type": "stdio"
},
"fileSha256": "5c13eb565537faeaa0c4219419620e64351bc73f269c47318654a6b633223525",
"identifier": "https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-windows-amd64.mcpb",
"registryType": "mcpb"
},
{
"transport": {
"type": "stdio"
},
"fileSha256": "0946e2439d6958c8b397d6e77f0c08bc190e56578e8b044fe41b35e337dabc12",
"identifier": "https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-windows-arm64.mcpb",
"registryType": "mcpb"
},
{
"transport": {
"type": "stdio"
},
"fileSha256": "5f932aa1ca8e32456ab09e9ee47b857bc1198931c959a420df75208a1101c891",
"identifier": "https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-linux-amd64.mcpb",
"registryType": "mcpb"
},
{
"transport": {
"type": "stdio"
},
"fileSha256": "1dd8d1503ec2b8e2b458c0169b7bd0c619155a28d2e38a6cc8f9388d8b479674",
"identifier": "https://github.com/mattoddie/proxmox-mcp/releases/download/v0.5.1/proxmox-mcp-0.5.1-linux-arm64.mcpb",
"registryType": "mcpb"
}
],
"repository": {
"url": "https://github.com/mattoddie/proxmox-mcp",
"source": "github"
},
"websiteUrl": "https://proxmox-mcp.mattoddie.dev",
"description": "Monitor and manage Proxmox VE clusters: VMs, containers, storage and backups. Read-only by default."
}