/ Annuaire / Playground / Cloudflare
● Officiel cloudflare 🔑 Nécessite votre clé

Cloudflare

par cloudflare · cloudflare/mcp-server-cloudflare

MCP officiel Cloudflare — déployez des Workers, interrogez D1, gérez R2 et KV, lisez les logs et analytics, le tout depuis le chat.

MCP officiel de Cloudflare (en fait une famille, servie à distance depuis *.mcp.cloudflare.com). Couvre le déploiement et les logs des Workers, les requêtes SQL D1, le stockage KV/R2, les zones DNS et les analytics Radar. Basé sur OAuth — sans manipulation manuelle de tokens API.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

cloudflare.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "cloudflare": {
      "command": "npx",
      "args": [
        "-y",
        "@cloudflare/mcp-server-cloudflare"
      ]
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "cloudflare": {
      "command": "npx",
      "args": [
        "-y",
        "@cloudflare/mcp-server-cloudflare"
      ]
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "cloudflare": {
      "command": "npx",
      "args": [
        "-y",
        "@cloudflare/mcp-server-cloudflare"
      ]
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "cloudflare": {
      "command": "npx",
      "args": [
        "-y",
        "@cloudflare/mcp-server-cloudflare"
      ]
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "cloudflare",
      "command": "npx",
      "args": [
        "-y",
        "@cloudflare/mcp-server-cloudflare"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "cloudflare": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@cloudflare/mcp-server-cloudflare"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add cloudflare -- npx -y @cloudflare/mcp-server-cloudflare

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : Cloudflare

Déboguer un Worker qui génère des erreurs 500 en production

👤 Développeurs Cloudflare Workers en service ⏱ ~15 min intermediate

Quand l'utiliser : Le taux d'erreur de votre Worker a grimpé en flèche. Vous voulez des logs, les déploiements récents et un diff de ce qui a changé — sans ouvrir le tableau de bord.

Prérequis
  • Compte Cloudflare avec OAuth connecté à votre client MCP — Le premier appel outil déclenche OAuth ; accordez les scopes 'Workers Observability' et 'Workers Bindings'
Déroulement
  1. Tail des logs récents du Worker filtrés par erreur
    Tail logs pour le Worker 'api-edge' au cours des 15 dernières minutes. Filtrez pour le statut >= 500. Groupez par les 100 premiers caractères du message d'erreur.✓ Copié
    → Principaux modèles d'erreurs avec comptages et horodatages
  2. Lister les déploiements récents
    Listez les 5 derniers déploiements de 'api-edge'. Affichez l'heure de déploiement, l'auteur et le hash de version.✓ Copié
    → Chronologie de déploiement — à corréler avec le début des erreurs
  3. Revenir à la version précédente si nécessaire
    Le pic d'erreurs commence après le déploiement à 14:22. Revenez 'api-edge' à la version précédente. Demandez-moi une confirmation avant de procéder.✓ Copié
    → Invite de confirmation avant une action destructive

Résultat : Un Worker de production restauré, avec une note postmortem claire 'le déploiement X a causé les erreurs Y'.

Pièges
  • Le tail des logs est en temps réel uniquement ; peut manquer une rafale déjà passée — Pour les fenêtres historiques, utilisez plutôt les outils MCP Logpush ou Analytics Engine
  • Le revirement ne migre pas l'état D1/KV — Si le mauvais déploiement a exécuté des migrations, revenir à une version antérieure du Worker seul n'est pas suffisant — vous pourriez avoir besoin d'une restauration D1 également
Combiner avec : github · sentry

Exécuter des analyses ad-hoc contre une base de données D1

👤 Développeurs utilisant D1 pour les données d'application ⏱ ~10 min beginner

Quand l'utiliser : Vous voulez des statistiques de conversion d'inscription ou d'utilisation de votre D1, sans écrire un tableau de bord.

Déroulement
  1. Trouver la bonne base de données et lister le schéma
    Listez mes bases de données D1. Pour celle appelée 'prod-app', affichez tous les tableaux et leurs colonnes.✓ Copié
    → Inventaire des bases de données plus schémas
  2. Exécuter la requête d'analyse
    En D1 'prod-app', comptez les utilisateurs qui se sont inscrits au cours des 30 derniers jours regroupés par semaine. Affichez uniquement les utilisateurs qui ont au moins un événement dans le tableau events.✓ Copié
    → Comptages par semaine, SQL valide
  3. Itérer
    Décomposez-le davantage par source d'inscription. Quelle source a le meilleur taux d'activation de 7 jours ?✓ Copié
    → Comparaison par source avec les taux

Résultat : Nombres prêts pour la décision avec le SQL affiché.

Pièges
  • D1 a des limites de lignes et de durée d'exécution par requête — Pour les grandes agrégations, pré-agrégez dans un tableau de synthèse selon un calendrier au lieu de scanner les événements bruts à chaque fois
Combiner avec : notion

Auditer et nettoyer un espace de noms KV surdimensionné

👤 Ingénieurs dont le cache Workers a dérivé ⏱ ~20 min intermediate

Quand l'utiliser : Votre facture KV a augmenté ; vous soupçonnez des clés obsolètes ou des TTL mal configurés.

Déroulement
  1. Surveiller l'espace de noms
    Pour l'espace de noms KV 'session-cache', listez les 1000 premières clés. Échantillonnez 10 valeurs et dites-moi leur structure.✓ Copié
    → Distribution des modèles de clés, formes des valeurs d'échantillon
  2. Identifier les entrées obsolètes
    Pour les clés correspondant à session:*, combien n'ont pas été consultées depuis >30 jours ? (Utilisez les métadonnées si présentes ; sinon échantillonnez et vérifiez les horodatages dans les valeurs.)✓ Copié
    → Estimation des clés obsolètes plus critères utilisés
  3. Supprimer en toute sécurité
    Supprimez les clés correspondant à session:expired:* par lots de 100. Montrez-moi le premier lot avant de procéder.✓ Copié
    → Aperçu du lot avant toute suppression

Résultat : Un espace de noms KV plus propre avec un coût de stockage inférieur.

Pièges
  • KV est éventuellement cohérent — les suppressions peuvent sembler se restaurer brièvement à partir des POP edge — Ne comptez pas sur une cohérence immédiate après une suppression en masse ; vérifiez l'état après une minute

Vérifier les enregistrements DNS avant une migration de domaine

👤 Ingénieurs Ops migrant les domaines entre les fournisseurs ⏱ ~15 min beginner

Quand l'utiliser : Vous êtes sur le point de modifier les serveurs de noms et vous voulez un inventaire de chaque enregistrement pour ne pas perdre MX, DMARC ou un sous-domaine oublié.

Déroulement
  1. Vider chaque enregistrement
    Listez tous les enregistrements DNS pour la zone example.com. Groupez par type. Incluez les priorités pour MX et les poids pour SRV.✓ Copié
    → Inventaire complet des enregistrements
  2. Signaler les enregistrements critiques
    Mettez en évidence ceux qui rompraient le courrier électronique (MX, SPF dans TXT, DKIM, DMARC), plus tous les A/AAAA/CNAME pointant vers des services tiers (Stripe, HubSpot, page de statut).✓ Copié
    → Liste des enregistrements critiques avec justification
  3. Produire une liste de contrôle de migration
    Transformez ceci en liste de contrôle que je peux exécuter chez le nouveau fournisseur — chaque enregistrement avec sa destination, TTL et étape 'tester après migration'.✓ Copié
    → Manuel de déploiement copier-coller

Résultat : Un manuel de jour de migration qui ne laisse aucun enregistrement de côté.

Pièges
  • Les enregistrements DKIM oubliés rompent le courrier électronique silencieusement 24h plus tard — Listez spécifiquement tous les enregistrements _domainkey.<selector> — ce sont les plus faciles à manquer
Combiner avec : filesystem

Vérifier Cloudflare Radar pour un incident internet affectant les utilisateurs

👤 Responsables d'incidents, responsables du support ⏱ ~10 min intermediate

Quand l'utiliser : Les utilisateurs signalent que votre site est hors ligne au Brésil. Ça pourrait être vous, ça pourrait être internet.

Déroulement
  1. Interroger Radar pour le pays
    Cloudflare Radar : y a-t-il une perturbation internet notable au Brésil au cours des 6 dernières heures ? Incluez les anomalies BGP, les pannes des FAI, le trafic d'attaque.✓ Copié
    → Liste des événements connus ou 'rien d'anormal'
  2. Vérifier avec votre trafic
    Pour ma zone example.com, trafic depuis le BR au cours des 6 dernières heures — volume, répartition du statut HTTP, principaux agents utilisateurs.✓ Copié
    → Profil de trafic spécifique au BR
  3. Conclure
    Basé sur Radar + mon trafic, s'agit-il d'un problème général d'internet au Brésil ou spécifique à mon site ?✓ Copié
    → Verdict clair avec les preuves de soutien

Résultat : Une réponse défendable 'pas de notre faute, c'est le problème du <FAI X>' ou 'c'est NOTRE faute, voici quoi'.

Pièges
  • Les données Radar ont un décalage d'environ 1h — Pour les incidents ultra-frais, associez à vos propres données RUM
Combiner avec : sentry

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

cloudflare + github

Corréler un revirement Workers avec le PR GitHub qui a introduit la régression

Le Worker 'api-edge' échoue depuis le déploiement à 14:22. Trouvez le PR GitHub dont la fusion correspond à ce déploiement et résumez ses modifications.✓ Copié
cloudflare + sentry

Sentry signale des erreurs d'origine Worker ; Cloudflare MCP extrait les logs du côté Worker pour le même requestId

Le problème Sentry EDGE-441 a CF-Ray 8abc123. Tail Worker 'api-edge' pour ce rayon et affichez la ligne de log correspondante.✓ Copié
cloudflare + filesystem

Modifiez la source Worker localement, déployez via wrangler, vérifiez via les logs MCP Cloudflare

Corrigez le bug dans src/index.ts à la ligne 44, déployez, puis tail les logs 'api-edge' pour confirmer l'absence d'erreurs 500.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
workers_tail script_name: str, filter?: object Tail des logs Worker en temps réel gratuit (dans les limites du plan)
workers_list_deployments script_name: str Vérifier les versions récentes d'un Worker gratuit
workers_rollback script_name: str, version_id: str Revenir à une version antérieure — gated, destructive gratuit
d1_list_databases none Inventaire de vos bases de données D1 gratuit
d1_query database_id: str, sql: str, params?: [] Exécuter SELECT ou SQL mutant — les écritures nécessitent une confirmation de prompt explicite tarification D1 par lignes lues/écrites
kv_list_keys namespace_id: str, prefix?: str, limit?: int, cursor?: str Énumérer les clés pour l'audit tarification KV read
kv_get_value / kv_put_value / kv_delete namespace_id, key, value?, ttl? Lire/écrire/supprimer des clés spécifiques tarification d'opération KV
r2_list_buckets / r2_list_objects bucket?, prefix? Inventaire R2 opérations de lecture R2
r2_get_object / r2_put_object bucket, key, body? Lire/écrire des objets R2 tarification d'opération R2
dns_list_records zone_id: str Inventaire de zone gratuit
dns_create_record / update_record / delete_record zone_id, record params Mutations de zone — gated gratuit
radar_get_http_timeseries / radar_get_attacks timeframe, region filters Contexte de santé internet global gratuit
analytics_engine_query sql: str Requêtes personnalisées Workers Analytics Engine opérations de lecture du moteur d'analyse

Coût et limites

Coût d'exécution

Quota d'API
Les limites par plan Workers/D1/KV/R2 s'appliquent ; les appels MCP comptent contre votre utilisation régulière
Tokens par appel
200-2000 tokens typique ; les tails de log peuvent être très volumineux — filtrez toujours
Monétaire
MCP est gratuit ; votre facture des services Cloudflare comme d'habitude
Astuce
D1 et KV facturent par lecture de ligne et nombre d'opérations. La liste/analyse en masse peut être étonnamment coûteuse — paginéz avec des tailles de page modestes et arrêtez-vous tôt.

Sécurité

Permissions, secrets, portée

Portées minimales : Workers:Read D1:Read KV:Read
Stockage des identifiants : Tokens OAuth gérés par votre client MCP ; aucun token API à longue durée de vie dans env
Sortie de données : Tous les appels à l'API Cloudflare ; le flux OAuth passe par dash.cloudflare.com
Ne jamais accorder : Account:Admin sauf si absolument nécessaire Zone:DNS:Edit sur les zones en direct sans un test de staging en premier

Dépannage

Erreurs courantes et correctifs

Le flux OAuth n'a pas été complété

Votre client MCP peut ne pas supporter les redirects OAuth. Vérifiez sa documentation (Claude Desktop, Cursor, etc. le supportent tous différemment). Essayez de reconnecter le MCP distant depuis l'interface utilisateur du client.

Le tail des Workers se déconnecte après une minute

Les sessions de tail ont une limite de temps. Redémarrez le tail, ou pour des fenêtres plus longues utilisez Logpush et interrogez via Analytics Engine à la place.

La requête D1 retourne 'Trop de lignes lues'

D1 limite les lignes scannées par requête selon le plan. Ajoutez une clause WHERE qui utilise un index, ou paginéz avec LIMIT.

permission refusée sur un outil DNS

Le scope OAuth pour Zone:DNS:Edit n'a pas été accordé. Reconnectez le MCP et approuvez le scope supplémentaire.

Alternatives

Cloudflare vs autres

AlternativeQuand l'utiliserCompromis
AWS MCP (awslabs)Vous êtes sur AWS, pas sur CloudflareSurface cloud différente ; pas un remplacement direct
Vercel MCPVotre cible de déploiement est Vercel (edge functions, KV, blobs)Modèle MCP distant similaire ; ensemble de fonctionnalités plus étroit
wrangler CLI directement via shellVous voulez la pleine puissance de wrangler (édition de config, secrets) pas juste la surface MCPAucune ergonomie d'agent ; rayon de blast plus large s'il est scriptalisé incorrectement

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills