MCP Cloudflare DNS Server

Manage Cloudflare DNS zones, records, cache purge, and page rules from any MCP-compatible AI assistant.

Documentation

mcp-cloudflare-dns

Cloudflare DNS MCP server. Manage zones, DNS records, cache, and page rules from Claude, Cursor, Codex, or any MCP-compatible AI assistant.

# Install:  uvx mcp-cloudflare-dns

# Ask your AI:
"List all DNS records for example.com"
"Add a CNAME record pointing api.example.com to my-app.vercel.app"
"Purge the cache for https://example.com/products"
"What page rules are active on example.com?"

Why this one?

The official Cloudflare MCP covers Workers, KV, D1, and R2 — but has zero DNS tools. This server fills that gap.

FeatureThis serverOfficial CF MCP
DNS record CRUDYesNo
Zone listingYesNo
Cache purgeYesNo
Page rulesYesNo
Zone settingsYesNo
Workers/KV/D1/R2NoYes

They complement each other — use both.


Quickstart

1. Get a Cloudflare API tokendash.cloudflare.com/profile/api-tokens → Create Token → use "Edit zone DNS" template

2. Add to your MCP client config:

{
  "mcpServers": {
    "cloudflare-dns": {
      "command": "uvx",
      "args": ["mcp-cloudflare-dns"],
      "env": {
        "CF_API_TOKEN": "your-cloudflare-api-token"
      }
    }
  }
}

3. Restart your AI client. Done.


Available tools

ToolWhat it does
list_zonesAll zones on your account with status and nameservers
get_zoneDetails for a specific zone
get_zone_settingsSSL mode, security level, minification, HTTPS redirect, etc.
list_dns_recordsAll DNS records, filterable by type or name
get_dns_recordSingle record by ID
create_dns_recordAdd A, AAAA, CNAME, MX, TXT, NS, etc.
update_dns_recordEdit content, TTL, proxy status, or comment
delete_dns_recordRemove a record (requires CF_ALLOW_DESTRUCTIVE=true)
purge_cachePurge specific URLs or entire zone cache
list_page_rulesAll page rules with targets and actions

Environment variables

VariableRequiredDescription
CF_API_TOKENYesCloudflare API token (also accepts CLOUDFLARE_API_TOKEN)
CF_ALLOW_DESTRUCTIVENoSet to true to enable record deletion and full cache purge
MCP_TRANSPORTNoSet to sse for remote/VPS deployment (default: stdio)
MCP_HOSTNoSSE bind host (default: 127.0.0.1)
MCP_PORTNoSSE bind port (default: 3001)

API token permissions

Minimum required scopes for your token:

ResourcePermission
Zone — DNSEdit
Zone — ZoneRead
Zone — Cache PurgePurge
Zone — Page RulesEdit (if using page rules tools)

License

MIT