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

URL analizada

https://www.hajzy.online/

Medido hace 3 meses

Analizar otra URL

Puntuación AI-Ready

Aceptable

de 100

Ahorro de tokens

Tokens HTML 4088
Tokens Markdown 191
Ahorro 95%

Desglose de la puntuación

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

Protocolos emergentes

0 de 6 detectados

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

  • OAuth Protected Resource RFC 9728
    /.well-known/oauth-protected-resource
  • OAuth Discovery RFC 8414
    /.well-known/oauth-authorization-server
  • MCP Server Card SEP-1649 draft
    /.well-known/mcp/server-card.json
  • A2A Agent Card A2A v1.0
    /.well-known/agent-card.json
  • API Catalog RFC 9727
    /.well-known/api-catalog
  • Agent Skills index Discovery RFC v0.2.0 draft
    /.well-known/agent-skills/index.json

Esto no se queda quieto. La monitorización aún no existe: apúntate y te avisamos cuando esté.

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

Lo que medimos No llms.txt found

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.

Pégalo en un agente de código para que lo arregle

Lo que medimos No Markdown for Agents support detected

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.

Pégalo en un agente de código para que lo arregle

Lo que medimos No Content-Signal found (robots.txt or HTTP headers)

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.

Pégalo en un agente de código para que lo arregle

Lo que medimos Content ratio: 9.5% (1478 content chars / 15583 HTML bytes)

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.

Pégalo en un agente de código para que lo arregle

Lo que medimos 2 heading level skip(s)

La estructura de encabezados tiene problemas (niveles saltados o múltiples etiquetas h1). Una jerarquía limpia ayuda a los AI agents a comprender la organización del contenido.

Cómo implementarlo

Asegúrate de tener exactamente un <h1> por página y que los encabezados sigan un orden secuencial: h1 > h2 > h3. No saltes niveles (por ejemplo, de h1 directamente a h3).

Pégalo en un agente de código para que lo arregle
Tokens Markdown: 191
#1 Clinic SaaS in MENA

## Hajzy: Run Your Clinic with
Intelligent Automation

Hajzy is the premium multi-tenant EMR platform equipped with an AI Medical Assistant, automated WhatsApp reminders, and flawless RTL Arabic support.

#### AI Assistant

Automatically generate structured clinical notes, diagnose suggestions, and summaries from your free-text inputs.

#### WhatsApp Native

Reduce no-shows by 40% with automated, localized WhatsApp appointment confirmations and reminders.

#### Bank-Grade Security

Built on Microsoft SQL Server with strict Row-Level Security ensuring absolute tenant data isolation.

## Native Arabic & English

Hajzy is the leading medical management system designed from the ground up to support RTL layouts natively. Switch instantly between Arabic and English without breaking your workflow.

-   Right-to-Left (RTL) optimized UI
-   Localized AI Medical prompts
-   Bilingual invoice generation

App Screenshot / Dashboard Mockup
Hajzy: Home - Modern Clinic Management System

#1 Clinic SaaS in MENA# Hajzy: Run Your Clinic with
Intelligent Automation

Hajzy is the premium multi-tenant EMR platform equipped with an AI Medical Assistant, automated WhatsApp reminders, and flawless RTL Arabic support.

[Start Free Trial](https://www.hajzy.online/Home/RequestDemo) [Explore Features](https://www.hajzy.online/Home/Features)

#### AI Assistant

Automatically generate structured clinical notes, diagnose suggestions, and summaries from your free-text inputs.

#### WhatsApp Native

Reduce no-shows by 40% with automated, localized WhatsApp appointment confirmations and reminders.

#### Bank-Grade Security

Built on Microsoft SQL Server with strict Row-Level Security ensuring absolute tenant data isolation.

## Native Arabic & English

Hajzy is the leading medical management system designed from the ground up to support RTL layouts natively. Switch instantly between Arabic and English without breaking your workflow.

-   Right-to-Left (RTL) optimized UI
-   Localized AI Medical prompts
-   Bilingual invoice generation

App Screenshot / Dashboard Mockup

Sube este archivo como /index.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
# hajzy.online

> Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminders, and bilingual Arabic/English support. Based in Amman, Jordan.

## Documentation
- [FAQ](https://www.hajzy.online/Home/FAQ)

## Main
- [Home - Hajzy.online](https://www.hajzy.online/): Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminder…
- [Features](https://www.hajzy.online/Home/Features)
- [Pricing](https://www.hajzy.online/Home/Pricing)
- [About Us](https://www.hajzy.online/Home/About)
- [Book Demo](https://www.hajzy.online/Home/RequestDemo)

## Support
- [FAQ](https://www.hajzy.online/Home/FAQ)
- [Contact](https://www.hajzy.online/Home/Contact)

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

Sube este archivo a https://www.hajzy.online/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 (100/100)

Has <main>

Jerarquía de encabezados correcta (70/100)

2 heading level skip(s)

Usa elementos HTML semánticos (61/100)

7 semantic elements, 31 divs (ratio: 18%)

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

No images found

Poca profundidad de anidamiento de divs (100/100)

Avg div depth: 1.9, max: 4

Eficiencia del contenido

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

95% token reduction (HTML→Markdown)

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

Content ratio: 9.5% (1478 content chars / 15583 HTML bytes)

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

0/155 elements with inline styles (0.0%)

Peso de página razonable (100/100)

HTML size: 15KB

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 (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: SoftwareApplication

Tiene etiquetas Open Graph (100/100)

All OG tags present

Tiene meta description (100/100)

Meta description: 183 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: 15KB

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

Main content starts at 45% of HTML

{
  "url": "https://www.hajzy.online/",
  "timestamp": 1777741953331,
  "fetch": {
    "mode": "simple",
    "timeMs": 252,
    "htmlSizeBytes": 15583,
    "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": "Home - Hajzy.online",
    "excerpt": "Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminders, and bilingual Arabic/English support. Based in Amman, Jordan.",
    "byline": "Hajzy.online",
    "siteName": null,
    "lang": "en",
    "contentLength": 1478,
    "metadata": {
      "description": "Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminders, and bilingual Arabic/English support. Based in Amman, Jordan.",
      "ogTitle": "Home - Hajzy.online",
      "ogDescription": "Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminders, and bilingual Arabic/English support. Based in Amman, Jordan.",
      "ogImage": "https://hajzy.online/img/og-image.png",
      "ogType": "website",
      "canonical": "https://hajzy.online/",
      "lang": "en",
      "schemas": [
        {
          "@context": "https://schema.org",
          "@type": "SoftwareApplication",
          "name": "Hajzy.online",
          "url": "https://hajzy.online",
          "applicationCategory": "HealthApplication",
          "operatingSystem": "Web",
          "description": "A cloud-native clinic management SaaS for scheduling, EMR, and billing across the MENA region.",
          "offers": {
            "@type": "Offer",
            "price": "0",
            "priceCurrency": "USD"
          },
          "contactPoint": {
            "@type": "ContactPoint",
            "telephone": "+962771551881",
            "contactType": "customer support",
            "areaServed": [
              "JO",
              "SA",
              "AE",
              "KW",
              "BH",
              "QA",
              "EG"
            ],
            "availableLanguage": [
              "Arabic",
              "English"
            ]
          },
          "address": {
            "@type": "PostalAddress",
            "addressLocality": "Amman",
            "addressCountry": "JO"
          }
        }
      ],
      "robotsMeta": "index, follow",
      "author": "Hajzy.online",
      "generator": null,
      "markdownAlternateHref": null
    }
  },
  "markdown": "#1 Clinic SaaS in MENA\n\n## Hajzy: Run Your Clinic with\nIntelligent Automation\n\nHajzy is the premium multi-tenant EMR platform equipped with an AI Medical Assistant, automated WhatsApp reminders, and flawless RTL Arabic support.\n\n#### AI Assistant\n\nAutomatically generate structured clinical notes, diagnose suggestions, and summaries from your free-text inputs.\n\n#### WhatsApp Native\n\nReduce no-shows by 40% with automated, localized WhatsApp appointment confirmations and reminders.\n\n#### Bank-Grade Security\n\nBuilt on Microsoft SQL Server with strict Row-Level Security ensuring absolute tenant data isolation.\n\n## Native Arabic & English\n\nHajzy is the leading medical management system designed from the ground up to support RTL layouts natively. Switch instantly between Arabic and English without breaking your workflow.\n\n-   Right-to-Left (RTL) optimized UI\n-   Localized AI Medical prompts\n-   Bilingual invoice generation\n\nApp Screenshot / Dashboard Mockup\n",
  "fullPageMarkdown": "Hajzy: Home - Modern Clinic Management System\n\n#1 Clinic SaaS in MENA# Hajzy: Run Your Clinic with\nIntelligent Automation\n\nHajzy is the premium multi-tenant EMR platform equipped with an AI Medical Assistant, automated WhatsApp reminders, and flawless RTL Arabic support.\n\n[Start Free Trial](https://www.hajzy.online/Home/RequestDemo) [Explore Features](https://www.hajzy.online/Home/Features)\n\n#### AI Assistant\n\nAutomatically generate structured clinical notes, diagnose suggestions, and summaries from your free-text inputs.\n\n#### WhatsApp Native\n\nReduce no-shows by 40% with automated, localized WhatsApp appointment confirmations and reminders.\n\n#### Bank-Grade Security\n\nBuilt on Microsoft SQL Server with strict Row-Level Security ensuring absolute tenant data isolation.\n\n## Native Arabic & English\n\nHajzy is the leading medical management system designed from the ground up to support RTL layouts natively. Switch instantly between Arabic and English without breaking your workflow.\n\n-   Right-to-Left (RTL) optimized UI\n-   Localized AI Medical prompts\n-   Bilingual invoice generation\n\nApp Screenshot / Dashboard Mockup\n",
  "markdownStats": {
    "images": 0,
    "links": 0,
    "tables": 0,
    "codeBlocks": 0,
    "headings": 5
  },
  "tokens": {
    "htmlTokens": 4088,
    "markdownTokens": 191,
    "reduction": 3897,
    "reductionPercent": 95
  },
  "score": {
    "score": 71,
    "grade": "C",
    "dimensions": {
      "semanticHtml": {
        "score": 85,
        "weight": 20,
        "grade": "B",
        "checks": {
          "uses_article_or_main": {
            "score": 100,
            "weight": 20,
            "details": "Has <main>"
          },
          "proper_heading_hierarchy": {
            "score": 70,
            "weight": 25,
            "details": "2 heading level skip(s)"
          },
          "semantic_elements": {
            "score": 61,
            "weight": 20,
            "details": "7 semantic elements, 31 divs (ratio: 18%)"
          },
          "meaningful_alt_texts": {
            "score": 100,
            "weight": 15,
            "details": "No images found"
          },
          "low_div_nesting": {
            "score": 100,
            "weight": 20,
            "details": "Avg div depth: 1.9, max: 4"
          }
        }
      },
      "contentEfficiency": {
        "score": 78,
        "weight": 25,
        "grade": "B",
        "checks": {
          "token_reduction_ratio": {
            "score": 100,
            "weight": 40,
            "details": "95% token reduction (HTML→Markdown)"
          },
          "content_to_noise_ratio": {
            "score": 25,
            "weight": 30,
            "details": "Content ratio: 9.5% (1478 content chars / 15583 HTML bytes)"
          },
          "minimal_inline_styles": {
            "score": 100,
            "weight": 15,
            "details": "0/155 elements with inline styles (0.0%)"
          },
          "reasonable_page_weight": {
            "score": 100,
            "weight": 15,
            "details": "HTML size: 15KB"
          }
        }
      },
      "aiDiscoverability": {
        "score": 35,
        "weight": 25,
        "grade": "F",
        "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": 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: SoftwareApplication"
          },
          "has_open_graph": {
            "score": 100,
            "weight": 25,
            "details": "All OG tags present"
          },
          "has_meta_description": {
            "score": 100,
            "weight": 20,
            "details": "Meta description: 183 chars"
          },
          "has_canonical_url": {
            "score": 100,
            "weight": 15,
            "details": "Canonical URL present"
          },
          "has_lang_attribute": {
            "score": 100,
            "weight": 10,
            "details": "lang=\"en\""
          }
        }
      },
      "accessibility": {
        "score": 85,
        "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: 15KB"
          },
          "fast_content_position": {
            "score": 50,
            "weight": 30,
            "details": "Main content starts at 45% 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_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": "improve_content_ratio",
      "priority": "high",
      "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": 25,
      "checkDetails": "Content ratio: 9.5% (1478 content chars / 15583 HTML bytes)"
    },
    {
      "id": "fix_heading_hierarchy",
      "priority": "medium",
      "category": "semanticHtml",
      "titleKey": "rec.fix_heading_hierarchy.title",
      "descriptionKey": "rec.fix_heading_hierarchy.description",
      "howToKey": "rec.fix_heading_hierarchy.howto",
      "effort": "quick-win",
      "estimatedImpact": 6,
      "checkScore": 70,
      "checkDetails": "2 heading level skip(s)"
    }
  ],
  "llmsTxtPreview": "# hajzy.online\n\n> Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminders, and bilingual Arabic/English support. Based in Amman, Jordan.\n\n## Documentation\n- [FAQ](https://www.hajzy.online/Home/FAQ)\n\n## Main\n- [Home - Hajzy.online](https://www.hajzy.online/): Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminder…\n- [Features](https://www.hajzy.online/Home/Features)\n- [Pricing](https://www.hajzy.online/Home/Pricing)\n- [About Us](https://www.hajzy.online/Home/About)\n- [Book Demo](https://www.hajzy.online/Home/RequestDemo)\n\n## Support\n- [FAQ](https://www.hajzy.online/Home/FAQ)\n- [Contact](https://www.hajzy.online/Home/Contact)\n\n",
  "llmsTxtExisting": null,
  "emergingProtocols": {
    "oauthDiscovery": {
      "exists": false,
      "url": "https://www.hajzy.online/.well-known/oauth-authorization-server"
    },
    "mcpServerCard": {
      "exists": false,
      "url": "https://www.hajzy.online/.well-known/mcp.json"
    },
    "a2aAgentCard": {
      "exists": false,
      "url": "https://www.hajzy.online/.well-known/agent.json"
    },
    "count": 0
  },
  "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": "# hajzy.online\n\n> Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminders, and bilingual Arabic/English support. Based in Amman, Jordan.\n\n## Documentation\n- [FAQ](https://www.hajzy.online/Home/FAQ)\n\n## Main\n- [Home - Hajzy.online](https://www.hajzy.online/): Hajzy.online is the leading clinic management SaaS for MENA — AI-powered EMR, appointment scheduling, WhatsApp reminder…\n- [Features](https://www.hajzy.online/Home/Features)\n- [Pricing](https://www.hajzy.online/Home/Pricing)\n- [About Us](https://www.hajzy.online/Home/About)\n- [Book Demo](https://www.hajzy.online/Home/RequestDemo)\n\n## Support\n- [FAQ](https://www.hajzy.online/Home/FAQ)\n- [Contact](https://www.hajzy.online/Home/Contact)\n\n",
      "filename": "/llms.txt"
    },
    {
      "id": "fix_heading_hierarchy",
      "title": "Fix heading hierarchy",
      "description": "Your page has 1 <h1> elements. Keep only one. Demote the rest to <h2>.",
      "language": "html",
      "code": "<!-- Keep only one <h1> per page -->\n<h1>Home - Hajzy.online</h1>",
      "filename": "<main> or <article>"
    },
    {
      "id": "add_content_signals",
      "title": "Add Content-Signal directives",
      "description": "Content-Signal tells AI agents how they may use your content. The canonical location is robots.txt, but you can also expose it as an HTTP header from any stack.",
      "language": "txt",
      "code": "User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no",
      "filename": "/robots.txt",
      "stacks": [
        {
          "id": "robots",
          "label": "robots.txt",
          "language": "txt",
          "filename": "/robots.txt",
          "code": "User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no"
        },
        {
          "id": "nginx",
          "label": "Nginx",
          "language": "nginx",
          "filename": "server block",
          "code": "# Inside your server { } block:\nadd_header Content-Signal \"search=yes, ai-input=yes, ai-train=no\" always;"
        },
        {
          "id": "apache",
          "label": "Apache",
          "language": "apache",
          "filename": ".htaccess",
          "code": "# In .htaccess (or VirtualHost):\nHeader set Content-Signal \"search=yes, ai-input=yes, ai-train=no\""
        },
        {
          "id": "wordpress",
          "label": "WordPress",
          "language": "php",
          "filename": "functions.php",
          "code": "<?php\n// In your theme's functions.php or a small mu-plugin\nadd_action('send_headers', function () {\n    header('Content-Signal: search=yes, ai-input=yes, ai-train=no');\n});\n\n// Optional: also append the directive to the dynamic robots.txt\nadd_filter('robots_txt', function ($output) {\n    return $output . \"\\nContent-Signal: search=yes, ai-input=yes, ai-train=no\\n\";\n}, 10, 1);"
        },
        {
          "id": "nextjs",
          "label": "Next.js",
          "language": "typescript",
          "filename": "middleware.ts",
          "code": "// middleware.ts (Next.js 13+ App Router or Pages Router)\nimport { NextResponse } from 'next/server';\nexport function middleware() {\n  const res = NextResponse.next();\n  res.headers.set(\n    'Content-Signal',\n    'search=yes, ai-input=yes, ai-train=no'\n  );\n  return res;\n}\nexport const config = { matcher: '/:path*' };"
        },
        {
          "id": "cloudflare",
          "label": "Cloudflare Workers",
          "language": "javascript",
          "filename": "worker.js",
          "code": "// Cloudflare Worker that proxies your origin and adds the header\nexport default {\n  async fetch(request, env, ctx) {\n    const res = await fetch(request);\n    const newRes = new Response(res.body, res);\n    newRes.headers.set(\n      'Content-Signal',\n      'search=yes, ai-input=yes, ai-train=no'\n    );\n    return newRes;\n  },\n};"
        },
        {
          "id": "express",
          "label": "Express / Fastify",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Express\napp.use((req, res, next) => {\n  res.setHeader('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n  next();\n});\n\n// Fastify\nfastify.addHook('onSend', (request, reply, payload, done) => {\n  reply.header('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n  done();\n});"
        }
      ]
    },
    {
      "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

O pide a una IA que te ayude a mejorarlo

¿Quieres una segunda opinión?

Cloudflare tiene un escáner gratuito y hace una pregunta distinta a la nuestra. Ellos puntúan lo que tu sitio publica para que los agentes lo invoquen: MCP server cards, Agent Skills, catálogos de API, registros DNS. Nosotros puntuamos si un agente puede llegar a tu contenido, leerlo y entenderlo. Un sitio puede ir bien en uno y mal en el otro, así que cuenta con ver dos cifras distintas: son respuestas a dos preguntas distintas, y las dos merecen conocerse.

Analizar www.hajzy.online con Cloudflare

Incrusta tu badge

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

AgentReady.md score for www.hajzy.online
Script Recomendado
<script src="https://agentready.md/badge.js" data-id="fb7178f5-9729-49c9-b3f4-21f7d8942efd" data-domain="www.hajzy.online"></script>
Markdown
[![AgentReady.md score for www.hajzy.online](https://agentready.md/badge/www.hajzy.online.svg)](https://agentready.md/es/r/fb7178f5-9729-49c9-b3f4-21f7d8942efd)

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.