Tuto #13 Claude : suivre sa visibilité dans les LLM avec DataForSEO

Tuto #13 Claude : suivre sa visibilité dans les LLM avec DataForSEO

Date de création
June 10, 2026
Sélectionner

Avec l’arrivée des LLM et l’essort du GEO, j’accompagne de plus en plus de client dans le suivi de leurs visibilité dans les IA. Pour cela, j’utilise des outils comme Botrank, Meteoria ou Qwairy pour suivre les réponses de ChatGPT ou Gemini à un ensemble de prompts.

Ces outils sont tops mais parfois un peu chers notamment pour des analyses oneshot. Et c’est pourquoi je vous propose une alternative avec Claude et le MCP DataForSEO.

1. Plusieurs options dans DataForSEO pour son suivi LLM

DataForSEO propose quatre API distinctes dans sa suite AI Optimization :

API
Ce qu'elle fait
Pour quel usage
LLM Responses
Envoie vos prompts aux API officielles (OpenAI, Anthropic, Google, Perplexity) et renvoie la réponse en JSON
Tester comment l'IA répond à des prompts précis. C'est ce qu'on utilise ici.
LLM Scraper
Scrape l'interface web de ChatGPT/Gemini telle que l'utilisateur la voit (mode search avec citations)
Voir ce que l'utilisateur voit réellement à l'écran, sources incluses
LLM Mentions
Interroge une base agrégée de +200M réponses IA déjà collectées : dit quand votre domaine est cité/mentionné
Monitoring de part de voix dans le temps. Données J+2 à J+7, pas temps réel.
AI Keyword Data
Volumes de recherche et intentions basés sur l'usage des mots-clés dans les outils IA
Recherche de mots-clés à l'ère de l'IA

On va parlé dans ce tuto de LLM Responses !

Réponses des LLM via scraping ou via API officielle ?

Le même prompt peut donner des résultats différents selon la méthode. ChatGPT en mode interface Search active automatiquement une recherche web et formate sa réponse différemment de ce que retourne l'API avec web_search: true. Les sources citées en bas de l'interface web ne correspondent pas toujours aux URLs qu'on extrait de la réponse API. Les deux ne mesurent pas exactement la même chose.

C'est quoi le mieux ?

Via API c’est plus stable et reproductible mais potentiellement un peu différent de ce qu’un utilisateur voit vraiment. Le mieux c’est toujours d’utiliser un combo des deux.

1.2 . Ce qui se fait dans Claude (MCP) vs ce qui passe par Python

Le MCP DataForSEO connecté à Claude n'expose QUE les endpoints dataforseo_labs. Tous les endpoints ai_optimization (LLM Responses, Scraper, Mentions) ne sont pas accessibles via le MCP. Ils nécessitent un appel direct à l'API DataForSEO en Basic Auth.

C’est pourquoi dans ce cas concret je suis passé par un script en python en local.

2. Construire le panel de prompts

La qualité de l'analyse dépend entièrement de la qualité des prompts.

Il faut construire un panel qui couvre le parcours de décision réel de la cible. Pour mon exemple (une solution B2B de recouvrement médical), j'ai structuré 30 prompts en 5 catégories :

  • Problème générique : « comment réduire les impayés patients ? » (le prospect ne connaît pas encore les solutions)
  • Choix de solution : « quelles plateformes pour gérer la relance amiable ? » (il compare)
  • Cible spécifique : « quelle solution de relance pour un kiné libéral ? » (segment précis)
  • Réglementaire / pédagogie : « c'est quoi le forfait journalier hospitalier ? » (autorité éditoriale)
  • Marque directe : « c'est quoi [ma marque] ? » (uniquement pour vérifier ce que l'IA sait déjà)

Astuce : demandez à Claude de générer ces prompts à partir de vos personas. Il connaît les pain points de votre cible si vous les lui avez décrits.

3. Le script Python : lancer les prompts via LLM Responses

On demande à Claude de construire le script. Le cœur de l'appel, c'est un POST en Basic Auth sur l'endpoint de chaque LLM. Voici la structure d'authentification :

import requests
from base64 import b64encode
 
LOGIN = 'votre_email'
PASSWORD = 'votre_password_API'  # API Access, pas le mdp de connexion
 
def auth_header():
    creds = f'{LOGIN}:{PASSWORD}'
    encoded = b64encode(creds.encode()).decode()
    return {'Authorization': f'Basic {encoded}',
            'Content-Type': 'application/json'}

Puis l'appel à l'endpoint ChatGPT (les endpoints Gemini et Perplexity suivent la même logique) :

Attention à ces trois points :

  1. Le texte n'est PAS dans items[0].text. Il est dans items[0].sections[N].text avec type == 'text'. Beaucoup de tutos se trompent là-dessus.
  2. Gemini refuse web_search_country_iso_code. Ce paramètre fait échouer 100 % des tâches Gemini (erreur de paramètre invalide). À retirer pour Gemini, à garder pour les autres.
  3. Rate limit sur Gemini (erreur 50301) : l'endpoint sature côté DataForSEO. Prévoyez un retry avec backoff, ou lancez Gemini séparément.

Pour chaque réponse récupérée, le script vérifie si votre domaine/marque apparaît, et range le résultat en trois statuts :

  • cité (l'URL est présente comme source),
  • mentionné (le nom apparaît sans lien),
  • absent.

4. Quelles données on reçoit et comment les analyser

Une fois le script lancé sur les 30 prompts × plusieurs LLMs, on obtient un CSV/JSON avec, pour chaque ligne : le prompt, le LLM, le statut de la marque, les marques concurrentes détectées, les sources citées, et la réponse complète.

Le plus simple est de donner toutes ces données à Claude pour analyse.

Exemple d’analyse :

image

4.1 Le score de visibilité par LLM

On pondère : une citation (avec URL) vaut 2 points, une mention (sans lien) vaut 1 point. Le score = (citations×2 + mentions) / (nb_prompts×2) × 100. Ça permet de comparer les LLMs entre eux. Dans mon cas réel : Perplexity sortait à 16,7/100, ChatGPT à 6,7/100

4.2 La visibilité par catégorie de prompt

C'est là que se cachent les opportunités. Si la marque ressort sur les prompts de marque mais est absente à 100 % sur les prompts « problème » et « choix de solution », qui sont ceux que tape un prospect qui ne vous connaît pas encore, vous savez exactement où concentrer l'effort de contenu.

4.3 Le benchmark concurrentiel

En extrayant TOUTES les marques citées (pas seulement la vôtre), on cartographie qui domine le terrain conversationnel. Surprise fréquente : ce ne sont pas vos concurrents directs qui ressortent, mais des acteurs adjacents (logiciels génériques) que l'IA cite par défaut faute de mieux. C'est un signal de positionnement à corriger.

5.4 Les erreurs factuelles de l'IA

À lire absolument : les réponses où l'IA parle de vous mais se trompe. Dans mon cas, ChatGPT confondait la marque avec une solution d'un tout autre secteur. C'est le signal le plus actionnable : la marque est sous-représentée dans le corpus d'entraînement, et il faut des contenus de référence + des mentions presse pour corriger l'identité de l'entité.

Le plus simple : redonnez le CSV à Claude et demandez-lui le dashboard. Il lit les données, calcule les scores et génère une visualisation.

image
image
image

FOUCAULD HENIN

Senior SEO consultant et fondateur de 30A  

Je vous accompagne dans conception et la mise en place de vos chantiers SEO.

Après plusieurs expériences chez des retaillers, clients grand comptes et scale up, j’apporte une vision rationnelle et data driven dans les stratégies SEO.

Références : Oscaro, Total Energie, Intermarché, Oreegami

#bigquery #Looker #data analyse