Skip to main content
Glama
NightSquawk

Proxmox MCP Server

by NightSquawk

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PDM_HOSTNoProxmox Datacenter Manager hostname (expands to https://<host>:8443/api2/json)
PVE_HOSTNoProxmox VE hostname (expands to https://<host>:8006/api2/json)
PDM_AUTH_SEPNoOverride the default '=' separator in the auth header
PDM_BASE_URLNoFull Proxmox Datacenter Manager API base URL (alternative to PDM_HOST)
PDM_TOKEN_IDNoProxmox Datacenter Manager API token ID
PVE_AUTH_SEPNoOverride the default '=' separator in the auth header
PVE_BASE_URLNoFull Proxmox VE API base URL (alternative to PVE_HOST)
PVE_TOKEN_IDNoProxmox VE API token ID (e.g., root@pam!mcp)
PDM_AUTH_SCHEMENoOverride the default PDMAPIToken authentication scheme
PVE_AUTH_SCHEMENoOverride the default PVEAPIToken authentication scheme
PDM_ALLOW_WRITESNoSet to 'true' to enable write operations for PDM surface
PDM_TOKEN_SECRETNoProxmox Datacenter Manager API token secret
PVE_ALLOW_WRITESNoSet to 'true' to enable write operations for PVE surface
PVE_TOKEN_SECRETNoProxmox VE API token secret (UUID)
PROXMOX_ALLOW_WRITESNoSet to 'true' to enable write operations for all surfaces
PDM_TLS_REJECT_UNAUTHORIZEDNoSet to 'false' to accept self-signed certificates (default 'true')
PVE_TLS_REJECT_UNAUTHORIZEDNoSet to 'false' to accept self-signed certificates (default 'true')

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
pve_list_endpointsA

List Proxmox VE API endpoints (operationId, method, path, category, description, read/write, destructive). Filter by category, resource, method, reads/writes, or search. Use this to discover an endpoint, then pve_describe_endpoint for its parameters and pve_call_endpoint to execute it.

pve_describe_endpointA

Get the full spec for one Proxmox VE endpoint: method, path, path params, query/body params (with types, formats, enums, constraints), the response schema, required permissions, and a request sample. Call before pve_call_endpoint so you send exactly the right params.

pve_call_endpointA

Call a Proxmox VE API endpoint and return its JSON response. Validates the operationId and required path params against the catalog, enforces the read-only write gate, then executes. Reads (GET) always run; writes (POST/PUT/DELETE) run only when enabled via PROXMOX_ALLOW_WRITES=true (all surfaces) or PVE_ALLOW_WRITES=true (this surface only). Use pve_describe_endpoint first to learn the exact params.

pdm_list_endpointsA

List Proxmox Datacenter Manager API endpoints (operationId, method, path, category, description, read/write, destructive). Filter by category, resource, method, reads/writes, or search. Use this to discover an endpoint, then pdm_describe_endpoint for its parameters and pdm_call_endpoint to execute it.

pdm_describe_endpointA

Get the full spec for one Proxmox Datacenter Manager endpoint: method, path, path params, query/body params (with types, formats, enums, constraints), the response schema, required permissions, and a request sample. Call before pdm_call_endpoint so you send exactly the right params.

pdm_call_endpointA

Call a Proxmox Datacenter Manager API endpoint and return its JSON response. Validates the operationId and required path params against the catalog, enforces the read-only write gate, then executes. Reads (GET) always run; writes (POST/PUT/DELETE) run only when enabled via PROXMOX_ALLOW_WRITES=true (all surfaces) or PDM_ALLOW_WRITES=true (this surface only). Use pdm_describe_endpoint first to learn the exact params.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 6 tools

Disambiguation4/5

The two endpoint categories (PVE vs PDM) are cleanly separated by the pve_/pdm_ prefixes, and within each the list/describe/call trio has clearly distinct purposes. The only minor ambiguity is that the two list and two describe tools are functionally identical except for their target API, which could cause a misselection if an agent fails to notice the prefix.

Naming Consistency4/5

The naming follows a very consistent pattern: {api}_list_endpoints, {api}_describe_endpoint, {api}_call_endpoint for both PVE and PDM. The pattern is perfectly parallel across both surfaces, though the slightly verbose prefix scheme (pve_/pdm_) could arguably be more concise. This is a strong, predictable convention.

Tool Count5/5

Six tools is an ideal count for a server that proxies two large API surfaces. The two trios each cover the full discover→describe→call workflow for their respective API, making each tool earn its place without any redundancy or bloat.

Completeness5/5

The server's purpose is to proxy arbitrary Proxmox APIs, and it fully covers the necessary surface: discover endpoints, inspect a specific endpoint's spec, and execute the call. The read/write gate and permission metadata are handled by the underlying catalog rather than requiring additional tools. There are no dead-end operations since any Proxmox endpoint can be reached indirectly through this generic pattern.

Maintenance

ActivitySlowing
ResponsivenessNo issues