Manages Cloudflare zones, DNS records, cache purges and Workers KV, and reads zone analytics through the Cloudflare API.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add cloudflare-server-ry-ops --env CLOUDFLARE_ACCOUNT_ID='<CLOUDFLARE_ACCOUNT_ID>' --env CLOUDFLARE_API_TOKEN='<CLOUDFLARE_API_TOKEN>' -- uv --directory /absolute/path/to/cloudflare-mcp-server run cloudflare-mcp-server~/.codex/config.toml
[mcp_servers.cloudflare-server-ry-ops]
command = "uv"
args = ["--directory", "/absolute/path/to/cloudflare-mcp-server", "run", "cloudflare-mcp-server"]
env = { CLOUDFLARE_ACCOUNT_ID = "<CLOUDFLARE_ACCOUNT_ID>", CLOUDFLARE_API_TOKEN = "<CLOUDFLARE_API_TOKEN>" }
# codex mcp add cloudflare-server-ry-ops --env CLOUDFLARE_ACCOUNT_ID='<CLOUDFLARE_ACCOUNT_ID>' --env CLOUDFLARE_API_TOKEN='<CLOUDFLARE_API_TOKEN>' -- uv --directory /absolute/path/to/cloudflare-mcp-server run cloudflare-mcp-server~/.cursor/mcp.json
{
"mcpServers": {
"cloudflare-server-ry-ops": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/cloudflare-mcp-server",
"run",
"cloudflare-mcp-server"
],
"env": {
"CLOUDFLARE_ACCOUNT_ID": "<CLOUDFLARE_ACCOUNT_ID>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"cloudflare-server-ry-ops": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/cloudflare-mcp-server",
"run",
"cloudflare-mcp-server"
],
"env": {
"CLOUDFLARE_ACCOUNT_ID": "<CLOUDFLARE_ACCOUNT_ID>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"cloudflare-server-ry-ops": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/cloudflare-mcp-server",
"run",
"cloudflare-mcp-server"
],
"env": {
"CLOUDFLARE_ACCOUNT_ID": "<CLOUDFLARE_ACCOUNT_ID>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"cloudflare-server-ry-ops": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/cloudflare-mcp-server",
"run",
"cloudflare-mcp-server"
],
"env": {
"CLOUDFLARE_ACCOUNT_ID": "<CLOUDFLARE_ACCOUNT_ID>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"cloudflare-server-ry-ops": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/cloudflare-mcp-server",
"run",
"cloudflare-mcp-server"
],
"env": {
"CLOUDFLARE_ACCOUNT_ID": "<CLOUDFLARE_ACCOUNT_ID>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}Environment variables
CLOUDFLARE_ACCOUNT_IDCLOUDFLARE_API_TOKEN
Replace the placeholders with your own credentials and keep them out of version control.