Certificado AgentReady.md verificado
Emitido el sig: bcb42565997ca663 Verificar →

URL analizada

https://kwantra.com/fr

Analizar otra URL

Puntuación AI-Ready

61 / C

Aceptable

de 100

Ahorro de tokens

Tokens HTML 53.432
Tokens Markdown 203
Ahorro 100%

Desglose de la puntuación

HTML semántico 61/100
Eficiencia del contenido 52/100
Visibilidad para IA 47/100
Datos estructurados 85/100
Accesibilidad 78/100

Protocolos emergentes

1 de 3 detectados

Endpoints well-known que los AI agents buscan. Detectados significa que un agente puede descubrir y conectar con tu servicio automáticamente.

  • OAuth Discovery RFC 8414
    /.well-known/oauth-authorization-server
    • issuer: https://kwantra.com
    • token_endpoint: https://kwantra.com/api/auth/login
    • 2 grant type(s)
  • MCP Server Card Anthropic
    /.well-known/mcp.json
  • A2A Agent Card Google
    /.well-known/agent.json

Tu sitio no tiene un archivo llms.txt. Este es el estándar emergente para ayudar a los AI agents a comprender la estructura de tu sitio.

Cómo implementarlo

Crea un archivo /llms.txt siguiendo la especificación de llmstxt.org. Incluye una descripción del sitio y enlaces a tus páginas principales.

Tu página no usa elementos <article> o <main>. Estos contenedores semánticos ayudan a los AI agents a identificar el área de contenido principal e ignorar navegación, barras laterales y pies de página.

Cómo implementarlo

Añade un elemento <main> alrededor del contenido principal de tu página, y usa <article> para bloques de contenido independientes como entradas de blog o descripciones de productos.

Tu página tiene un bajo ratio de contenido real respecto al HTML total. Gran parte del peso de la página es marcado, scripts o estilos en lugar de contenido.

Cómo implementarlo

Mueve el CSS a hojas de estilo externas, elimina los estilos en línea, minimiza el JavaScript y asegúrate de que el HTML se centre en la estructura del contenido.

Muchos elementos tienen atributos de estilo en línea. Estos añaden ruido para los AI agents al extraer contenido.

Cómo implementarlo

Mueve todos los estilos en línea a clases CSS en tu hoja de estilos. Usa frameworks de CSS utilitario como Tailwind si necesitas muchos estilos únicos.

Tu robots.txt bloquea algunos bots de IA (GPTBot, ClaudeBot, PerplexityBot). Esto impide que los AI agents indexen tu contenido.

Cómo implementarlo

Actualiza tu robots.txt para permitir bots de IA. Añade reglas Allow explícitas para GPTBot, ClaudeBot y PerplexityBot.

Tu sitio no soporta Markdown for Agents. Este estándar de Cloudflare permite a los agentes IA solicitar contenido en formato markdown, reduciendo el uso de tokens en ~80%.

Cómo implementarlo

Implementa uno o más: (1) Responder a Accept: text/markdown con contenido markdown. (2) Servir URLs .md (ej: /pagina.md). (3) Añadir etiquetas <link rel="alternate" type="text/markdown">. (4) Añadir cabeceras HTTP Link para descubrimiento markdown.

{\n res.setHeader('Vary', 'Accept');\n res.setHeader('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n res.type('text/markdown; charset=utf-8');\n return res.send(renderMarkdown('page'));\n }\n res.render('page');\n});"},{"id":"fastify","label":"Fastify","language":"javascript","filename":"server.js","code":"// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n reply.header('Vary', 'Accept');\n reply.header('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n }\n return reply.view('/page.ejs');\n});"},{"id":"nextjs","label":"Next.js","language":"typescript","filename":"app/page/route.ts","code":"// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n const accept = req.headers.get('accept') || '';\n if (accept.includes('text/markdown')) {\n return new Response(await renderMarkdown('page'), {\n headers: {\n 'Content-Type': 'text/markdown; charset=utf-8',\n 'Vary': 'Accept',\n },\n });\n }\n // Fall through to the page component\n return new Response(null, { status: 404 });\n}"},{"id":"wordpress","label":"WordPress","language":"php","filename":"functions.php","code":"post_content));\n exit;\n});"},{"id":"static","label":"Hugo / Jekyll / Astro","language":"txt","filename":"static/page.md","code":"# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in :\n# "}] }'>

Tu página depende en gran medida de elementos <div>. Los elementos semánticos como <section>, <nav>, <header>, <footer> y <aside> proporcionan una estructura significativa para los AI agents.

Cómo implementarlo

Reemplaza los contenedores <div> genéricos con los elementos semánticos apropiados. Usa <section> para grupos temáticos, <nav> para navegación, <header>/<footer> para cabeceras y pies de página o sección.

El contenido principal aparece tarde en el documento HTML. Los AI agents pueden dar más peso al contenido que aparece antes.

Cómo implementarlo

Reestructura tu HTML para que el contenido <main> o <article> aparezca antes que las barras laterales y el contenido suplementario.

No se encontró URL canónica. Esto ayuda a los AI agents a identificar la versión preferida de una página y evitar contenido duplicado.

Cómo implementarlo

Añade una etiqueta <link rel="canonical" href="..."> apuntando a la URL canónica de la página.

Tokens Markdown: 203
Gestion de patrimoine personnel

## Votre patrimoine,
enfin tout en un.

Kwantra centralise vos actions, ETF, crypto, immobilier et épargne. Suivez votre patrimoine net en temps réel, planifiez vos achats et préparez votre déclaration fiscale.

Actions ETF Crypto Immobilier Épargne

Ce que vous pouvez faire avec Kwantra

## Tout ce dont vous avez besoin,
rien de superflu.

8

Modules intégrés

100%

Vos données, chez vous

0€

Gratuit, sans engagement

∞

Actifs suivis

Gratuit · Sans engagement · Données privées

## Prêt à prendre
le contrôle ?

Créez votre compte en moins d'une minute et commencez à visualiser votre patrimoine comme jamais.

Aucune carte bancaire requise

Sans engagement

Aucun traceur tiers
Kwantra — Gérez votre patrimoine

Gestion de patrimoine personnel

# Votre patrimoine,
enfin tout en un.

Kwantra centralise vos actions, ETF, crypto, immobilier et épargne. Suivez votre patrimoine net en temps réel, planifiez vos achats et préparez votre déclaration fiscale.

[Créer un compte gratuit](https://kwantra.com/register) [Se connecter](https://kwantra.com/login)

Actions ETF Crypto Immobilier Épargne

Patrimoine net

0 €

+14.2% vs an dernier

JanMarMaiJuilSepNovDéc

📈

Actions & ETF+12.3%

68 200 €

🏢

Immobilier+2.1%

38 500 €

₿

Crypto+18.7%

14 100 €

💰

Épargne+1.2%

7 650 €

Mis à jour à l'instant

26/05/2026

₿

Bitcoin

0 €

+2.1%

Dividendes annuels

\+ 0 €

Ce que vous pouvez faire avec Kwantra

## Tout ce dont vous avez besoin,
rien de superflu.

### Actions & ETF

Gérez plusieurs comptes (PEA, CTO, AV). Suivez dividendes, plus-values et performance par enveloppe fiscale.

+14.2% sur 12 mois

PEACTOAssurance-viePER

### Crypto-monnaies

Centralisez wallets et exchanges. Importez vos positions CSV, suivez vos gains et pertes.

BinanceCoinbase\+ plus

### Projection DRIP

Simulez la croissance de vos dividendes sur 40 ans avec réinvestissement.

Intérêts composés sur 40 ans

### Plan d'achat annuel

Planifiez vos achats sur 12 mois par actif et par compte.

J

F

M

A

M

J

J

A

S

O

N

D

### Immobilier

Valorisation nette, emprunts restants, revenus locatifs. Intégré au patrimoine total.

### Épargne & liquidités

Livrets, comptes courants et épargne de précaution dans votre bilan net.

### Fiscalité

Rapport fiscal annuel automatique : plus-values réalisées, dividendes perçus, flat tax calculée.

30%

Flat tax PFU

Auto

Calcul FIFO

### Cotations temps réel

Actualisation automatique des cours via Yahoo Finance. Plus de 10 000 titres supportés.

MSCI World ETF+1.24%

Apple Inc.+0.87%

EUR/USD\-0.12%

8

Modules intégrés

100%

Vos données, chez vous

0€

Gratuit, sans engagement

∞

Actifs suivis

Gratuit · Sans engagement · Données privées

## Prêt à prendre
le contrôle ?

Créez votre compte en moins d'une minute et commencez à visualiser votre patrimoine comme jamais.

[Créer mon espace patrimoine](https://kwantra.com/register) [Déjà inscrit ? Connectez-vous](https://kwantra.com/login)

Aucune carte bancaire requise

Sans engagement

Aucun traceur tiers

Sube este archivo como /fr.md en tu servidor para que los AI agents puedan acceder a una versión limpia de tu página. También puedes configurar la negociación de contenido Accept: text/markdown para servirlo automáticamente.

llms.txt generado para esta página individual

Descargar llms.txt
# Kwantra

> Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse de votre vie privée.

## Main
- [Kwantra — Gérez votre patrimoine](https://kwantra.com/fr): Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse…
- [Fonctionnalités](https://kwantra.com/fr/fonctionnalites)
- [À propos](https://kwantra.com/fr/a-propos)
- [Communauté](https://kwantra.com/fr/communaute)
- [Se connecter](https://kwantra.com/login)
- [Commencer](https://kwantra.com/register)
- [Mentions légales](https://kwantra.com/fr/mentions-legales)
- [Confidentialité](https://kwantra.com/fr/confidentialite)
- [CGU](https://kwantra.com/fr/cgu)

## Blog
- [Blog](https://kwantra.com/fr/blog)

## Legal
- [Cookies](https://kwantra.com/fr/cookies)

El llms.txt completo requiere un análisis de todo el dominio (próximamente)

Sube este archivo a https://kwantra.com/llms.txt en la raíz de tu dominio. Los AI agents como ChatGPT, Claude y Perplexity consultan este archivo para comprender la estructura de tu sitio.

HTML semántico

Usa elementos article o main (0/100)

Missing <article> and <main> elements

Jerarquía de encabezados correcta (100/100)

Clean heading hierarchy

Usa elementos HTML semánticos (13/100)

6 semantic elements, 147 divs (ratio: 4%)

Textos alternativos descriptivos en imágenes (100/100)

No images found

Poca profundidad de anidamiento de divs (90/100)

Avg div depth: 6.0, max: 11

Eficiencia del contenido

Buen ratio de reducción de tokens (100/100)

100% token reduction (HTML→Markdown)

Buen ratio de contenido frente a ruido (0/100)

Content ratio: 0.5% (690 content chars / 147564 HTML bytes)

Estilos en línea mínimos (0/100)

47/418 elements with inline styles (11.2%)

Peso de página razonable (80/100)

HTML size: 144KB

Visibilidad para IA

Tiene archivo llms.txt (0/100)

No llms.txt found

Tiene archivo robots.txt (100/100)

robots.txt exists

robots.txt permite bots de IA (34/100)

2/3 AI bots blocked: ClaudeBot, GPTBot

Tiene sitemap.xml (100/100)

Sitemap found

Soporte de Markdown for Agents (40/100) Cloudflare CDN
&#10003; Accept: text/markdown &#10007; .md URL &#10007; <link> tag &#10007; Link header YAML frontmatter (basic)
Tiene Content-Signal (robots.txt o cabeceras HTTP) (60/100)
&#10003; robots.txt &#10007; HTTP header &#10003; Policy

Datos estructurados

Tiene Schema.org / JSON-LD (100/100)

JSON-LD found: WebPage

Tiene etiquetas Open Graph (100/100)

All OG tags present

Tiene meta description (100/100)

Meta description: 139 chars

Tiene URL canónica (0/100)

No canonical URL

Tiene atributo lang (100/100)

lang="fr"

Accesibilidad

Contenido disponible sin JavaScript (100/100)

Content available without JavaScript

Tamaño de página razonable (100/100)

Page size: 144KB

El contenido aparece temprano en el HTML (25/100)

Main content starts at 70% of HTML

{
  "url": "https://kwantra.com/fr",
  "timestamp": 1779793726617,
  "fetch": {
    "mode": "simple",
    "timeMs": 350,
    "htmlSizeBytes": 147564,
    "supportsMarkdown": true,
    "markdownAgents": {
      "contentNegotiation": true,
      "mdUrl": {
        "found": false,
        "url": null
      },
      "linkTag": {
        "found": false,
        "url": null
      },
      "linkHeader": {
        "found": false,
        "url": null
      },
      "responseHeaders": {
        "contentSignal": null,
        "xMarkdownTokens": "586",
        "vary": "accept"
      },
      "frontmatter": {
        "present": true,
        "fields": [
          "title",
          "description"
        ],
        "level": "basic"
      },
      "level": "cloudflare"
    },
    "statusCode": 200
  },
  "extraction": {
    "title": "Kwantra — Gérez votre patrimoine",
    "excerpt": "Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire et gratuite.",
    "byline": null,
    "siteName": "Kwantra",
    "lang": "fr",
    "contentLength": 690,
    "metadata": {
      "description": "Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse de votre vie privée.",
      "ogTitle": "Kwantra — Gérez votre patrimoine",
      "ogDescription": "Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire et gratuite.",
      "ogImage": "https://kwantra.fr/og-image.png",
      "ogType": "website",
      "canonical": null,
      "lang": "fr",
      "schemas": [
        {
          "@context": "https://schema.org",
          "@type": "WebPage",
          "@id": "https://kwantra.fr/#webpage",
          "url": "https://kwantra.fr/",
          "name": "Kwantra — Gérez votre patrimoine",
          "description": "Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse de votre vie privée.",
          "isPartOf": {
            "@id": "https://kwantra.fr/#website"
          },
          "about": {
            "@id": "https://kwantra.fr/#organization"
          },
          "inLanguage": "fr-FR"
        }
      ],
      "robotsMeta": null,
      "author": null,
      "generator": null,
      "markdownAlternateHref": null
    }
  },
  "markdown": "Gestion de patrimoine personnel\n\n## Votre patrimoine,\nenfin tout en un.\n\nKwantra centralise vos actions, ETF, crypto, immobilier et épargne. Suivez votre patrimoine net en temps réel, planifiez vos achats et préparez votre déclaration fiscale.\n\nActions ETF Crypto Immobilier Épargne\n\nCe que vous pouvez faire avec Kwantra\n\n## Tout ce dont vous avez besoin,\nrien de superflu.\n\n8\n\nModules intégrés\n\n100%\n\nVos données, chez vous\n\n0€\n\nGratuit, sans engagement\n\n∞\n\nActifs suivis\n\nGratuit · Sans engagement · Données privées\n\n## Prêt à prendre\nle contrôle ?\n\nCréez votre compte en moins d'une minute et commencez à visualiser votre patrimoine comme jamais.\n\nAucune carte bancaire requise\n\nSans engagement\n\nAucun traceur tiers\n",
  "fullPageMarkdown": "Kwantra — Gérez votre patrimoine\n\nGestion de patrimoine personnel\n\n# Votre patrimoine,\nenfin tout en un.\n\nKwantra centralise vos actions, ETF, crypto, immobilier et épargne. Suivez votre patrimoine net en temps réel, planifiez vos achats et préparez votre déclaration fiscale.\n\n[Créer un compte gratuit](https://kwantra.com/register) [Se connecter](https://kwantra.com/login)\n\nActions ETF Crypto Immobilier Épargne\n\nPatrimoine net\n\n0 €\n\n+14.2% vs an dernier\n\nJanMarMaiJuilSepNovDéc\n\n📈\n\nActions & ETF+12.3%\n\n68 200 €\n\n🏢\n\nImmobilier+2.1%\n\n38 500 €\n\n₿\n\nCrypto+18.7%\n\n14 100 €\n\n💰\n\nÉpargne+1.2%\n\n7 650 €\n\nMis à jour à l'instant\n\n26/05/2026\n\n₿\n\nBitcoin\n\n0 €\n\n+2.1%\n\nDividendes annuels\n\n\\+ 0 €\n\nCe que vous pouvez faire avec Kwantra\n\n## Tout ce dont vous avez besoin,\nrien de superflu.\n\n### Actions & ETF\n\nGérez plusieurs comptes (PEA, CTO, AV). Suivez dividendes, plus-values et performance par enveloppe fiscale.\n\n+14.2% sur 12 mois\n\nPEACTOAssurance-viePER\n\n### Crypto-monnaies\n\nCentralisez wallets et exchanges. Importez vos positions CSV, suivez vos gains et pertes.\n\nBinanceCoinbase\\+ plus\n\n### Projection DRIP\n\nSimulez la croissance de vos dividendes sur 40 ans avec réinvestissement.\n\nIntérêts composés sur 40 ans\n\n### Plan d'achat annuel\n\nPlanifiez vos achats sur 12 mois par actif et par compte.\n\nJ\n\nF\n\nM\n\nA\n\nM\n\nJ\n\nJ\n\nA\n\nS\n\nO\n\nN\n\nD\n\n### Immobilier\n\nValorisation nette, emprunts restants, revenus locatifs. Intégré au patrimoine total.\n\n### Épargne & liquidités\n\nLivrets, comptes courants et épargne de précaution dans votre bilan net.\n\n### Fiscalité\n\nRapport fiscal annuel automatique : plus-values réalisées, dividendes perçus, flat tax calculée.\n\n30%\n\nFlat tax PFU\n\nAuto\n\nCalcul FIFO\n\n### Cotations temps réel\n\nActualisation automatique des cours via Yahoo Finance. Plus de 10 000 titres supportés.\n\nMSCI World ETF+1.24%\n\nApple Inc.+0.87%\n\nEUR/USD\\-0.12%\n\n8\n\nModules intégrés\n\n100%\n\nVos données, chez vous\n\n0€\n\nGratuit, sans engagement\n\n∞\n\nActifs suivis\n\nGratuit · Sans engagement · Données privées\n\n## Prêt à prendre\nle contrôle ?\n\nCréez votre compte en moins d'une minute et commencez à visualiser votre patrimoine comme jamais.\n\n[Créer mon espace patrimoine](https://kwantra.com/register) [Déjà inscrit ? Connectez-vous](https://kwantra.com/login)\n\nAucune carte bancaire requise\n\nSans engagement\n\nAucun traceur tiers\n",
  "markdownStats": {
    "images": 0,
    "links": 0,
    "tables": 0,
    "codeBlocks": 0,
    "headings": 3
  },
  "tokens": {
    "htmlTokens": 53432,
    "markdownTokens": 203,
    "reduction": 53229,
    "reductionPercent": 100
  },
  "score": {
    "score": 61,
    "grade": "C",
    "dimensions": {
      "semanticHtml": {
        "score": 61,
        "weight": 20,
        "grade": "C",
        "checks": {
          "uses_article_or_main": {
            "score": 0,
            "weight": 20,
            "details": "Missing <article> and <main> elements"
          },
          "proper_heading_hierarchy": {
            "score": 100,
            "weight": 25,
            "details": "Clean heading hierarchy"
          },
          "semantic_elements": {
            "score": 13,
            "weight": 20,
            "details": "6 semantic elements, 147 divs (ratio: 4%)"
          },
          "meaningful_alt_texts": {
            "score": 100,
            "weight": 15,
            "details": "No images found"
          },
          "low_div_nesting": {
            "score": 90,
            "weight": 20,
            "details": "Avg div depth: 6.0, max: 11"
          }
        }
      },
      "contentEfficiency": {
        "score": 52,
        "weight": 25,
        "grade": "D",
        "checks": {
          "token_reduction_ratio": {
            "score": 100,
            "weight": 40,
            "details": "100% token reduction (HTML→Markdown)"
          },
          "content_to_noise_ratio": {
            "score": 0,
            "weight": 30,
            "details": "Content ratio: 0.5% (690 content chars / 147564 HTML bytes)"
          },
          "minimal_inline_styles": {
            "score": 0,
            "weight": 15,
            "details": "47/418 elements with inline styles (11.2%)"
          },
          "reasonable_page_weight": {
            "score": 80,
            "weight": 15,
            "details": "HTML size: 144KB"
          }
        }
      },
      "aiDiscoverability": {
        "score": 47,
        "weight": 25,
        "grade": "D",
        "checks": {
          "has_llms_txt": {
            "score": 0,
            "weight": 20,
            "details": "No llms.txt found"
          },
          "has_robots_txt": {
            "score": 100,
            "weight": 10,
            "details": "robots.txt exists"
          },
          "robots_allows_ai_bots": {
            "score": 34,
            "weight": 15,
            "details": "2/3 AI bots blocked: ClaudeBot, GPTBot"
          },
          "has_sitemap": {
            "score": 100,
            "weight": 10,
            "details": "Sitemap found"
          },
          "supports_markdown_negotiation": {
            "score": 40,
            "weight": 25,
            "details": "CDN level (Cloudflare) — Content negotiation"
          },
          "has_content_signals": {
            "score": 60,
            "weight": 20,
            "details": "robots.txt: search=yes, ai-train=no | Policy included"
          }
        }
      },
      "structuredData": {
        "score": 85,
        "weight": 15,
        "grade": "B",
        "checks": {
          "has_schema_org": {
            "score": 100,
            "weight": 30,
            "details": "JSON-LD found: WebPage"
          },
          "has_open_graph": {
            "score": 100,
            "weight": 25,
            "details": "All OG tags present"
          },
          "has_meta_description": {
            "score": 100,
            "weight": 20,
            "details": "Meta description: 139 chars"
          },
          "has_canonical_url": {
            "score": 0,
            "weight": 15,
            "details": "No canonical URL"
          },
          "has_lang_attribute": {
            "score": 100,
            "weight": 10,
            "details": "lang=\"fr\""
          }
        }
      },
      "accessibility": {
        "score": 78,
        "weight": 15,
        "grade": "B",
        "checks": {
          "content_without_js": {
            "score": 100,
            "weight": 40,
            "details": "Content available without JavaScript"
          },
          "reasonable_page_size": {
            "score": 100,
            "weight": 30,
            "details": "Page size: 144KB"
          },
          "fast_content_position": {
            "score": 25,
            "weight": 30,
            "details": "Main content starts at 70% of HTML"
          }
        }
      }
    }
  },
  "recommendations": [
    {
      "id": "add_llms_txt",
      "priority": "critical",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_llms_txt.title",
      "descriptionKey": "rec.add_llms_txt.description",
      "howToKey": "rec.add_llms_txt.howto",
      "effort": "quick-win",
      "estimatedImpact": 10,
      "checkScore": 0,
      "checkDetails": "No llms.txt found"
    },
    {
      "id": "add_article_main",
      "priority": "critical",
      "category": "semanticHtml",
      "titleKey": "rec.add_article_main.title",
      "descriptionKey": "rec.add_article_main.description",
      "howToKey": "rec.add_article_main.howto",
      "effort": "quick-win",
      "estimatedImpact": 8,
      "checkScore": 0,
      "checkDetails": "Missing <article> and <main> elements"
    },
    {
      "id": "improve_content_ratio",
      "priority": "critical",
      "category": "contentEfficiency",
      "titleKey": "rec.improve_content_ratio.title",
      "descriptionKey": "rec.improve_content_ratio.description",
      "howToKey": "rec.improve_content_ratio.howto",
      "effort": "moderate",
      "estimatedImpact": 6,
      "checkScore": 0,
      "checkDetails": "Content ratio: 0.5% (690 content chars / 147564 HTML bytes)"
    },
    {
      "id": "remove_inline_styles",
      "priority": "critical",
      "category": "contentEfficiency",
      "titleKey": "rec.remove_inline_styles.title",
      "descriptionKey": "rec.remove_inline_styles.description",
      "howToKey": "rec.remove_inline_styles.howto",
      "effort": "moderate",
      "estimatedImpact": 3,
      "checkScore": 0,
      "checkDetails": "47/418 elements with inline styles (11.2%)"
    },
    {
      "id": "allow_ai_bots",
      "priority": "high",
      "category": "aiDiscoverability",
      "titleKey": "rec.allow_ai_bots.title",
      "descriptionKey": "rec.allow_ai_bots.description",
      "howToKey": "rec.allow_ai_bots.howto",
      "effort": "quick-win",
      "estimatedImpact": 7,
      "checkScore": 34,
      "checkDetails": "2/3 AI bots blocked: ClaudeBot, GPTBot"
    },
    {
      "id": "add_markdown_negotiation",
      "priority": "high",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_markdown_negotiation.title",
      "descriptionKey": "rec.add_markdown_negotiation.description",
      "howToKey": "rec.add_markdown_negotiation.howto",
      "effort": "significant",
      "estimatedImpact": 6,
      "checkScore": 40,
      "checkDetails": "CDN level (Cloudflare) — Content negotiation"
    },
    {
      "id": "add_semantic_elements",
      "priority": "high",
      "category": "semanticHtml",
      "titleKey": "rec.add_semantic_elements.title",
      "descriptionKey": "rec.add_semantic_elements.description",
      "howToKey": "rec.add_semantic_elements.howto",
      "effort": "moderate",
      "estimatedImpact": 5,
      "checkScore": 13,
      "checkDetails": "6 semantic elements, 147 divs (ratio: 4%)"
    },
    {
      "id": "move_content_earlier",
      "priority": "high",
      "category": "accessibility",
      "titleKey": "rec.move_content_earlier.title",
      "descriptionKey": "rec.move_content_earlier.description",
      "howToKey": "rec.move_content_earlier.howto",
      "effort": "moderate",
      "estimatedImpact": 4,
      "checkScore": 25,
      "checkDetails": "Main content starts at 70% of HTML"
    },
    {
      "id": "add_canonical_url",
      "priority": "high",
      "category": "structuredData",
      "titleKey": "rec.add_canonical_url.title",
      "descriptionKey": "rec.add_canonical_url.description",
      "howToKey": "rec.add_canonical_url.howto",
      "effort": "quick-win",
      "estimatedImpact": 3,
      "checkScore": 0,
      "checkDetails": "No canonical URL"
    }
  ],
  "llmsTxtPreview": "# Kwantra\n\n> Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse de votre vie privée.\n\n## Main\n- [Kwantra — Gérez votre patrimoine](https://kwantra.com/fr): Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse…\n- [Fonctionnalités](https://kwantra.com/fr/fonctionnalites)\n- [À propos](https://kwantra.com/fr/a-propos)\n- [Communauté](https://kwantra.com/fr/communaute)\n- [Se connecter](https://kwantra.com/login)\n- [Commencer](https://kwantra.com/register)\n- [Mentions légales](https://kwantra.com/fr/mentions-legales)\n- [Confidentialité](https://kwantra.com/fr/confidentialite)\n- [CGU](https://kwantra.com/fr/cgu)\n\n## Blog\n- [Blog](https://kwantra.com/fr/blog)\n\n## Legal\n- [Cookies](https://kwantra.com/fr/cookies)\n\n",
  "llmsTxtExisting": null,
  "emergingProtocols": {
    "oauthDiscovery": {
      "exists": true,
      "url": "https://kwantra.com/.well-known/oauth-authorization-server",
      "issuer": "https://kwantra.com",
      "authorizationEndpoint": "https://kwantra.com/fr",
      "tokenEndpoint": "https://kwantra.com/api/auth/login",
      "grantTypesSupported": [
        "password",
        "refresh_token"
      ],
      "scopesSupported": [
        "openid",
        "profile",
        "email"
      ]
    },
    "mcpServerCard": {
      "exists": false,
      "url": "https://kwantra.com/.well-known/mcp.json"
    },
    "a2aAgentCard": {
      "exists": false,
      "url": "https://kwantra.com/.well-known/agent.json"
    },
    "count": 1
  },
  "snippets": [
    {
      "id": "add_llms_txt",
      "title": "Create /llms.txt",
      "description": "Upload this file to your web root. It tells AI agents what your site is about and which pages matter.",
      "language": "markdown",
      "code": "# Kwantra\n\n> Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse de votre vie privée.\n\n## Main\n- [Kwantra — Gérez votre patrimoine](https://kwantra.com/fr): Centralisez et suivez vos actions, crypto, immobilier et épargne depuis une interface claire, gratuite et respectueuse…\n- [Fonctionnalités](https://kwantra.com/fr/fonctionnalites)\n- [À propos](https://kwantra.com/fr/a-propos)\n- [Communauté](https://kwantra.com/fr/communaute)\n- [Se connecter](https://kwantra.com/login)\n- [Commencer](https://kwantra.com/register)\n- [Mentions légales](https://kwantra.com/fr/mentions-legales)\n- [Confidentialité](https://kwantra.com/fr/confidentialite)\n- [CGU](https://kwantra.com/fr/cgu)\n\n## Blog\n- [Blog](https://kwantra.com/fr/blog)\n\n## Legal\n- [Cookies](https://kwantra.com/fr/cookies)\n\n",
      "filename": "/llms.txt"
    },
    {
      "id": "add_canonical_url",
      "title": "Add canonical URL",
      "description": "The canonical URL tells AI agents which version of the page is the \"official\" one, avoiding duplicate content issues.",
      "language": "html",
      "code": "<link rel=\"canonical\" href=\"https://kwantra.com/fr\">",
      "filename": "<head>"
    },
    {
      "id": "allow_ai_bots",
      "title": "Allow AI bots in robots.txt",
      "description": "Some AI bots are blocked in your robots.txt. Remove or modify these Disallow rules to let AI agents index your content.",
      "language": "txt",
      "code": "# Add to your robots.txt — explicitly allow AI bots:\nUser-agent: GPTBot\nAllow: /\n\nUser-agent: ClaudeBot\nAllow: /\n\nUser-agent: PerplexityBot\nAllow: /",
      "filename": "/robots.txt"
    },
    {
      "id": "add_article_main",
      "title": "Wrap content in <main> and <article>",
      "description": "Semantic HTML landmarks help AI agents identify the main content of your page.",
      "language": "html",
      "code": "<main>\n  <article>\n    <h1>Your Page Title</h1>\n    <p>Your content here...</p>\n  </article>\n</main>",
      "filename": "<body>"
    },
    {
      "id": "add_markdown_negotiation",
      "title": "Support Markdown for Agents",
      "description": "Let AI agents request a clean Markdown version of any page via content negotiation, .md alternate URLs, link tags or Link headers.",
      "language": "html",
      "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">",
      "filename": "<head>",
      "stacks": [
        {
          "id": "html",
          "label": "HTML <head>",
          "language": "html",
          "filename": "<head>",
          "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        },
        {
          "id": "express",
          "label": "Express",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\napp.get('/page', (req, res) => {\n  res.setHeader('Vary', 'Accept');\n  res.setHeader('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    res.type('text/markdown; charset=utf-8');\n    return res.send(renderMarkdown('page'));\n  }\n  res.render('page');\n});"
        },
        {
          "id": "fastify",
          "label": "Fastify",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n  reply.header('Vary', 'Accept');\n  reply.header('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n  }\n  return reply.view('/page.ejs');\n});"
        },
        {
          "id": "nextjs",
          "label": "Next.js",
          "language": "typescript",
          "filename": "app/page/route.ts",
          "code": "// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n  const accept = req.headers.get('accept') || '';\n  if (accept.includes('text/markdown')) {\n    return new Response(await renderMarkdown('page'), {\n      headers: {\n        'Content-Type': 'text/markdown; charset=utf-8',\n        'Vary': 'Accept',\n      },\n    });\n  }\n  // Fall through to the page component\n  return new Response(null, { status: 404 });\n}"
        },
        {
          "id": "wordpress",
          "label": "WordPress",
          "language": "php",
          "filename": "functions.php",
          "code": "<?php\n// Mechanism 1: respond to Accept: text/markdown on the same URL\nadd_action('template_redirect', function () {\n    if (!is_singular()) return;\n    $accept = $_SERVER['HTTP_ACCEPT'] ?? '';\n    if (strpos($accept, 'text/markdown') === false) return;\n    header('Content-Type: text/markdown; charset=utf-8');\n    header('Vary: Accept');\n    $post = get_queried_object();\n    echo \"# \" . get_the_title($post) . \"\\n\\n\";\n    echo wp_strip_all_tags(apply_filters('the_content', $post->post_content));\n    exit;\n});"
        },
        {
          "id": "static",
          "label": "Hugo / Jekyll / Astro",
          "language": "txt",
          "filename": "static/page.md",
          "code": "# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in <head>:\n#   <link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        }
      ]
    }
  ]
}

Usa nuestra API para obtener esto de forma programática (próximamente)

Este JSON es para uso interno — a diferencia del Markdown y llms.txt, no está pensado para subirse a tu web. Guárdalo como referencia para seguir la evolución de tu puntuación, compártelo con tu equipo de desarrollo o intégralo en tu pipeline CI/CD.

Comparte tus resultados

Twitter LinkedIn

Incrusta tu badge

Añade este badge a tu sitio. Se actualiza automáticamente cuando cambie tu puntuación.

AgentReady.md score for kwantra.com
Script Recomendado
<script src="https://agentready.md/badge.js" data-id="b44b8ec2-5492-4919-bb41-2237e78619d7" data-domain="kwantra.com"></script>
Markdown
[![AgentReady.md score for kwantra.com](https://agentready.md/badge/kwantra.com.svg)](https://agentready.md/es/r/b44b8ec2-5492-4919-bb41-2237e78619d7)

Próximamente: Análisis de dominio completo

Rastrea todo tu dominio, genera llms.txt y monitoriza tu puntuación de preparación para IA a lo largo del tiempo. Únete a la lista de espera para recibir notificaciones.

¡Estás en la lista! Te avisaremos cuando se lance.