URL analizada

https://polenmadrid.com/en

Analizar otra URL

Puntuación AI-Ready

74 / C

Aceptable

de 100

Ahorro de tokens

Tokens HTML 8251
Tokens Markdown 109
Ahorro 99%

Desglose de la puntuación

HTML semántico 86/100
Eficiencia del contenido 63/100
Visibilidad para IA 55/100
Datos estructurados 85/100
Accesibilidad 100/100

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.

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.

No se encontraron directivas Content-Signal. Estas indican a los agentes IA cómo pueden usar tu contenido (indexación, entrada IA, datos de entrenamiento). La ubicación recomendada es robots.txt.

Cómo implementarlo

Añade Content-Signal a tu robots.txt: User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no. También puedes añadirlo como cabecera HTTP en respuestas markdown.

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.

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.

Tokens Markdown: 109
Forecast

## Estimated pollen levels

Estimates for Wednesday, February 18, 2026 based on 5-year historical data and recent trends.

### Current season

Cypress/Yew Very high 2.516 grains/m³ ●●●

**Other main allergens**

Elm Very high 174 grains/m³ ●●●

Ash High 90 grains/m³ ●●●

Poplar Low 7 grains/m³ ●●○

These estimates are indicative and will be automatically updated when official data becomes available.
Pollen levels today — PolenMadrid

[🌼 PolenMadrid](https://polenmadrid.com/en/)

Español English Français Italiano

# Pollen levels in Madrid

Last official data: Monday, February 16, 2026 Last prediction: Wednesday, February 18, 2026

Forecast## Estimated pollen levels

Estimates for Wednesday, February 18, 2026 based on 5-year historical data and recent trends.

### Current season

Cypress/Yew Very high 2.516 grains/m³ ●●●

**Other main allergens**

Elm Very high 174 grains/m³ ●●●

Ash High 90 grains/m³ ●●●

Poplar Low 7 grains/m³ ●●○

These estimates are indicative and will be automatically updated when official data becomes available.

## Current season

These allergens are currently in peak season, an average across all stations:

[Cypress/Yew Very high 2.659 grains/m³](https://polenmadrid.com/en/type/cupresaceas-taxaceas)

**Other main allergens**

[Elm Very high 288 grains/m³](https://polenmadrid.com/en/type/olmos) [Ash Very high 121 grains/m³](https://polenmadrid.com/en/type/fresno) [Mulberry Medium 23 grains/m³](https://polenmadrid.com/en/type/moreras)

Maximum value across all stations from the latest day with official data.

## Detection stations

[

Alcalá de Henares Very high

East

Cypress/Yew 2.659 ↑

Elm 288 ↑

Ash 39 ↑

](https://polenmadrid.com/en/station/alca)[

Alcobendas Medium

North

Ash 32 ↑

Elm 31 ↑

Cypress/Yew 8 ↑

](https://polenmadrid.com/en/station/alco)[

Aranjuez Very high

South

Elm 112 ↑

Cypress/Yew 99 ↑

Nettle 11 ↑

](https://polenmadrid.com/en/station/aran)[

Collado Villalba Very high

Mountains

Ash 121 ↑

Cypress/Yew 2 ↑

Oak 1 ↑

](https://polenmadrid.com/en/station/vill)[

Coslada Very high

East

Cypress/Yew 298 ↑

Elm 79 ↑

Ash 25 ↑

](https://polenmadrid.com/en/station/cosl)[

Getafe Very high

South

Cypress/Yew 303 ↑

Elm 22 ↑

Ash 14 ↑

](https://polenmadrid.com/en/station/geta)[

Las Rozas High

West

Cypress/Yew 156 ↑

Ash 32 ↑

Elm 10 ↑

](https://polenmadrid.com/en/station/roza)[

Leganés Medium

South

Mulberry 23 ↑

Pine 15 ↑

Oak 14 ↑

](https://polenmadrid.com/en/station/lega)[

Madrid-Arganzuela Very high

Capital

Cypress/Yew 1.069 ↑

Elm 162 ↑

Ash 44 ↑

](https://polenmadrid.com/en/station/aytm)[

Madrid-Barrio Salamanca High

Capital

Cypress/Yew 97 ↑

Ash 70 ↑

Elm 41 ↑

](https://polenmadrid.com/en/station/aler)[

Madrid-Ciudad Universitaria Very high

Capital

Cypress/Yew 590 ↑

Elm 111 ↑

Ash 45 ↑

](https://polenmadrid.com/en/station/facf)

↑ up · ↓ down · = no change — compared to previous day

Sube este archivo como /en.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.

Nuestra recomendación

Descargar llms.txt
# PolenMadrid

> Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red Palinocam).

## Documentation
- [Help](https://polenmadrid.com/en/help)

## Main
- [Pollen levels today — PolenMadrid](https://polenmadrid.com/en): Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red…
- [About](https://polenmadrid.com/en/about)
- [🌼 PolenMadrid](https://polenmadrid.com/en/)
- [Map](https://polenmadrid.com/en/map)
- [History](https://polenmadrid.com/en/history)
- [Calendar](https://polenmadrid.com/en/calendar)
- [Alerts](https://polenmadrid.com/en/alerts)

## Legal
- [Legal & Privacy](https://polenmadrid.com/en/legal)

## Support
- [Help](https://polenmadrid.com/en/help)

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

Sube este archivo a https://polenmadrid.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.

Este sitio ya tiene un archivo llms.txt.

Formato válido
# PolenMadrid

> Real-time pollen levels and allergy information for Madrid, Spain. Data from Red Palinocam (Comunidad de Madrid). Updated daily January-June, weekly July-December.

## Main Pages

- [Home — Current Levels](https://polenmadrid.com/): Today's pollen levels across all stations and allergen types
- [Map](https://polenmadrid.com/mapa): Interactive map of 11 monitoring stations
- [Historic Data](https://polenmadrid.com/historico): Historical pollen data from 1993 to present
- [Health Guide](https://polenmadrid.com/salud): Allergy health information and recommendations
- [FAQ](https://polenmadrid.com/ayuda/faq): Frequently asked questions about pollen and allergies
- [Pollen Calendar](https://polenmadrid.com/calendario): Annual pollination calendar for Madrid

## API

- [API Documentation](https://polenmadrid.com/ayuda/api): REST API endpoints for pollen data (JSON)

## Data

- Source: Red Palinocam (Comunidad de Madrid)
- License: CC-BY 4.0
- Coverage: 11 stations, 27 pollen types, 1993-present
- Format: CSV/JSON via API

HTML semántico

Usa elementos article o main (100/100)

Has <main>

Jerarquía de encabezados correcta (100/100)

Clean heading hierarchy

Usa elementos HTML semánticos (28/100)

8 semantic elements, 88 divs (ratio: 8%)

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

No images found

Poca profundidad de anidamiento de divs (100/100)

Avg div depth: 1.6, max: 3

Eficiencia del contenido

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

99% token reduction (HTML→Markdown)

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

Content ratio: 1.5% (415 content chars / 28330 HTML bytes)

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

11/461 elements with inline styles (2.4%)

Peso de página razonable (100/100)

HTML size: 28KB

Visibilidad para IA

Tiene archivo llms.txt (100/100)

llms.txt exists and is valid

Tiene archivo robots.txt (100/100)

robots.txt exists

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

All major AI bots allowed

Tiene sitemap.xml (100/100)

Sitemap found

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

Datos estructurados

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

JSON-LD found but basic types: WebSite, GovernmentService, SpecialAnnouncement

Tiene etiquetas Open Graph (100/100)

All OG tags present

Tiene meta description (100/100)

Meta description: 131 chars

Tiene URL canónica (100/100)

Canonical URL present

Tiene atributo lang (100/100)

lang="en"

Accesibilidad

Contenido disponible sin JavaScript (100/100)

Content available without JavaScript

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

Page size: 28KB

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

Main content starts at 18% of HTML

{
  "url": "https://polenmadrid.com/en",
  "timestamp": 1771448216014,
  "fetch": {
    "mode": "simple",
    "timeMs": 158,
    "htmlSizeBytes": 28330,
    "supportsMarkdown": false,
    "markdownAgents": {
      "contentNegotiation": false,
      "mdUrl": {
        "found": false,
        "url": null
      },
      "linkTag": {
        "found": false,
        "url": null
      },
      "linkHeader": {
        "found": false,
        "url": null
      },
      "responseHeaders": {
        "contentSignal": null,
        "xMarkdownTokens": null,
        "vary": null
      },
      "frontmatter": {
        "present": false,
        "fields": [],
        "level": "none"
      },
      "level": "none"
    },
    "statusCode": 200
  },
  "extraction": {
    "title": "Pollen levels today — PolenMadrid",
    "excerpt": "Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red Palinocam).",
    "byline": null,
    "siteName": "PolenMadrid",
    "lang": "en",
    "contentLength": 415,
    "metadata": {
      "description": "Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red Palinocam).",
      "ogTitle": "Pollen levels today — PolenMadrid",
      "ogDescription": "Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red Palinocam).",
      "ogImage": "https://polenmadrid.com/assets/img/og-image.png",
      "ogType": "website",
      "canonical": "https://polenmadrid.com/en",
      "lang": "en",
      "schemas": [
        {
          "@context": "https://schema.org",
          "@type": "WebSite",
          "name": "PolenMadrid",
          "url": "https://polenmadrid.com/",
          "description": "Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red Palinocam).",
          "inLanguage": [
            "es",
            "en",
            "fr",
            "it"
          ]
        },
        {
          "@context": "https://schema.org",
          "@type": "GovernmentService",
          "name": "Red Palinocam — Monitorización de polen",
          "serviceType": "Pollen monitoring",
          "provider": {
            "@type": "GovernmentOrganization",
            "name": "Comunidad de Madrid"
          },
          "areaServed": {
            "@type": "AdministrativeArea",
            "name": "Comunidad de Madrid, España"
          },
          "url": "https://polenmadrid.com/"
        },
        {
          "@context": "https://schema.org",
          "@type": "SpecialAnnouncement",
          "name": "Alerta de niveles altos de polen en Madrid",
          "text": "Se han detectado niveles muy altos de polen en la Comunidad de Madrid.",
          "datePosted": "2026-02-16",
          "spatialCoverage": {
            "@type": "AdministrativeArea",
            "name": "Comunidad de Madrid, España"
          },
          "category": "https://www.wikidata.org/wiki/Q188553"
        }
      ],
      "robotsMeta": null,
      "author": null,
      "generator": null,
      "markdownAlternateHref": null
    }
  },
  "markdown": "Forecast\n\n## Estimated pollen levels\n\nEstimates for Wednesday, February 18, 2026 based on 5-year historical data and recent trends.\n\n### Current season\n\nCypress/Yew Very high 2.516 grains/m³ ●●●\n\n**Other main allergens**\n\nElm Very high 174 grains/m³ ●●●\n\nAsh High 90 grains/m³ ●●●\n\nPoplar Low 7 grains/m³ ●●○\n\nThese estimates are indicative and will be automatically updated when official data becomes available.\n",
  "fullPageMarkdown": "Pollen levels today — PolenMadrid\n\n[🌼 PolenMadrid](https://polenmadrid.com/en/)\n\nEspañol English Français Italiano\n\n# Pollen levels in Madrid\n\nLast official data: Monday, February 16, 2026 Last prediction: Wednesday, February 18, 2026\n\nForecast## Estimated pollen levels\n\nEstimates for Wednesday, February 18, 2026 based on 5-year historical data and recent trends.\n\n### Current season\n\nCypress/Yew Very high 2.516 grains/m³ ●●●\n\n**Other main allergens**\n\nElm Very high 174 grains/m³ ●●●\n\nAsh High 90 grains/m³ ●●●\n\nPoplar Low 7 grains/m³ ●●○\n\nThese estimates are indicative and will be automatically updated when official data becomes available.\n\n## Current season\n\nThese allergens are currently in peak season, an average across all stations:\n\n[Cypress/Yew Very high 2.659 grains/m³](https://polenmadrid.com/en/type/cupresaceas-taxaceas)\n\n**Other main allergens**\n\n[Elm Very high 288 grains/m³](https://polenmadrid.com/en/type/olmos) [Ash Very high 121 grains/m³](https://polenmadrid.com/en/type/fresno) [Mulberry Medium 23 grains/m³](https://polenmadrid.com/en/type/moreras)\n\nMaximum value across all stations from the latest day with official data.\n\n## Detection stations\n\n[\n\nAlcalá de Henares Very high\n\nEast\n\nCypress/Yew 2.659 ↑\n\nElm 288 ↑\n\nAsh 39 ↑\n\n](https://polenmadrid.com/en/station/alca)[\n\nAlcobendas Medium\n\nNorth\n\nAsh 32 ↑\n\nElm 31 ↑\n\nCypress/Yew 8 ↑\n\n](https://polenmadrid.com/en/station/alco)[\n\nAranjuez Very high\n\nSouth\n\nElm 112 ↑\n\nCypress/Yew 99 ↑\n\nNettle 11 ↑\n\n](https://polenmadrid.com/en/station/aran)[\n\nCollado Villalba Very high\n\nMountains\n\nAsh 121 ↑\n\nCypress/Yew 2 ↑\n\nOak 1 ↑\n\n](https://polenmadrid.com/en/station/vill)[\n\nCoslada Very high\n\nEast\n\nCypress/Yew 298 ↑\n\nElm 79 ↑\n\nAsh 25 ↑\n\n](https://polenmadrid.com/en/station/cosl)[\n\nGetafe Very high\n\nSouth\n\nCypress/Yew 303 ↑\n\nElm 22 ↑\n\nAsh 14 ↑\n\n](https://polenmadrid.com/en/station/geta)[\n\nLas Rozas High\n\nWest\n\nCypress/Yew 156 ↑\n\nAsh 32 ↑\n\nElm 10 ↑\n\n](https://polenmadrid.com/en/station/roza)[\n\nLeganés Medium\n\nSouth\n\nMulberry 23 ↑\n\nPine 15 ↑\n\nOak 14 ↑\n\n](https://polenmadrid.com/en/station/lega)[\n\nMadrid-Arganzuela Very high\n\nCapital\n\nCypress/Yew 1.069 ↑\n\nElm 162 ↑\n\nAsh 44 ↑\n\n](https://polenmadrid.com/en/station/aytm)[\n\nMadrid-Barrio Salamanca High\n\nCapital\n\nCypress/Yew 97 ↑\n\nAsh 70 ↑\n\nElm 41 ↑\n\n](https://polenmadrid.com/en/station/aler)[\n\nMadrid-Ciudad Universitaria Very high\n\nCapital\n\nCypress/Yew 590 ↑\n\nElm 111 ↑\n\nAsh 45 ↑\n\n](https://polenmadrid.com/en/station/facf)\n\n↑ up · ↓ down · = no change — compared to previous day\n",
  "markdownStats": {
    "images": 0,
    "links": 0,
    "tables": 0,
    "codeBlocks": 0,
    "headings": 2
  },
  "tokens": {
    "htmlTokens": 8251,
    "markdownTokens": 109,
    "reduction": 8142,
    "reductionPercent": 99
  },
  "score": {
    "score": 74,
    "grade": "C",
    "dimensions": {
      "semanticHtml": {
        "score": 86,
        "weight": 20,
        "grade": "B",
        "checks": {
          "uses_article_or_main": {
            "score": 100,
            "weight": 20,
            "details": "Has <main>"
          },
          "proper_heading_hierarchy": {
            "score": 100,
            "weight": 25,
            "details": "Clean heading hierarchy"
          },
          "semantic_elements": {
            "score": 28,
            "weight": 20,
            "details": "8 semantic elements, 88 divs (ratio: 8%)"
          },
          "meaningful_alt_texts": {
            "score": 100,
            "weight": 15,
            "details": "No images found"
          },
          "low_div_nesting": {
            "score": 100,
            "weight": 20,
            "details": "Avg div depth: 1.6, max: 3"
          }
        }
      },
      "contentEfficiency": {
        "score": 63,
        "weight": 25,
        "grade": "C",
        "checks": {
          "token_reduction_ratio": {
            "score": 100,
            "weight": 40,
            "details": "99% token reduction (HTML→Markdown)"
          },
          "content_to_noise_ratio": {
            "score": 0,
            "weight": 30,
            "details": "Content ratio: 1.5% (415 content chars / 28330 HTML bytes)"
          },
          "minimal_inline_styles": {
            "score": 50,
            "weight": 15,
            "details": "11/461 elements with inline styles (2.4%)"
          },
          "reasonable_page_weight": {
            "score": 100,
            "weight": 15,
            "details": "HTML size: 28KB"
          }
        }
      },
      "aiDiscoverability": {
        "score": 55,
        "weight": 25,
        "grade": "D",
        "checks": {
          "has_llms_txt": {
            "score": 100,
            "weight": 20,
            "details": "llms.txt exists and is valid"
          },
          "has_robots_txt": {
            "score": 100,
            "weight": 10,
            "details": "robots.txt exists"
          },
          "robots_allows_ai_bots": {
            "score": 100,
            "weight": 15,
            "details": "All major AI bots allowed"
          },
          "has_sitemap": {
            "score": 100,
            "weight": 10,
            "details": "Sitemap found"
          },
          "supports_markdown_negotiation": {
            "score": 0,
            "weight": 25,
            "details": "No Markdown for Agents support detected"
          },
          "has_content_signals": {
            "score": 0,
            "weight": 20,
            "details": "No Content-Signal found (robots.txt or HTTP headers)"
          }
        }
      },
      "structuredData": {
        "score": 85,
        "weight": 15,
        "grade": "B",
        "checks": {
          "has_schema_org": {
            "score": 50,
            "weight": 30,
            "details": "JSON-LD found but basic types: WebSite, GovernmentService, SpecialAnnouncement"
          },
          "has_open_graph": {
            "score": 100,
            "weight": 25,
            "details": "All OG tags present"
          },
          "has_meta_description": {
            "score": 100,
            "weight": 20,
            "details": "Meta description: 131 chars"
          },
          "has_canonical_url": {
            "score": 100,
            "weight": 15,
            "details": "Canonical URL present"
          },
          "has_lang_attribute": {
            "score": 100,
            "weight": 10,
            "details": "lang=\"en\""
          }
        }
      },
      "accessibility": {
        "score": 100,
        "weight": 15,
        "grade": "A",
        "checks": {
          "content_without_js": {
            "score": 100,
            "weight": 40,
            "details": "Content available without JavaScript"
          },
          "reasonable_page_size": {
            "score": 100,
            "weight": 30,
            "details": "Page size: 28KB"
          },
          "fast_content_position": {
            "score": 100,
            "weight": 30,
            "details": "Main content starts at 18% of HTML"
          }
        }
      }
    }
  },
  "recommendations": [
    {
      "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: 1.5% (415 content chars / 28330 HTML bytes)"
    },
    {
      "id": "add_markdown_negotiation",
      "priority": "critical",
      "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": 0,
      "checkDetails": "No Markdown for Agents support detected"
    },
    {
      "id": "add_content_signals",
      "priority": "critical",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_content_signals.title",
      "descriptionKey": "rec.add_content_signals.description",
      "howToKey": "rec.add_content_signals.howto",
      "effort": "quick-win",
      "estimatedImpact": 5,
      "checkScore": 0,
      "checkDetails": "No Content-Signal found (robots.txt or HTTP headers)"
    },
    {
      "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": 28,
      "checkDetails": "8 semantic elements, 88 divs (ratio: 8%)"
    },
    {
      "id": "remove_inline_styles",
      "priority": "medium",
      "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": 50,
      "checkDetails": "11/461 elements with inline styles (2.4%)"
    }
  ],
  "llmsTxtPreview": "# PolenMadrid\n\n> Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red Palinocam).\n\n## Documentation\n- [Help](https://polenmadrid.com/en/help)\n\n## Main\n- [Pollen levels today — PolenMadrid](https://polenmadrid.com/en): Updated information on pollen levels and allergies in the Community of Madrid. Data from the Palynological Network (Red…\n- [About](https://polenmadrid.com/en/about)\n- [🌼 PolenMadrid](https://polenmadrid.com/en/)\n- [Map](https://polenmadrid.com/en/map)\n- [History](https://polenmadrid.com/en/history)\n- [Calendar](https://polenmadrid.com/en/calendar)\n- [Alerts](https://polenmadrid.com/en/alerts)\n\n## Legal\n- [Legal & Privacy](https://polenmadrid.com/en/legal)\n\n## Support\n- [Help](https://polenmadrid.com/en/help)\n\n",
  "llmsTxtExisting": "# PolenMadrid\n\n> Real-time pollen levels and allergy information for Madrid, Spain. Data from Red Palinocam (Comunidad de Madrid). Updated daily January-June, weekly July-December.\n\n## Main Pages\n\n- [Home — Current Levels](https://polenmadrid.com/): Today's pollen levels across all stations and allergen types\n- [Map](https://polenmadrid.com/mapa): Interactive map of 11 monitoring stations\n- [Historic Data](https://polenmadrid.com/historico): Historical pollen data from 1993 to present\n- [Health Guide](https://polenmadrid.com/salud): Allergy health information and recommendations\n- [FAQ](https://polenmadrid.com/ayuda/faq): Frequently asked questions about pollen and allergies\n- [Pollen Calendar](https://polenmadrid.com/calendario): Annual pollination calendar for Madrid\n\n## API\n\n- [API Documentation](https://polenmadrid.com/ayuda/api): REST API endpoints for pollen data (JSON)\n\n## Data\n\n- Source: Red Palinocam (Comunidad de Madrid)\n- License: CC-BY 4.0\n- Coverage: 11 stations, 27 pollen types, 1993-present\n- Format: CSV/JSON via API",
  "snippets": [
    {
      "id": "add_content_signals",
      "title": "Add Content-Signal directives",
      "description": "Content-Signal tells AI agents how they may use your content. The recommended location is robots.txt, but you can also add it as an HTTP header.",
      "language": "txt",
      "code": "# robots.txt (recommended, canonical location):\nUser-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no\n\n# Nginx — add to server block (optional, for HTTP header):\n# add_header Content-Signal \"search=yes, ai-input=yes, ai-train=no\" always;\n\n# Apache — add to .htaccess (optional, for HTTP header):\n# Header set Content-Signal \"search=yes, ai-input=yes, ai-train=no\"",
      "filename": "/robots.txt"
    },
    {
      "id": "add_markdown_negotiation",
      "title": "Support Markdown for Agents",
      "description": "Implement one or more of the 4 Markdown for Agents mechanisms to let AI agents request content in markdown format.",
      "language": "html",
      "code": "<!-- 1. Content negotiation: respond to Accept: text/markdown -->\n<!-- In your server/framework, check the Accept header and return markdown -->\n<!-- with Content-Type: text/markdown -->\n\n<!-- 2. Serve .md URLs (e.g., /about.md alongside /about) -->\n<!-- Generate static .md files or handle .md routes in your app -->\n\n<!-- 3. Add <link> tag in your HTML <head>: -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">\n\n<!-- 4. Add Link HTTP header on HTML responses: -->\n<!-- Link: </page.md>; rel=\"alternate\"; type=\"text/markdown\" -->\n\n<!-- Best practice: include Vary: Accept and X-Markdown-Tokens headers -->\n<!-- on markdown responses -->",
      "filename": "<head> + server config"
    }
  ]
}

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

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.