Tenten AIGEO
Retour au blog
AEO techniqueMise en œuvre

Proposer une version Markdown aux IA : endpoint /md et solution de repli en texte brut

Lorsqu’un moteur d’IA lit du HTML, il commence par éliminer le bruit lié à la mise en page, au risque d’extraire les mauvais passages. Cet article explique comment proposer, pour chaque page, un endpoint Markdown destiné aux IA et une version de repli en texte brut : routage /md, négociation de contenu, hiérarchie llms.txt et vérification avec curl que les robots d’IA peuvent réellement lire vos contenus.

L’équipe Tenten GEOPublié le 2026-06-185 min de lecture
Un document lumineux se divise en deux flux de données, l’un en HTML désordonné et l’autre en Markdown propre, qui convergent vers un halo symbolisant l’IA au loin.

Lorsqu’un moteur d’IA lit votre page web, il commence par démonter le HTML : barre de navigation, colonne latérale, bandeaux de cookies et scripts de suivi sont écartés pour ne conserver que ce qu’il identifie comme le contenu principal. Cette opération peut se tromper, sans que vous puissiez savoir précisément où. Plutôt que de perfectionner le balisage sémantique du HTML en pariant sur une interprétation toujours correcte de la mise en page, fournissez directement la version Markdown que vous avez préparée. À contenu identique, la suppression du bruit visuel évite au modèle d’avoir à deviner et rend l’extraction des citations plus fiable.

Pourquoi les IA préfèrent lire du Markdown plutôt que votre HTML

Tout se joue dans le rapport signal-bruit. Le code source HTML d’une page produit SaaS classique peut représenter six à sept mille tokens, alors que le contenu utile n’en occupe qu’une faible part. Le reste se compose de noms de classes, de styles intégrés, de tracés SVG et de scripts d’analyse. Avant de pouvoir repérer les phrases utiles à une réponse, le modèle doit donc filtrer tout cet environnement technique. En Markdown, le même passage ne représente plus qu’une fraction de ce volume. Un titre est clairement un titre, une liste reste une liste et les points essentiels sont immédiatement identifiables. La structure porte elle-même le sens et laisse beaucoup moins de place aux suppositions.

C’est particulièrement important pour les moteurs de réponse. Lorsqu’ils génèrent une réponse, ChatGPT, Perplexity et Google AI Overviews extraient des passages susceptibles d’être cités depuis les pages candidates. Plus une page est propre et ses paragraphes autonomes, plus elle a de chances d’être reprise intégralement. Nous avons souvent rencontré la même situation chez nos clients : l’article est bien rédigé, mais il se retrouve enfoui sous des couches de divs et de composants rendus côté client, si bien que le modèle n’en récupère qu’une demi-phrase. Avec un endpoint Markdown, le même passage devient accessible dans son intégralité et la référence ne se coupe plus à un endroit incongru.

Endpoint /md : une copie lisible par machine pour chaque page

Le principe consiste à proposer une version Markdown de chaque page publique selon une règle d’URL prévisible. Deux conventions sont courantes : ajouter .md à l’URL d’origine — /blog/aeo-basics devient par exemple /blog/aeo-basics.md — ou ajouter /md à la fin du chemin. Les deux conviennent, à condition d’appliquer une règle cohérente et facile à déduire. Avec l’App Router de Next.js, la mise en œuvre passe par un Route Handler : créez un fichier de route, utilisez la même source de contenu que la page HTML et renvoyez le Content-Type text/markdown.

  1. Une source de données unique : la page HTML et l’endpoint Markdown doivent utiliser le même contenu, qu’il provienne de MDX, d’une base de données ou d’un objet de contenu. Ne maintenez pas deux versions distinctes : elles finiront tôt ou tard par diverger.
  2. Ajoutez link rel=alternate type=text/markdown dans le head du HTML afin d’indiquer clairement au robot où se trouve la version lisible par machine.
  3. Ne conservez dans le Markdown que le contenu principal : titres, paragraphes, listes, tableaux, blocs de code et liens. Supprimez la navigation, le pied de page, les articles associés et les bandeaux marketing.
  4. Conservez les informations de source indispensables : utilisez le front matter en tête de fichier ou le premier H1 pour préciser le titre, l’URL d’origine et la date de mise à jour, afin d’aider le modèle à identifier correctement la source.
  5. Renvoyez les bons en-têtes de cache afin que le CDN puisse lui aussi servir cet endpoint sans solliciter le serveur d’origine à chaque requête.

Automatiser le changement de format grâce à la négociation de contenu

Outre les URL dédiées, une même URL peut renvoyer différents formats selon l’identité du demandeur. Deux critères permettent de décider : l’en-tête Accept et le User-Agent. Si la requête contient Accept: text/markdown ou si le User-Agent correspond à un robot d’IA connu — GPTBot, ClaudeBot, PerplexityBot, Google-Extended, etc. — le middleware la réécrit vers la route Markdown. Les navigateurs classiques continuent de recevoir le HTML. Les internautes voient la page complète, le modèle obtient un texte propre et l’URL reste identique de bout en bout.

Schéma : une même URL renvoie soit du HTML, soit un Markdown propre selon que la requête provient d’un navigateur ou d’un robot d’IA.
Un même contenu, deux formats : du HTML pour le navigateur et un Markdown propre pour le robot d’IA.

Le texte brut comme solution de repli, quand même le Markdown est superflu

Certains agents ou robots ne savent pas interpréter la syntaxe Markdown et n’acceptent que du texte brut. Dans d’autres cas, comme les résumés de sources destinés aux assistants vocaux, seule la version la plus concise du contenu est nécessaire. Une solution de repli en texte brut prend alors tout son sens. La méthode reste la même que pour l’endpoint Markdown, mais la sortie utilise text/plain : des retours à la ligne séparent le titre et les paragraphes, tandis que l’URL d’un lien est ajoutée entre crochets à son libellé. Cette hiérarchie de formats garantit une version lisible, quel que soit le niveau de capacité d’analyse de l’outil destinataire.

  • llms.txt : placez /llms.txt à la racine du site. Répertoriez en Markdown les pages importantes accompagnées d’une brève description, comme une carte de navigation destinée au modèle.
  • llms-full.txt : regroupez l’ensemble du contenu essentiel dans un fichier unique pour permettre au modèle de tout lire en une seule fois, sans parcourir chaque page séparément.
  • Endpoint .md par page : une copie lisible par machine de chaque article et de chaque page produit.
  • Solution de repli en texte brut : un contenu text/plain minimal pour les outils qui n’interprètent pas le Markdown.

Comment vérifier que l’IA peut réellement lire votre contenu

Une fois le dispositif en ligne, vérifiez son fonctionnement au lieu de supposer qu’il sera automatiquement pris en compte. Le moyen le plus rapide consiste à simuler la requête d’un robot avec curl : ajoutez Accept: text/markdown ou définissez le User-Agent d’un robot d’IA, puis contrôlez que le Markdown renvoyé est propre, que le code de statut est 200 et que les en-têtes de cache sont corrects. Consultez ensuite les journaux du serveur pour confirmer que GPTBot, ClaudeBot et les autres robots accèdent bien à votre endpoint Markdown au lieu de continuer à récupérer le HTML chargé de bruit. Des outils comme isitagentready permettent également d’évaluer rapidement la lisibilité d’une page pour les agents.

Pour être cité par une IA, votre contenu doit d’abord pouvoir être lu sans ambiguïté. Lui en fournir une copie Markdown revient à supprimer entièrement l’étape où elle doit « deviner la mise en page ».Tenten GEO

Commencez par une page plutôt que de refondre tout le site

Sélectionnez d’abord les pages qui génèrent le plus de trafic et celles que vous souhaitez en priorité voir citées par les IA. Ajoutez-leur des endpoints .md et une version de repli en texte brut, puis mesurez pendant deux à quatre semaines le comportement d’exploration des robots d’IA avant de décider d’un déploiement à l’échelle du site. Cette approche permet de maîtriser les risques et de convaincre l’équipe à partir de journaux réels. Pour évaluer d’abord la lisibilité de vos pages par les IA et repérer les lacunes, l’audit GEO de 30 jours de Tenten GEO examine ces problèmes de lisibilité machine page par page. Pour échanger sur votre situation, rendez-vous sur /contact et réservez un diagnostic GEO de 30 minutes.

Questions fréquentes

Qu’est-ce qu’un endpoint /md et pourquoi proposer aux IA une version Markdown de vos contenus ?
L’endpoint /md est une copie lisible par machine proposée pour chaque page sous la forme d’un Markdown propre. Pour lire du HTML, un moteur d’IA doit d’abord filtrer le bruit créé par la navigation, les scripts et les autres éléments de mise en page, au risque d’extraire les mauvais passages. Lui fournir directement du Markdown supprime ce bruit et permet de citer le contenu de façon plus complète et plus précise.
Renvoyer un contenu différent aux robots d’IA selon leur User-Agent sera-t-il considéré comme du cloaking par Google ?
Si le contenu est identique et que seul son format change — autrement dit, si les versions HTML et Markdown présentent le même texte — il n’existe aucune différenciation cachée. Le cloaking consiste à renvoyer aux robots un contenu sensiblement différent de celui destiné aux internautes, ce qui est interdit. Vous pouvez changer de format, mais pas de contenu.
Comment vérifier qu’un robot d’IA a réellement lu mon endpoint Markdown ?
Avec curl, envoyez Accept: text/markdown ou le User-Agent d’un robot d’IA, puis vérifiez que la réponse contient un Markdown propre et renvoie le code de statut 200. Consultez ensuite les journaux du serveur pour confirmer que GPTBot, ClaudeBot et les autres robots accèdent bien à l’endpoint au lieu de continuer à récupérer le HTML.

PASSEZ À L’ÉTAPE SUIVANTE

Votre marque apparaît-elle dans les réponses des IA ?

En 30 minutes, nous identifions vos écarts de visibilité sur les principaux moteurs IA et les actions à traiter en priorité.

Réserver le diagnostic