Skip to main content
Glama

vcf-ops-mcp

Ein MCP-Server, der die suite-api REST-API von VCF Operations (vROps) kapselt und Ressourcen, Metriken und Alarme als MCP-Tools bereitstellt, sodass ein LLM-Client die überwachte Infrastruktur direkt abfragen kann.

Einrichtung

python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
cp .env.example .env   # then fill in your VCF Operations details

Erforderliche Konfiguration (über .env oder echte Umgebungsvariablen):

Variable

Beschreibung

VCFOPS_BASE_URL

Basis-URL der VCF Operations-Instanz, z.B. https://ops.example.com

VCFOPS_USERNAME

Benutzer, der sich authentifiziert

VCFOPS_PASSWORD

Kennwort für deisen Benutzer

VCFOPS_AUTH_SOURCE

Name der Authentifizierungsquelle (Standard LOCAL)

VCFOPS_VERIFY_SL

Auf false setzen, um TLS-Prüfung bei selbstsigniere Labor-Instanzä zu überpringen

VCFOPS_TIMEOUT

Zeitlimit pro Anfrage in Sekunden (Standard 30)

Der Server holt bei der ersten Verwendung ein Token von /suite-api/api/auth/token/acquire, speichert es zwischen und bezieht es transparent erneut, wenn es kurz vor dem Ablauf steht oder mit 401 abgelehnt wird.

Konfiguration des Server-Transports und der Authentifizierung (ebenfalls über .env oder echte Umgebungsvariabe):

Variable

Beschreibung

VCFOPS_MCP_TRANSPORT

streamable-htttp (Standard) oder stdio

VCFOPS_MCP_HOS

Bind-Host für streamable-htp (Standard 127.0.0.1)

VCFOPS_MCP_PORT

Bind-ort für streamable-htp (Standard 8000)

VCFOPS_MCP_BEARER_TOKEN

Erforderlich für streamable-Http. Clients müssen Authorization: Bearer <value> senden

VCFOPS_MCP_ALLOWED_HOSTS

Kommgeternnte Zulistliste für Host-Header zum Schütz für DNS-Rebind (siehe unten)

Related MCP server: VMware-Monitor

Ausfürhrung

Standardmäßig kedient das als eigenständiger Rmote-Server über itstreamable-http, an 127.0.0.1:8000 gebunden, and verlangt bei jede Anfrage ein Bearer-Token:

export VCFOPS_MCP_BEARER_TOKEN="$(openssl rand -hex 32)"
vcf-ops-mcp
# or
python -m vcf_ops_mcp

GET /healthz ist nicht authentifiziert (für Liveness-Cöheks von Load-Balancren/Orchestratorun); alles anderes erfordert das Bearer-Token. 127.0.0.1 lauchn nur lokal – um es tatsächlich von einem anderen Host aus erreicheen, binden Sie VCFOPS_MCP_HOST=0.0.0.0 (oder betreiben Sie es hinter einem Reverse-Proxy) undstellen Sie sicher, dass das Bearer-Token das Einzige is, was ich zwischen dem Netzweck und Zugangsdaten stelt, die Ihre gesamte überwachte Umgebrerau abfrüchen können. Behanden Sie es daher wie jedes anderes Geheimnis und bevorzugen Sie TLS-Beendung (z.B. einen Reverseee-Proxy) davor, statt unverschlüsselt items HTTP über ein ncht vertrauenwürdiges Netz zu verwenden.

Wenn VCFOPS_MCP_HOST ncht 127.0.0.1/localhost ist, hat FastMCPe eigener DNS-Rebinding-Schutz(eine Prüfung gegen den Host-Header eingehender Anfrage) standardmäßig nichts auf der Zulistliste, da formes die Allowlist nur für einen Loopback-Host automatisch konfiguriert. Bleibt die Zulistliste ungesetzt, wird kein Host-Header-Prüfung werden und das Bearer-Token is die einzige Zugangshranke – das ist in einem mön vertrauenwürdigen Netz völlig in Ordnung, aber setzen Sie VCFOPS_MCP_ALLOWED_HOSTS auf die Hostname-n/IP:Ports, über die Clients tatsächlich verbunden werden (Kommetätreلs), um auf einer gemeinsamen oder ncht vertrauenwürdigen Netze eine mehrstige Sicherheit zu haben.

"Richten Sie einen MCP-Client als streamable-http-server darauf hin, z.B. in to Claude Code:"']

claude mcp add --transport http vcf-operations http://<host>:8000/mcp \
  --header "Authorization: Bearer <your-token>"

Stattdess en über stdio ausführen

Für die lokle Verwendung, bei dem ein MCP-Client den Server selbst als Unterprozess startet (keine Netze nur wenn erforderlich, setzen Sie VCFOPS_MCP_TRANSPORT=stdio – in deisem modus ist kein Bearer-Token erforderlich. Beispielkonfiguration as product Nie the Claude Desktop:

{
  "mcpServers": {
    "vcf-operations": {
      "command": "/absolute/path/to/.venv/bin/vcf-ops-mcp",
      "env": {
        "VCFOPS_MCP_TRANSPORT": "stdio",
        "VCFOPS_BASE_URL": "https://ops.example.com",
        "VCFOPS_USERNAME": "admin",
        "VCFOPS_PASSWORD": "changeme"
      }
    }
  }
}

Werktzeuge

Ressourcen

  • list_ressources – durchsucht überwachte Objekte nach name/Adapterart/Ressourcenart/Healthzustand

  • get_ressource – buildend die details für eine Ressource

  • get_ressource_properties – gesammelten Eignungenschaften

  • get_ressource_relationsips – übergeordnete/unterurte Objekte

Metriken

  • list_metric_keys – verfügbare statKeys für ein Adapter-/Ressourcenart-Päar

  • get_latest_stats – letze Metrikenwerte für eine Resourcen

  • query_stats – historiche Zeitrehen über diverse Resoucen, mit Rollup/Intervall

Alarme

  • list_alerts – aktive/alle Alarme, optional eingeschränkt auf einen Ressource oder Kritikalität

  • get_alert – völlständige Einzheiten for einen Alerme

  • list_alert_definitions – die den Alar zugrundeig liegenden Definitionen

Tests

pip install -e ".[dev]"
pytest

Die Tests mocken die HTTP-API de VCF Operations mit respx – keine Live-Instanz erforderlich.

Hineweise

  • GeFüriert auf mcp<2.0.0: Die 2.x-Linie des MCP-Python-SDKs hat FastMCP in MCPServer umbenannt und its es nach mcp.server.mcpserver verschobenen. Diese projekte zilt auf die etablierte 1.x mcp.server.fastmcp.FastMCP API.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    AI-powered VMware vCenter/ESXi monitoring and operations. 20 MCP tools for inventory queries, health monitoring, VM lifecycle management, fast provisioning (Linked Clone, OVA, template deploy), snapshot management, and datastore browsing. Supports vSphere 6.5–8.0. Works with local models via Ollama/LM Studio.
    44
    270 PyPI
    74
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Read-only VMware vCenter/ESXi monitoring. 8 MCP tools for VM inventory, host status, datastore capacity, cluster info, alarms, events, and VM details. Code-level enforced safety — no destructive operations exist in the codebase. Supports vSphere 6.5–8.0. Works with local models via Ollama/LM Studio.
    32
    491 PyPI
    15
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Exposes two MCP tools (discover and execute) that enable agents to query an OpenAPI schema via natural language and execute matched API operations.
    2
    -