MCP Cloudflare DNS
Gerencie zonas DNS, registros, purga de cache e regras de página do Cloudflare a partir de qualquer assistente de IA compatível com MCP.
GitHubExperimente este MCPPatrocinado
Documentação
mcp-cloudflare-dns
Servidor MCP DNS da Cloudflare para operadores que precisam de controle de zona, registro, cache e regras de página a partir de um cliente MCP, sem abrir o painel da Cloudflare a cada alteração.
Postura de lançamento: pacote beta, versão 0.1.1 de pyproject.toml.
Escolha seu caminho
| Você é... | Comece aqui | Depois |
|---|---|---|
| Instalando o servidor no Claude/Codex/Cursor | docs/start-here.md | Início rápido abaixo |
| Verificando o que o servidor pode acessar | Ferramentas disponíveis | docs/architecture.md |
| Auditando empacotamento ou metadados de lançamento | pyproject.toml | server.json |
Arquitetura
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
Fluxo de requisições
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]
Início rápido
- Instale o pacote.
python -m pip install mcp-cloudflare-dns
- Exporte um token com permissões de DNS.
export CF_API_TOKEN="your-cloudflare-api-token"
- Registre-o no seu cliente MCP.
{
"mcpServers": {
"cloudflare-dns": {
"command": "uvx",
"args": ["mcp-cloudflare-dns"],
"env": {
"CF_API_TOKEN": "your-cloudflare-api-token"
}
}
}
}
Ferramentas disponíveis
| Grupo de ferramentas | Ferramentas | Finalidade |
|---|---|---|
| Inventário de zonas | list_zones, get_zone, get_zone_settings | Inspecione zonas disponíveis e configurações principais |
| Registros DNS | list_dns_records, get_dns_record, create_dns_record, update_dns_record, delete_dns_record | Leia e altere registros |
| Ações de borda | purge_cache, list_page_rules | Invalide conteúdo em cache e inspecione regras de página |
delete_dns_record e ações de cache completo permanecem protegidos pelos sinalizadores destrutivos de ambiente descritos em docs/start-here.md.
Prova de execução
| Reivindicação | Prova |
|---|---|
| O ponto de entrada do pacote é estável | mcp-cloudflare-dns = "cf.server:main" em pyproject.toml |
| O servidor é específico para MCP, não um CLI genérico | FastMCP("mcp-cloudflare-dns") em cf/server.py |
| Falhas da Cloudflare são repetidas | _call() em cf/server.py |
| Artefatos de lançamento são construídos | roda dist/ e tarball são verificados no repositório |
Mapa do repositório
| Caminho | Finalidade |
|---|---|
cf/server.py | Superfície de ferramentas FastMCP, carregamento de ambiente, wrapper de repetição |
pyproject.toml | Metadados do pacote, versão, ponto de entrada do script |
server.json | Metadados voltados ao registro para descoberta MCP |
docs/start-here.md | Configuração, ambiente, validação, falhas comuns |
docs/architecture.md | Mapa de componentes e ciclo de vida de requisições |
Validação
| Verificação | Comando |
|---|---|
| Importação compila | python -m compileall cf |
| Pacote compila | python -m build |
| Links README permanecem locais | rg '\\]\\(([^)]+\\.md)\\)' README.md docs/ |
Licença
MIT