@Archawat/ Cloudflare
БесплатноНе проверенMCP server for managing Cloudflare DNS across multiple zones from a single API token, enabling bulk operations like toggling proxy, listing records, and batch u
Описание
MCP server for managing Cloudflare DNS across multiple zones from a single API token, enabling bulk operations like toggling proxy, listing records, and batch updates.
README
Model Context Protocol (MCP) server for managing Cloudflare DNS across multiple zones (domains) from a single API token. Built for bulk workflows — flipping proxy on/off across many records, auditing DNS across zones, and batched record updates.
Features
- Multi-zone from one token — pass a domain name like
"example.com"and the server resolves the zone for you. Zone IDs also accepted. - Bulk operations —
bulk_toggle_proxy,bulk_update_dns_record, andbulk_list_dns_recordsrun concurrently and share a per-invocation zone-ID cache so repeated zones don't cost extra lookups. - Safe defaults — new A/CNAME records are created with
proxied: false(DNS-only, grey cloud). Proxy is opt-in. - Auto-pagination —
list_dns_recordsfetches every page in parallel unless you ask for a specific one.
Install
No local install required — use npx or bunx to run it on demand.
Claude Code / Claude Desktop (.mcp.json)
Via npx (Node):
{
"mcpServers": {
"cloudflare": {
"command": "npx",
"args": ["-y", "@archawat/mcp-cloudflare"],
"env": { "CLOUDFLARE_API_TOKEN": "cf-token-here" }
}
}
}
Via bunx (Bun):
{
"mcpServers": {
"cloudflare": {
"command": "bunx",
"args": ["-y", "@archawat/mcp-cloudflare"],
"env": { "CLOUDFLARE_API_TOKEN": "cf-token-here" }
}
}
}
Claude Code CLI
claude mcp add cloudflare -s user \
-e CLOUDFLARE_API_TOKEN="cf-token-here" \
-- npx -y @archawat/mcp-cloudflare
Global install (fastest cold-start)
npm install -g @archawat/mcp-cloudflare
# or: bun add -g @archawat/mcp-cloudflare
The global bin is named mcp-cloudflare (unscoped), so:
{
"mcpServers": {
"cloudflare": {
"command": "mcp-cloudflare",
"env": { "CLOUDFLARE_API_TOKEN": "cf-token-here" }
}
}
}
API Token
Create a Cloudflare token at https://dash.cloudflare.com/profile/api-tokens with:
Zone:ReadZone:DNS:Edit
Scope the token to the zones you want to manage, or grant "All zones".
Tools
| Tool | Purpose |
|---|---|
list_zones |
Discover which domains the token can manage. |
list_dns_records |
List records in a zone; auto-paginates across all pages unless page is set. |
bulk_list_dns_records |
List records across many zones in one call. Concurrent per-zone. |
create_a_record |
Create an A record. proxied defaults to false. |
create_cname_record |
Create a CNAME record. proxied defaults to false. |
create_txt_record |
Create a TXT record (SPF, DKIM, DMARC, domain verification). |
create_mx_record |
Create an MX record for mail routing. priority required. |
toggle_proxy |
Flip proxy on/off by record ID, or by name (+ optional type). |
bulk_toggle_proxy |
Flip proxy for many records in one call (shared proxied value). |
update_dns_record |
Patch content, ttl, proxied, or comment on a record. |
bulk_update_dns_record |
Patch many records in one call with per-item fields. |
delete_dns_record |
Delete a record by ID. Destructive. |
All tools accept either a domain name ("example.com") or a 32-char zone ID as the zone argument.
Result shape
Responses are plain text — TSV for lists, one-liners for mutations — to keep token usage low. A single failure in a bulk call doesn't abort the batch.
list_dns_records:
Total: 2
id type name content proxied ttl
abc123 A www.example.com 1.2.3.4 true 1
def456 CNAME api.example.com example.com false 300
create_* / update_dns_record / toggle_proxy / delete_dns_record:
OK: dns_record abc123 created (www.example.com)
bulk_list_dns_records:
Zones: 2 (succeeded: 1, failed: 1)
FAIL: other.com - No zone found for 'other.com'
Records: 1
zone id type name content proxied ttl
example.com abc123 A www.example.com 1.2.3.4 true 1
bulk_toggle_proxy / bulk_update_dns_record:
Succeeded: 1, Failed: 1
OK: example.com/abc123 toggled (www.example.com)
FAIL: other.com/www.other.com - No proxyable record found for 'www.other.com'.
Errors return Failed: <message> with isError: true. Bulk tools also set isError: true whenever any item fails, while still returning every result.
Development
Requires Bun (recommended) or Node 18+.
bun install
bun run dev # run src/index.ts with --watch
bun run start # run src/index.ts once
bun run typecheck # tsc --noEmit
bun run build # emit dist/ for publishing
To run the dev copy as the MCP server instead of the published package, point .mcp.json at your local build:
{
"mcpServers": {
"cloudflare": {
"command": "bun",
"args": ["/abs/path/to/mcp-cloudflare/src/index.ts"],
"env": { "CLOUDFLARE_API_TOKEN": "cf-token-here" }
}
}
}
The server speaks stdio — your MCP client spawns the process and communicates over stdin/stdout.
License
MIT
Установить @Archawat/ Cloudflare в Claude Desktop, Claude Code, Cursor
unyly install archawat-mcp-cloudflareСтавит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.
Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh
Или настроить вручную
Выполни в терминале:
claude mcp add archawat-mcp-cloudflare -- npx -y @archawat/mcp-cloudflareПошаговые гайды: как установить @Archawat/ Cloudflare
FAQ
@Archawat/ Cloudflare MCP бесплатный?
Да, @Archawat/ Cloudflare MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для @Archawat/ Cloudflare?
Нет, @Archawat/ Cloudflare работает без API-ключей и переменных окружения.
@Archawat/ Cloudflare — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить @Archawat/ Cloudflare в Claude Desktop, Claude Code или Cursor?
Открой @Archawat/ Cloudflare на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare @Archawat/ Cloudflare with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
