Skip to content
G

gooieneemlander.nl

Scan history Scanned 2026-03-03 13:13 UTC
Changes since selected scan Not comparable because methodology information is unavailable

Result summary

Measured coverage

21/100

Methodology grade

D

Methodology legacy

31 checkpoints assessed

Find
1/6 passed
Read
6/18 passed
Act
1/7 passed

Bot protection context

This site uses Cloudflare bot protection. Our scanner received a challenge page instead of real content, so the scores below reflect what AI systems can access, not the actual site quality. Well-known brands may still appear in AI answers via training data and search indexes, but direct access by both crawlers and agents is blocked.

Readiness profiles Filter the detailed results by purpose

Select a profile to filter the detailed results.

Action plan

Priority actions Prioritized by exact impact on the overall stable-core score.
Failed JSON-LD present +6 overall pts

No valid JSON-LD blocks with schema.org @context found.

JSON-LD present
HIGH

JSON-LD is the preferred format for structured data by Google and AI search engines. It tells AI systems exactly what your page is about using a standardized vocabulary.

Add at least one <script type="application/ld+json"> block with "@context": "schema.org" describing your organization or page content.

JSON-LD html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Your Company",
  "url": "https://gooieneemlander.nl",
  "logo": "https://gooieneemlander.nl/logo.png"
}
</script>
Failed High-value schema types +6 overall pts

No high-value schema types found. We check for 17 recognized types including Article, Product, SoftwareApplication, FAQPage, LocalBusiness, VideoObject, and more.

High-value schema types
HIGH

Certain schema types (Article, Product, FAQPage, etc.) trigger rich results in Google and are used by AI search engines like Perplexity and ChatGPT to generate citations and structured answers.

Add JSON-LD markup for content-appropriate types like Article, Product, SoftwareApplication, FAQPage, LocalBusiness, Service, Event, or VideoObject to improve visibility in AI-powered search results.

JSON-LD html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "Your App Name",
  "operatingSystem": "Web",
  "applicationCategory": "BusinessApplication",
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "USD"
  }
}
</script>
Failed Heading hierarchy +5 overall pts

No headings found on the page.

Heading hierarchy
HIGH

AI agents use headings to build a content outline and determine topic hierarchy. A clear h1→h2→h3 structure helps AI systems extract and summarize your content accurately.

Add a clear <h1> heading and use sequential heading levels (h1 -> h2 -> h3). Proper heading hierarchy helps AI agents understand page structure and content importance. See developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements for heading element documentation.

HTML html
<h1>Page Title — One Per Page</h1>
  <h2>Main Section</h2>
    <h3>Subsection</h3>
    <h3>Subsection</h3>
  <h2>Another Section</h2>
    <h3>Subsection</h3>
Failed Semantic HTML elements +5 overall pts

No semantic HTML elements found (<header>, <nav>, <main>, <article>/<section>, <footer>).

Semantic HTML elements
HIGH

AI agents navigate pages using the accessibility tree, not visual layout. Semantic elements like <main>, <nav>, and <article> provide structural meaning that AI systems rely on to parse content.

Add missing semantic elements: header, nav, main, footer, article or section. Semantic HTML helps AI agents identify page regions and navigate content structure. See developer.mozilla.org/en-US/docs/Glossary/Semantics#semantics_in_html for semantic HTML documentation.

HTML html
<body>
  <header>
    <nav><!-- primary navigation --></nav>
  </header>
  <main>
    <article>
      <h1>Page Title</h1>
      <section><!-- content section --></section>
    </article>
  </main>
  <footer><!-- site footer --></footer>
</body>
Failed XML Sitemap +5 overall pts

No valid XML sitemap found. Checked: gooieneemlander.nl/sitemap.xml, gooieneemlander.nl/sitemap_index.xml.

XML Sitemap
HIGH

Sitemaps help AI crawlers discover all your pages efficiently. Without one, crawlers may miss important content or waste time discovering your site structure.

Create an XML sitemap and reference it in robots.txt with a Sitemap: directive.

sitemap.xml html
<!-- /sitemap.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://gooieneemlander.nl/</loc>
    <lastmod>2025-01-15</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://gooieneemlander.nl/about</loc>
    <lastmod>2025-01-10</lastmod>
  </url>
</urlset>

# Add to /robots.txt:
Sitemap: https://gooieneemlander.nl/sitemap.xml
Failed llms.txt +5 overall pts

No valid llms.txt found at /llms.txt.

llms.txt
HIGH

llms.txt is a new standard that provides LLMs with a structured overview of your site — key pages, documentation links, and context — in a format optimized for AI consumption.

Create an /llms.txt file with a markdown heading and relevant URLs to help LLMs understand your site.

llms.txt plain
# /llms.txt
# gooieneemlander.nl

> gooieneemlander.nl — your site description here.

## Docs
- [Getting Started](https://gooieneemlander.nl/docs/getting-started)
- [API Reference](https://gooieneemlander.nl/docs/api)

## Optional
- [Blog](https://gooieneemlander.nl/blog)
- [Changelog](https://gooieneemlander.nl/changelog)
Failed Meta robots / X-Robots-Tag +5 overall pts

Page has noindex directive, preventing AI indexing. Directives found: noindex, nofollow.

Meta robots / X-Robots-Tag
HIGH

Meta robots tags and X-Robots-Tag headers control per-page indexing. Restrictive directives like noindex or noai prevent AI systems from using your content.

Remove the noindex directive to allow AI systems to index this page.

HTML html
<!-- Replace noindex with index to allow AI indexing -->
<meta name="robots" content="index, follow">

<!-- Or remove the meta tag entirely (default is index, follow) -->
Failed HTTP bot accessibility +5 overall pts

Page returned HTTP 403 — the site blocks automated access. All content-based checks below are based on the error page, not the actual content.

HTTP bot accessibility
HIGH

AI crawlers and agents must be able to fetch your pages via HTTP. If bots are blocked, AI systems cannot index or interact with your content.

Allow legitimate bot traffic by configuring your WAF/CDN (Cloudflare, Akamai, etc.) to permit known AI user-agents. Blocking all bots prevents AI agents from accessing your content.

# Cloudflare WAF — allow known AI crawlers (managed rule skip)
# Dashboard → Security → WAF → Custom Rules → Create rule:
#   Field: User Agent | Operator: contains | Value: GPTBot
#   Then: Skip remaining rules

# Nginx — allow specific AI bot user-agents
map $http_user_agent $is_ai_bot {
  default         0;
  "~*GPTBot"      1;
  "~*ClaudeBot"   1;
  "~*Amazonbot"   1;
}
# Use $is_ai_bot in your rate-limiting or access rules
Failed Organization / WebSite schema +4 overall pts

No Organization or WebSite schema type found in JSON-LD.

Organization / WebSite schema
HIGH

Organization and WebSite schemas establish your brand identity in the knowledge graph. AI systems use these to attribute content, display rich results, and build entity relationships.

Add a JSON-LD block with @type "Organization" or "WebSite" including at least "name" and "url" properties.

JSON-LD html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Your Company",
  "url": "https://gooieneemlander.nl",
  "logo": "https://gooieneemlander.nl/logo.png",
  "sameAs": [
    "https://twitter.com/yourcompany",
    "https://linkedin.com/company/yourcompany"
  ]
}
</script>
Failed HSTS header +4 overall pts

Strict-Transport-Security header is not set. Note: sites on the HSTS preload list may not send this header but are still protected via browser preloading.

HSTS header
HIGH

HSTS prevents protocol downgrade attacks by telling browsers to always use HTTPS. AI agents that follow redirects benefit from HSTS as it eliminates insecure initial connections.

Add the Strict-Transport-Security header with max-age=31536000 (1 year) and includeSubDomains. If your site is on the HSTS preload list (hstspreload.org), the header is still recommended for first-visit protection.

Server config plain
# Nginx
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

# Apache (.htaccess)
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Failed WebMCP Declarative API +4 overall pts

No WebMCP signals found.

WebMCP Declarative API
HIGH

WebMCP is the W3C proposal for exposing website functionality directly to AI agents. Declarative tool annotations on forms let agents perform actions (search, purchase, book) without screen scraping.

Implement WebMCP to let AI agents interact with your site. Declarative: add tool-name and tool-description attributes to <form> elements. Imperative: use navigator.modelContext.provideContext() to register tools.

<form tool-name="search" tool-description="Search products by keyword">
  <input type="text" name="query" tool-param-description="Search query">
  <button type="submit">Search</button>
</form>
Failed A2A Agent Card +4 overall pts

No A2A Agent Card found at /.well-known/agent.json.

A2A Agent Card
HIGH

Google's Agent-to-Agent (A2A) protocol enables autonomous agent-to-agent communication. An Agent Card at /.well-known/agent.json advertises your agent's capabilities to other AI systems.

Create an A2A Agent Card at /.well-known/agent.json with required fields: name, description, url, capabilities.

.well-known/agent.json json
{
  "name": "My Agent",
  "description": "An AI assistant for customer support",
  "url": "https://gooieneemlander.nl/agent",
  "capabilities": {
    "streaming": true,
    "pushNotifications": false
  },
  "skills": [
    {"id": "support", "name": "Customer Support"}
  ]
}
Failed Content freshness signals +3 overall pts

No content freshness signals found. AI systems cannot determine when this content was last updated.

Content freshness signals
HIGH

AI systems strongly prefer recent content. ChatGPT gives 3.2× more citations to content updated within 30 days. Clear date signals (dateModified, article:modified_time) help AI determine your content's recency.

Add content date signals so AI systems can assess freshness. Use dateModified in JSON-LD, <meta property="article:modified_time">, or at minimum ensure your server sends a Last-Modified header.

JSON-LD html
<!-- Option 1: JSON-LD (preferred) -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Your Article Title",
  "datePublished": "2026-01-15T09:00:00Z",
  "dateModified": "2026-02-28T14:30:00Z"
}
</script>

<!-- Option 2: Open Graph meta tags -->
<meta property="article:published_time" content="2026-01-15T09:00:00Z">
<meta property="article:modified_time" content="2026-02-28T14:30:00Z">

<!-- Option 3: HTML time element -->
<time datetime="2026-02-28T14:30:00Z">Updated February 28, 2026</time>

<!-- Server-level: Ensure Last-Modified header is sent -->
# Nginx: add_header Last-Modified $date_gmt;
# Apache: FileETag MTime (default)
Failed OpenAPI / API documentation +3 overall pts

No OpenAPI or Swagger documentation found.

OpenAPI / API documentation
HIGH

OpenAPI specifications let AI agents understand and call your API programmatically. AI coding assistants and agent frameworks use OpenAPI to generate correct API calls automatically.

Create an OpenAPI 3.x specification and serve it at /openapi.json or /.well-known/openapi to enable AI agents to discover and use your API.

openapi.json json
{
  "openapi": "3.1.0",
  "info": {
    "title": "My API",
    "version": "1.0.0"
  },
  "paths": {
    "/api/search": {
      "get": {
        "summary": "Search items",
        "parameters": [
          {"name": "q", "in": "query", "schema": {"type": "string"}}
        ]
      }
    }
  }
}
Failed Content-Security-Policy +3 overall pts

Content-Security-Policy header is not set.

Content-Security-Policy
HIGH

Content-Security-Policy prevents XSS and injection attacks. For AI agents that interact with your site, CSP ensures the page content hasn't been tampered with by malicious scripts.

Add a Content-Security-Policy header with directives like default-src, script-src, and style-src.

Server config plain
# Nginx
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self'" always;

# Apache (.htaccess)
Header always set Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self'"
Failed FAQPage schema +3 overall pts

No FAQPage schema found. Sites with FAQPage schema are 8× more likely to be cited by ChatGPT.

FAQPage schema
HIGH

FAQPage schema is one of the strongest structured data signals for AI citation. Research shows websites with FAQPage schema are 8× more likely to appear in ChatGPT search results compared to those without it.

Add FAQPage structured data with Question/Answer pairs covering common queries about your product or service. This is one of the highest-ROI structured data investments for AI visibility.

JSON-LD html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is AI agent readiness?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "AI agent readiness measures how well a website can be discovered, understood, and interacted with by AI systems."
      }
    },
    {
      "@type": "Question",
      "name": "How do I improve my AI readiness score?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Add structured data, ensure clean semantic HTML, allow AI crawlers in robots.txt, and implement agent protocols."
      }
    }
  ]
}
</script>
Failed Author attribution +3 overall pts

No author attribution found. 96% of Google AI Overview citations come from sources with strong E-E-A-T signals including clear authorship.

Author attribution
HIGH

Author attribution is a key E-E-A-T signal. Google reports 96% of AI Overview citations come from sources with strong E-E-A-T, and expert-authored content is 3.2× more likely to be cited than generic staff-written content.

Add author information using JSON-LD (preferred), <meta name="author">, or <a rel="author">. Expert authorship is 3.2× more likely to earn AI citations.

JSON-LD html
<!-- Option 1: JSON-LD author in Article (preferred) -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Your Article Title",
  "author": {
    "@type": "Person",
    "name": "Jane Smith",
    "url": "https://gooieneemlander.nl/team/jane-smith"
  }
}
</script>

<!-- Option 2: Meta tag -->
<meta name="author" content="Jane Smith">

<!-- Option 3: Linked author -->
<a rel="author" href="https://gooieneemlander.nl/team/jane-smith">Jane Smith</a>
Partial AI crawler directives +3 overall pts

Mixed AI crawler policies. Disallowed: GPTBot, Google-Extended, ChatGPT-User, ClaudeBot, Amazonbot, Bytespider, CCBot, PerplexityBot, meta-externalagent. Not mentioned (4): Claude-User, Applebot-Extended, Claude-SearchBot, OAI-SearchBot.

AI crawler directives
MEDIUM

Major AI systems use dedicated crawlers (GPTBot, ClaudeBot, Amazonbot). Explicit directives signal whether you want your content included in AI training and search results.

9 AI crawlers are blocked. Consider allowing them to improve AI discoverability.

robots.txt plain
# Add to your /robots.txt — explicit Allow for AI crawlers
User-agent: GPTBot
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: Amazonbot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: PerplexityBot
Allow: /
Partial Server-side rendered content +3 overall pts

Limited visible text (41 chars) but <noscript> fallback present.

Server-side rendered content
MEDIUM

AI agents cannot execute JavaScript. They parse raw HTML to understand page content. Without server-side rendering, your content is invisible to most AI crawlers and assistants.

Implement server-side rendering (SSR) or static site generation (SSG) so AI agents can read your content without executing JavaScript. See web.dev/articles/rendering-on-the-web for a comparison of rendering strategies.

page.js plain
// Next.js — use getServerSideProps for SSR
export async function getServerSideProps() {
  const data = await fetchData();
  return { props: { data } };
}

// Or use generateStaticParams for SSG (App Router)
export async function generateStaticParams() {
  return [{ slug: "about" }, { slug: "contact" }];
}
Partial Accessible landmarks & ARIA +2 overall pts

1 landmark regions via semantic HTML (main). No additional ARIA attributes found.

Accessible landmarks & ARIA
MEDIUM

ARIA landmarks help AI agents identify page regions (navigation, main content, footer). This is the same API used by screen readers and is increasingly used by AI browsing agents.

Use semantic HTML elements to define page regions: <header>, <nav>, <main>, <footer>. These provide implicit ARIA landmarks without needing explicit role attributes. See w3.org/WAI/ARIA/apg/patterns/landmarks for the W3C landmarks pattern.

HTML html
<!-- Semantic elements provide implicit ARIA landmarks -->
<header><!-- banner landmark -->
  <nav aria-label="Primary"><!-- navigation landmark -->
    <a href="/" aria-current="page">Home</a>
  </nav>
</header>
<main><!-- main landmark -->
  <article>...</article>
</main>
<footer><!-- contentinfo landmark --></footer>
Failed WebMCP manifest +2 overall pts

No WebMCP manifest found at /.well-known/webmcp or /.well-known/webmcp.json.

WebMCP manifest
HIGH

A WebMCP manifest at /.well-known/webmcp.json enables pre-navigation discovery — AI agents can learn what tools your site offers before even loading the page.

Create a WebMCP manifest at /.well-known/webmcp.json with your tool definitions to enable pre-navigation agent discovery. Discovery is an active area of discussion in the WebMCP spec.

{
  "spec": "webmcp/0.1",
  "tools": [
    {
      "name": "search",
      "description": "Search products",
      "url": "/search",
      "method": "GET",
      "parameters": [
        {"name": "q", "type": "string", "description": "Search query"}
      ]
    }
  ]
}
Failed MCP Discovery +2 overall pts

No MCP discovery document found at /.well-known/mcp.json.

MCP Discovery
HIGH

The Model Context Protocol (MCP) by Anthropic is the standard for connecting AI assistants to external tools and data. A discovery document lets AI systems find and connect to your MCP server.

Create a MCP discovery document at /.well-known/mcp.json describing your MCP server capabilities.

{
  "mcpServers": {
    "myService": {
      "url": "https://gooieneemlander.nl/mcp",
      "name": "My MCP Server",
      "description": "Provides tools for data access"
    }
  }
}
Failed agents.json +2 overall pts

No agents.json found at /.well-known/agents.json or /agents.json.

agents.json
HIGH

agents.json provides a directory of AI agent endpoints on your site. It helps agent orchestration systems discover and connect to your available AI services.

Create an agents.json file at /.well-known/agents.json with your agent endpoint definitions.

agents.json json
{
  "agents": [
    {
      "name": "Support Agent",
      "description": "Handles customer inquiries",
      "url": "https://gooieneemlander.nl/agents/support",
      "protocol": "a2a"
    }
  ]
}
Fix with AI Skills
$ /plugin marketplace add bartwaardenburg/isagentready-skills

Detailed results

Agent Protocols

Weight 15% · 6 failed checkpoints

0/100
AI Content Discovery

Weight 30% · 5 failed, 1 partial

22/100
Security & Trust

Weight 15% · 2 failed checkpoints

53/100
Content & Semantics

Weight 20% · 2 failed, 2 partial

33/100
AI Search Signals

Weight 20% · 5 failed checkpoints

0/100
Supplemental evidence AI visitor test and training exposure. The score does not change.
AI Training Exposure

Does not affect the readiness score

Supplemental

1 of 3 AI training protection mechanisms active.

Common Crawl presence Unknown

Could not determine the latest Common Crawl index.

Training crawler blocking Partial

7 of 8 training crawlers blocked: Amazonbot, Bytespider, CCBot, ClaudeBot, GPTBot, Google-Extended, meta-externalagent. Still allowed: Applebot-Extended.

TDMRep declaration Not found

No TDMRep file found at /.well-known/tdmrep.json. The TDM Reservation Protocol (W3C) lets you declare whether you reserve text and data mining rights. See w3.org/community/reports/tdmrep/CG-FINAL-tdmrep-20240510 for the specification.

ai.txt policy Not found

No ai.txt file found. This emerging standard lets you declare AI usage preferences for your content.

Next steps

DEVELOPER TOOLS

Scan and fix from your editor. Install the MCP server to scan, and AI skills to fix.

SCAN
$ claude mcp add isagentready-mcp -- npx -y isagentready-mcp
FIX
$ /plugin marketplace add bartwaardenburg/isagentready-skills
Request a detailed report Optional follow-up with a personalized PDF report
Free PDF Report

Get your detailed report

Receive a personalized report with actionable insights for improving your website's AI agent readiness.

  • Detailed score breakdown per category
  • Prioritized improvement recommendations
  • Step-by-step implementation guide

We'll use this address to send report updates.