mcp-cloudflare
mcp-cloudflare
Schlanker Cloudflare MCP-Server zur Verwaltung von DNS, Zonen, Tunneln, WAF, Zero Trust und Sicherheit über die Cloudflare API v4.
Kein SSH. Keine Shell-Ausführung. Nur API. 3 Laufzeitabhängigkeiten.
Inhaltsverzeichnis
Funktionen
75 Tools in 11 Bereichen:
DNS — Datensatzverwaltung (A, AAAA, CNAME, MX, TXT, SRV, CAA, NS), Batch-Operationen
Zonen — Zonenauflistung, Einstellungen, SSL/TLS-Konfiguration, Cache-Verwaltung
Tunnel — Erstellung, Konfiguration und Ingress-Verwaltung von Cloudflare Tunneln
WAF — Regelwerkverwaltung, benutzerdefinierte Firewall-Regeln, Ratenbegrenzung
Zero Trust — Access-Anwendung CRUD (Erstellen/Löschen), Richtlinien (Erstellen/Löschen), Identitätsanbieter (Erstellen/Löschen), Gateway-Status
Sicherheit — Sicherheitsereignis-Analysen, IP-Zugriffsregeln, DDoS-Konfiguration, Security Center-Einblicke
Workers KV — Namespace-Verwaltung, Key-Value Lesen/Schreiben/Löschen, Key-Auflistung
Workers — Skript-Bereitstellung, Routenverwaltung
Worker Secrets — Geheimnisverwaltung (nur Namen, Werte werden nie offengelegt)
Worker Analytics — Aufrufmetriken, CPU-Zeit, Fehlerraten via GraphQL
R2 Storage — Bucket-Verwaltung, Objekt-Auflistung und Metadaten, benutzerdefinierte Domains, Standort-Hinweise
Schnellstart
npm install
cp .env.example .env # Edit with your Cloudflare API token
npm run build
node dist/index.js # stdio transport for MCPClaude Code Integration
Fügen Sie dies zu .mcp.json in Ihrem Projektstammverzeichnis hinzu:
{
"mcpServers": {
"cloudflare": {
"command": "node",
"args": ["/path/to/mcp-cloudflare/dist/index.js"],
"env": {
"CLOUDFLARE_API_TOKEN": "your-api-token-here",
"CLOUDFLARE_ACCOUNT_ID": "your-account-id"
}
}
}
}Konfiguration
Variable | Erforderlich | Standard | Beschreibung |
| Ja | — | Cloudflare API-Token (mit entsprechenden Berechtigungen) |
| Nein | — | Cloudflare Account-ID (erforderlich für Operationen auf Account-Ebene) |
| Nein |
| Request-Timeout in Millisekunden |
| Nein | — | HashiCorp Vault URL, ermöglicht Vault AppRole-Laden (siehe unten) |
| Nein | — | Vault AppRole role_id |
| Nein | — | Vault AppRole secret_id |
| Nein |
| Vault KV v2 Mount-Pfad |
Laden von Geheimnissen aus HashiCorp Vault (AppRole)
Wenn Sie eine zentrale Vault-Instanz betreiben, kann mcp-cloudflare seine Anmeldedaten beim Start über AppRole abrufen, anstatt sie über die MCP-Konfiguration zu übergeben:
export NAS_VAULT_ADDR=https://vault.example.com
export NAS_VAULT_ROLE_ID=<role-id>
export NAS_VAULT_SECRET_ID=<secret-id>
# optional — defaults to "kv"
export NAS_VAULT_KV_MOUNT=kvDer Loader liest KV v2 unter <mount>/data/cloudflare/api und erwartet zwei Keys: api_token und account_id. Beispiel für einen Vault-Schreibvorgang:
vault kv put kv/cloudflare/api \
api_token=your-api-token-here \
account_id=00000000000000000000000000000000Rangfolge: process.env (explizit) > Vault. Wenn NAS_VAULT_ADDR nicht gesetzt ist, ist der Loader ein stiller No-Op — der Server verhält sich genau wie zuvor. Bei jedem Vault-Fehler (Netzwerk, Auth, fehlender Pfad) wird eine einzeilige Warnung in stderr geschrieben und der Server greift auf die bereits gesetzten Umgebungsvariablen zurück.
Sicherheit: Geheime Werte werden niemals protokolliert. Nur der KV-Pfadname und eine Anzahl der geladenen Elemente erscheinen in den stderr-Diagnosen. Verwendet das globale fetch (Node 20+) — keine neuen Laufzeitabhängigkeiten.
API-Token-Berechtigungen
Erstellen Sie ein API-Token unter dash.cloudflare.com/profile/api-tokens mit den folgenden Berechtigungen, basierend auf Ihren Anforderungen:
DNS: Zone > DNS > Edit
Zoneneinstellungen: Zone > Zone Settings > Edit
Cache-Bereinigung: Zone > Cache Purge > Edit
Tunnel: Account > Cloudflare Tunnel > Edit
WAF: Zone > Firewall Services > Edit
Zero Trust: Account > Access: Apps and Policies > Edit
Sicherheitsereignisse: Zone > Analytics > Read
Workers KV: Account > Workers KV Storage > Edit
Workers: Account > Worker Scripts > Edit
R2: Account > R2 Storage > Edit
Unterstützung für mehrere Zonen
Alle zonenbezogenen Tools akzeptieren einen zone_id-Parameter, der entweder:
Eine 32-stellige Hex-Zonen-ID (z. B.
00000000000000000000000000000001) — direkt verwendetEin Zonenname / Domain (z. B.
example.com) — automatisch über die Cloudflare API aufgelöst
Dies ermöglicht die Verwaltung mehrerer Zonen nach Namen, ohne IDs manuell nachschlagen zu müssen.
Tools
Die Tool-Dokumentation folgt in v1, sobald die Tool-Module implementiert sind. Siehe docs/api-reference.md für die geplante API-Endpunkt-Zuordnung.
Skills
Claude Code Skills kombinieren MCP-Tools zu Workflows auf höherer Ebene. Siehe .claude/skills/README.md für eine detaillierte Dokumentation.
Skill | Slash-Befehl | Beschreibung |
cloudflare-health |
| Zonen-Gesundheits-Dashboard — DNS, Sicherheit, Tunnel, WAF, DDoS-Status |
cloudflare-live-test |
| Live-Integrationstest — Lesen + sichere Schreibvorgänge mit Bereinigung |
cloudflare-dns-management | — | DNS-Datensatzverwaltung — Hinzufügen, Auflisten, Aktualisieren, Löschen über Zonen hinweg |
cloudflare-incident-response | — | DDoS/Angriffs-Notfallreaktion — Erkennen, Bewerten, Eindämmen, Überwachen |
cloudflare-security-audit | — | Sicherheits-Audit — WAF, Ereignisse, IP-Zugriff, DDoS-Analysen |
cloudflare-tunnel-management | — | Tunnel-Verwaltung — Erstellen, Ingress konfigurieren, Verbindungen überwachen |
cloudflare-waf-management | — | WAF-Verwaltung — benutzerdefinierte Regeln, Regelwerke, IP-Zugriff, Under Attack |
cloudflare-zero-trust | — | Zero Trust — Access-Apps, Richtlinien, Identitätsanbieter, Gateway |
cloudflare-kv-manage | — | Workers KV — Namespace- und Key-Value-CRUD-Operationen |
cloudflare-worker-deploy | — | Workers — Skript-Bereitstellung, Routen, Geheimnisse, Analysen |
cloudflare-r2-manage | — | R2 Storage — Bucket- und Objektverwaltung, Audit-Workflows |
Entwicklung
npm run build # Compile TypeScript
npm test # Run unit tests (vitest)
npm run typecheck # Type check only (no emit)Siehe CONTRIBUTING.md für Richtlinien zur Mitarbeit.
Lizenz
Dieses Projekt ist dual lizenziert:
Open Source: GNU Affero General Public License v3.0 (AGPL-3.0) — kostenlos für Open-Source- und nicht-kommerzielle Nutzung
Kommerziell: Verfügbar für proprietäre Integrationen — siehe COMMERCIAL_LICENSE.md
Wenn Sie mcp-cloudflare in einem proprietären Produkt oder SaaS-Angebot verwenden, ist eine kommerzielle Lizenz erforderlich. Unterstützen Sie die Entwicklung durch Sponsoring auf GitHub.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/itunified-io/mcp-cloudflare'
If you have feedback or need assistance with the MCP directory API, please join our Discord server