mcp-cloudflare-dns
Cloudflare DNS MCP server for operators who need zone, record, cache, and page-rule control from an MCP client without opening the Cloudflare dashboard for every change.
Release posture: beta package, version 0.1.1 from pyproject.toml.
Choose your path
Architecture
flowchart TD
U[AI operator] --> C[MCP client]
C --> S[FastMCP server]
E[CF_API_TOKEN] --> S
S --> T[Tool handlers]
T --> R[Retry wrapper]
R --> A[Cloudflare API]
A --> R --> T --> C
Request flow
flowchart TD
Q[Operator asks for a DNS change] --> H[Selected MCP tool]
H --> I[Load token and build client]
I --> J{Cloudflare call succeeds?}
J -- yes --> K[Return normalized JSON result]
J -- retryable --> L[Backoff and retry]
L --> J
J -- no --> M[Return error payload]
Quick start
- Install the package.
python -m pip install mcp-cloudflare-dns
- Export a token with DNS permissions.
export CF_API_TOKEN="your-cloudflare-api-token"
- Register it in your MCP client.
{
"mcpServers": {
"cloudflare-dns": {
"command": "uvx",
"args": ["mcp-cloudflare-dns"],
"env": {
"CF_API_TOKEN": "your-cloudflare-api-token"
}
}
}
}
Available tools
delete_dns_record and full-cache actions stay gated behind the destructive env flags described in
docs/start-here.md.
Runtime proof
Repo map
Validation
License
MIT
Project context for new tasks
Read prompt.md, then INDEX.md, for project-specific decisions, task routes and current handoff. Historical examples do not select the current task.