cloudflare-dns-mcp-server
cloudflare-dns-mcp-server
Ein Model Context Protocol (MCP)-Server, der es jedem MCP-kompatiblen LLM-Client (Claude Code, Claude Desktop, claude.ai Custom Connectors, Cursor und andere) ermöglicht, DNS-Einträge in Ihrem Cloudflare-Konto zu lesen und zu bearbeiten. Er läuft als streambarer HTTP-Server (zustandsloser JSON-Modus, der aktuelle MCP-Standard für Remote-Server) und bietet einen stdio-Modus für Clients, die lokale Subprozess-Server starten.
Tools
Tool | Funktion |
| Bestätigt, dass der API-Token gültig und aktiv ist |
| Listet Domains auf, die der Token verwalten kann |
| Listet/filtert Einträge in einer Zone (Quelle der Eintrags-IDs) |
| Ruft einen Eintrag anhand der ID ab |
| Erstellt A/AAAA/CNAME/MX/TXT/SRV/CAA-Einträge usw. |
| Teilweises Update; liefert Vorher/Nachher, damit Änderungen rückgängig gemacht werden können |
| Löscht (erfordert |
| Exportiert die Zone als BIND-Datei – erstellen Sie vor Massenänderungen ein Backup |
Related MCP server: cloudflare-dns-mcp-server
Einrichtung
Erfordert Node.js 20+.
1. Erstellen Sie einen eingeschränkten Cloudflare-API-Token. Gehen Sie im Cloudflare-Dashboard zu Mein Profil → API-Tokens → Token erstellen → verwenden Sie die Vorlage Zone-DNS bearbeiten und begrenzen Sie sie unter Zonenressourcen auf die spezifische(n) Zone(n), die das Modell verwalten soll. Verwenden Sie nicht den Global API Key – ein eingeschränkter Token bedeutet, dass der schlimmste Fall nur DNS auf diesen Zonen betrifft.
2. Installieren und bauen:
npm install
npm run build3. Konfigurieren und ausführen:
cp .env.example .env # fill in tokens, then either export them or use a loader
export CLOUDFLARE_API_TOKEN="cf_..."
export MCP_AUTH_TOKEN="$(openssl rand -hex 24)" # protects the MCP endpoint itself
npm startDer MCP-Endpunkt ist jetzt unter http://127.0.0.1:8787/mcp erreichbar (Health-Check unter /healthz). Umgebungsvariablen: HOST (Standard 127.0.0.1), PORT (Standard 8787), TRANSPORT (http Standard, oder stdio), ALLOWED_ORIGINS (zusätzliche Browser-Origins, kommagetrennt).
4. Schnelltest:
MCP_AUTH_TOKEN="<same token>" npm run smokeDies verbindet sich mit einem echten MCP-Client, listet die 8 Tools auf und ruft cloudflare_verify_token auf. Sie können auch den MCP Inspector auf die URL richten: npx @modelcontextprotocol/inspector.
Clients verbinden
Claude Code:
claude mcp add --transport http cloudflare-dns http://127.0.0.1:8787/mcp \
--header "Authorization: Bearer $MCP_AUTH_TOKEN"Cursor / andere Clients mit JSON-Konfiguration – jeder Client, der streambares HTTP mit benutzerdefinierten Headern unterstützt, funktioniert auf die gleiche Weise:
{
"mcpServers": {
"cloudflare-dns": {
"url": "http://127.0.0.1:8787/mcp",
"headers": { "Authorization": "Bearer <MCP_AUTH_TOKEN>" }
}
}
}Clients, die nur lokale stdio-Server starten:
{
"mcpServers": {
"cloudflare-dns": {
"command": "node",
"args": ["/path/to/cloudflare-dns-mcp-server/dist/index.js"],
"env": { "CLOUDFLARE_API_TOKEN": "cf_...", "TRANSPORT": "stdio" }
}
}
}claude.ai / Claude Mobile Custom Connectors benötigen eine öffentliche HTTPS-URL – sie können localhost nicht erreichen. Der schnellste Weg ist ein Cloudflare Tunnel vom Rechner, auf dem der Server läuft:
cloudflared tunnel --url http://127.0.0.1:8787Wichtiger Hinweis: Die Custom-Connector-Oberfläche von claude.ai authentifiziert über OAuth oder gar nicht – sie hat kein Feld für einen statischen Bearer-Header. Das lässt zwei Optionen für den Fernzugriff: Den Tunnel hinter Cloudflare Access (Service-Auth) platzieren und die Authentifizierung dort beenden, oder mit nicht gesetztem MCP_AUTH_TOKEN laufen und sich darauf verlassen, dass die Tunnel-URL geheim bleibt – was für etwas, das Ihre DNS-Einträge bearbeiten kann, deutlich schwächer ist. Bei einem Cloudflare Tunnel bindet der Server weiterhin an 127.0.0.1, sodass kein Opt-in erforderlich ist; wenn Sie den Port jedoch direkt statt über einen Tunnel freigeben, erfordert ein unauthentifizierter Nicht-Localhost-Bind ALLOW_UNAUTHENTICATED=true. Prüfen Sie vor der Wahl die aktuellen Auth-Optionen des claude.ai-Connectors; diese ändern sich im Laufe der Zeit.
Sicherheitshinweise
Der Server bindet standardmäßig an 127.0.0.1 und weigert sich, ohne CLOUDFLARE_API_TOKEN zu starten. Wenn Sie ohne gesetztes MCP_AUTH_TOKEN an eine andere Adresse binden, weigert er sich zu starten – jeder, der den Port erreichen kann, könnte Ihre DNS-Einträge bearbeiten – es sei denn, Sie setzen ALLOW_UNAUTHENTICATED=true, was nur angemessen ist, wenn die Authentifizierung vorgelagert erfolgt (z. B. Cloudflare Access). Browser-Origin-Anfragen werden abgelehnt, es sei denn, sie stammen von localhost oder ALLOWED_ORIGINS (DNS-Rebinding-Schutz). Tokens werden aus der Umgebung gelesen, nie protokolliert und von keinem Tool zurückgegeben.
Auf der Modell-Sicherheitsseite: Das Löschen erfordert ein explizites confirm=true-Argument, Updates liefern Vorher/Nachher-Zustände, sodass jede Änderung rückgängig gemacht werden kann, und cloudflare_export_zone bietet ein Ein-Klick-BIND-Backup – es lohnt sich, Ihr Modell vor Massenänderungen darum zu bitten. DNS-Änderungen verbreiten sich im echten Internet; ein falscher Eintrag kann eine Website oder E-Mail lahmlegen. Überprüfen Sie daher, was das Modell vorschlägt, bevor Sie es auf Produktionszonen loslassen.
Entwicklung
npm run build # compile TypeScript → dist/
npm start # run HTTP server
npm run smoke # end-to-end client test against the running serverQuellstruktur: src/index.ts (Transports, Auth-Middleware), src/cloudflare.ts (API-Client, Zonenauflösung, Formatierung), src/tools.ts (Tool-Registrierungen).
Lizenz
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
- Alicense-quality-maintenanceA lightweight MCP server for managing DNS records, purging cache, and interacting with the Cloudflare API through natural language commands.24
- Alicense-quality-maintenanceA token-efficient MCP server for managing Cloudflare DNS zones and records with full CRUD support and bulk operations. It can be deployed locally via stdio or as a Cloudflare Worker for remote HTTP access.
- Alicense-qualityCmaintenanceMCP server for managing Cloudflare DNS across multiple zones from a single API token, enabling bulk operations like toggling proxy, listing records, and batch updates.18MIT
- Alicense-qualityBmaintenanceCloudflare DNS MCP server. Manage zones, DNS records, cache, and page rules from Claude, Cursor, Codex, or any MCP-compatible AI assistant.MIT
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
An MCP server that integrates with Discord to provide AI-powered features.
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/SquarePiSigma5/CloudFlareMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server