vcf-ops-mcp
Sentania VCF Ops MCP (inoffiziell)
vcf-ops-mcp ist ein containerisierter, standardmäßig schreibgeschützter MCP-Server mit einer kleinen
Admin-Oberfläche für VCF Operations. Das aktuelle MVP stellt die implementierten Inventar-,
Metrik-, Alarm-, Report-Definitions-, Ziel- und Skills-Lesezugriffe über authentifiziertes
Streamable HTTP bereit. Jeder MCP-Toolaufruf durchläuft den dauerhaften Audit-Dispatcher.
Dies ist ein inoffizielles privates Laborprojekt. Es ist kein Broadcom- oder VMware-Angebot.
Testsuite ausführen
Python 3.12 oder höher ist erforderlich.
python3 -m venv .venv
.venv/bin/python -m pip install --upgrade pip hatchling
.venv/bin/python -m pip install -e '.[test]'
.venv/bin/pytest tests/
./tools/generate_agents_md.sh --check
./tools/consensus-check.py --self-testDie Live-Appliance-Stufe wird übersprungen, sofern ihre expliziten Schutzvariablen nicht bereitgestellt werden. Normale Tests verwenden nur synthetische VCF-Ops-Antworten.
Related MCP server: appd-mcp
Container lokal bauen und starten
Der Dienst erstellt sein Sitzungssignierungsgeheimnis und den Schlüsselbund für Anmeldeinformationen
beim ersten Start auf dem /keys-Volume. Kein manuell erstelltes SESSION_SECRET ist erforderlich.
docker build -t vcf-ops-mcp:local .
docker volume create vcf-ops-mcp-data
docker volume create vcf-ops-mcp-keys
docker volume create vcf-ops-mcp-audit
docker run --name vcf-ops-mcp --rm \
--read-only \
--user 10001:10001 \
--security-opt no-new-privileges \
--cap-drop ALL \
-p 8000:8000 \
-e PUBLIC_BASE_URL=http://localhost:8000 \
-v vcf-ops-mcp-data:/data \
-v vcf-ops-mcp-keys:/keys \
-v vcf-ops-mcp-audit:/audit \
vcf-ops-mcp:localIn einem anderen Terminal:
curl --fail http://localhost:8000/healthzEine Bereitschaftsantwort ist HTTP 200 und meldet alle vier Abhängigkeiten als wahr:
audit_writable, configuration_ready, session_secret_persistent und
mcp_ready. Eine nicht verfügbare Audit-, Konfigurations-, Schlüssel- oder MCP-Abhängigkeit
hält den Prozess diagnostizierbar, gibt jedoch HTTP 503 zurück.
Die Laborbereitstellung besitzt ihr Image-Pinning und ihren Rollout. Die Referenz
deploy/compose.yml behält das externe docker-slots-Netzwerk
und dieselben drei persistenten Volumes bei, aber dieses Repository stellt es nicht bereit.
Laufzeitgeheimnisse durchlaufen niemals CI oder die Compose-Umgebung.
Erste Admin-Anmeldung
Der genehmigte Bootstrap-Pfad verwendet eine vom Betreiber bereitgestellte Passwortdatei. Der Dienst startet ohne sie gesund, aber die Admin-Ebene bleibt unzugänglich, bis die Datei existiert. Das Passwort muss mindestens 16 Bytes enthalten. Es wird mit scrypt in die Laufzeitdatenbank gehasht und die Bootstrap-Datei wird entfernt, wenn die erste Anmeldung das Konto initialisiert. Wenn diese Entfernung fehlschlägt, wiederholt eine spätere Anmeldung die Bereinigung, ohne das gespeicherte Admin-Passwort zu ändern.
Für den lokalen Container erstellen Sie die Datei, ohne das Passwort in den Shell-Verlauf oder in Prozessargumente zu legen:
docker exec -it vcf-ops-mcp sh
umask 077
python -c 'import getpass,pathlib; pathlib.Path("/keys/admin_bootstrap_password").write_text(getpass.getpass("New admin password: "))'
exitFür den docker.int-Slot führt lab-admin dieselbe einmalige Operation über den normalen
administrativen Kanal des Hosts innerhalb des laufenden vcf-ops-mcp-web-Containers durch.
Der Deploy-Key kann und darf dies nicht ausführen, da seine erzwungene Befehls-Allowlist
exec absichtlich ausschließt. Dateipfad und -modus sind dieselben. CI erhält niemals das
Bootstrap-Passwort.
Öffnen Sie http://localhost:8000/admin/login, melden Sie sich als admin an, dann:
Registrieren Sie ein VCF-Ops-Ziel. Neue Ziele sind immer
read_only. Der Produktions-FQDN wird serverseitig erkannt und kann in diesem MVP niemals auf Aktionen umgestellt werden.Wählen Sie die erforderlichen implementierten Lese-Scopes und ein oder mehrere registrierte Ziele aus, und erstellen Sie dann einen MCP-API-Schlüssel. Der Klartextschlüssel wird einmal angezeigt. Nur sein SHA-256-Digest wird gespeichert.
Konfigurieren Sie den MCP-Client mit der Streamable-HTTP-URL
http://localhost:8000/mcp/und dem HeaderAuthorization: Bearer <displayed-key>.Verwenden Sie
list_targets, um zulässige Ziel-IDs zu entdecken, und rufen Sie dann ein Lesetool auf. VCF-Adapterargumente werden imarguments-Objekt dieses Tools übergeben.Prüfen Sie
/admin/audit, um die append-only Versuchs- und Enddatensätze zu sehen.
Die Produktion verwendet https://vcf-ops-mcp.int.sentania.net, das das Admin-Sitzungscookie
Secure hält. Lokales HTTP ist nur aktiviert, wenn PUBLIC_BASE_URL explizit http:// verwendet.
Persistente Daten und Wiederherstellung
Die drei Volume-Roots haben separate Aufgaben:
Volume-Pfad | Inhalt |
| Laufzeit-SQLite-Datenbank mit Admin-Hash, Zielmetadaten, verschlüsselten Anmeldeinformationen und API-Schlüssel-Digests |
| Generiertes Sitzungsgeheimnis, Audit-Argument-Digest-Schlüssel, versionierter AES-256-GCM-Schlüsselbund und die einmalige Admin-Bootstrap-Datei |
| Append-only SQLite-Audit-Ledger |
Sichern Sie /data, /keys und /audit als separate geschützte Artefakte. Der Verlust von
/keys bei verbleibenden verschlüsselten Zielaufzeichnungen ist absichtlich nicht wiederherstellbar.
Der Server weigert sich, den Schlüsselbund für Anmeldeinformationen über vorhandenen Chiffretext
neu zu generieren. Verwenden Sie für eine etablierte Bereitstellung nicht docker compose down -v.
Wenn ein Prozess nach dem Committen eines Audit-Versuchs, aber vor seinem Enddatensatz stirbt,
hängt der nächste Start outcome_unknown an. Er überschreibt niemals den Versuch oder erfindet
ein erfolgreiches Ergebnis.
MVP-Grenze
Geliefert:
Automatische dauerhafte
SESSION_SECRET-Generierung, mit einer expliziten Umgebungsüberschreibung für den direkten Prozessbetrieb.Dauerhafte verschlüsselte Zielkonfiguration, Bootstrap-Admin-Login, Scoped-API-Schlüssel-Mint und -Widerruf, Zielregistrierung und Audit-Anzeige.
Authentifiziertes Streamable HTTP mit den implementierten Lese-Adaptern, Zielerkennung und sowohl Skills-Tools als auch Skills-Ressourcen/Prompts. Skill-Inhalte über Ressourcen und Prompts erfordern dieselbe
read:skills-Fähigkeit wie die Skills-Tools; nur konkrete Ressourcen-Erkennung ist ohne sie verfügbar.Schreibgeschützte Zielhaltung, API-Schlüssel-Ziel-Allowlists, standardmäßig verweigerte implementierte Scopes, der Produktionsziel-Hard-Block, Antwortprojektion und -begrenzungen sowie dauerhaftes Pro-Tool-Audit.
Absichtlich verschoben:
Alle Aktionsausführung, aktionsfähige Schlüssel, Report-Läufe, Plan/Apply und asynchrones Task-Polling. Diese bleiben hinter dem menschlichen Phase-2-Gate.
Zielbearbeitung und Anmeldeinformationsrotation in der UI.
Download abgeschlossener Reports, da die Entwicklungs-Appliance keine abgeschlossenen Reports hat, ohne zuerst eine Report-Mutation auszuführen.
Externe Exposition, NSX, VCFA-Automatisierung, direkte vCenter-Tools und PII-Bereinigung.
Nicht-LOCAL-Authentifizierungsquellen-Erkennung. Der frühere willkürliche FQDN-Abruf wurde entfernt, da er eine SSRF-Grenze war, kein sicherer Erkennungsmechanismus.
Siehe docs/SPEC.md, die akzeptierten Aufzeichnungen in docs/decisions und docs/read-plane.md für den vollständigen Vertrag und gemessene VCF-Ops-Verhalten.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides read-only access to query and retrieve information about devices, fleets, events, and configurations managed by Flight Control through a safe integration layer supporting filtering and selector-based queries.
- AlicenseAqualityBmaintenanceA read-only MCP server for AppDynamics that exposes 12 task-oriented tools to query applications, topology, metrics, snapshots, health rules, anomalies, events, alerting config, analytics events, and dependency maps via OAuth API-client credentials.121MIT

KVMFleet MCP Serverofficial
AlicenseAqualityCmaintenanceRead-only MCP server that allows AI assistants to query and monitor KVM Fleet devices, audit logs, and console sessions through the official REST API.5141MIT- AlicenseAqualityCmaintenanceExposes an observability REST API as MCP tools, enabling incident investigation through automated correlation of deploys with errors, log and metrics queries.6MIT
Related MCP Connectors
Read-only access to your VortexIQ store data: audits, KPIs, alerts, Brand DNA, reports, Ask VIQ.
A paid remote MCP for AI SDK data query MCP, built to return verdicts, receipts, usage logs, and aud
XFA's remote MCP server — query device posture, compliance, policies & CVEs. Read-only.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sentania-labs/vcf-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server