Skip to content
VS Code

Proxmox VE for VS Code

io.github.akmalovaa/proxmox-mcp

Manage Proxmox VE nodes, VMs, containers, storage and snapshots. Read-only by default.

client:VS Code transport:stdio runtime:pypi

Install Proxmox VE in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "proxmox-host",
      "description": "PROXMOX_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-port",
      "description": "PROXMOX_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-verify-ssl",
      "description": "PROXMOX_VERIFY_SSL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-timeout",
      "description": "PROXMOX_TIMEOUT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-user",
      "description": "PROXMOX_USER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-token-name",
      "description": "PROXMOX_TOKEN_NAME",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-token-value",
      "description": "PROXMOX_TOKEN_VALUE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-password",
      "description": "PROXMOX_PASSWORD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-risk-level",
      "description": "PROXMOX_RISK_LEVEL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-tools-allow",
      "description": "PROXMOX_TOOLS_ALLOW",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-redact-secrets",
      "description": "PROXMOX_REDACT_SECRETS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-transport",
      "description": "PROXMOX_MCP_TRANSPORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-host",
      "description": "PROXMOX_MCP_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-port",
      "description": "PROXMOX_MCP_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-path",
      "description": "PROXMOX_MCP_PATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-json-response",
      "description": "PROXMOX_MCP_JSON_RESPONSE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-allowed-hosts",
      "description": "PROXMOX_MCP_ALLOWED_HOSTS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "proxmox-mcp-allowed-origins",
      "description": "PROXMOX_MCP_ALLOWED_ORIGINS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sentry-dsn",
      "description": "SENTRY_DSN",
      "password": true
    }
  ],
  "servers": {
    "proxmox-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "proxmox-ve-mcp"
      ],
      "env": {
        "PROXMOX_HOST": "${input:proxmox-host}",
        "PROXMOX_PORT": "${input:proxmox-port}",
        "PROXMOX_VERIFY_SSL": "${input:proxmox-verify-ssl}",
        "PROXMOX_TIMEOUT": "${input:proxmox-timeout}",
        "PROXMOX_USER": "${input:proxmox-user}",
        "PROXMOX_TOKEN_NAME": "${input:proxmox-token-name}",
        "PROXMOX_TOKEN_VALUE": "${input:proxmox-token-value}",
        "PROXMOX_PASSWORD": "${input:proxmox-password}",
        "PROXMOX_RISK_LEVEL": "${input:proxmox-risk-level}",
        "PROXMOX_TOOLS_ALLOW": "${input:proxmox-tools-allow}",
        "PROXMOX_REDACT_SECRETS": "${input:proxmox-redact-secrets}",
        "PROXMOX_MCP_TRANSPORT": "${input:proxmox-mcp-transport}",
        "PROXMOX_MCP_HOST": "${input:proxmox-mcp-host}",
        "PROXMOX_MCP_PORT": "${input:proxmox-mcp-port}",
        "PROXMOX_MCP_PATH": "${input:proxmox-mcp-path}",
        "PROXMOX_MCP_JSON_RESPONSE": "${input:proxmox-mcp-json-response}",
        "PROXMOX_MCP_ALLOWED_HOSTS": "${input:proxmox-mcp-allowed-hosts}",
        "PROXMOX_MCP_ALLOWED_ORIGINS": "${input:proxmox-mcp-allowed-origins}",
        "SENTRY_DSN": "${input:sentry-dsn}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

Proxmox VE in other clients