Skip to content

AI-Readiness Score methodology — v1.0

TL;DR. The A–F AI-Readiness Score sums 20 signals across four buckets: discovery (agents.json, ai-plugin.json, llms.txt, MCP/A2A cards — 13 pts), crawler policy (robots.txt AI section, X-Robots-Tag, Content-Signal — 7 pts), citation surface (Speakable schema, author identification, markdown content negotiation, Link headers — 6 pts), and authentication (OAuth metadata, Web Bot Auth, API catalog — 4 pts). Source of truth: api/ai-check.php. Anchored to llmstxt.org, RFC 8615 (.well-known), MCP spec, Google A2A.

1. Discovery — 13 pts

  • 2 pts/.well-known/agents.json (2 pts if valid + has skills, 1 pt if minimal)
  • 1 pt/.well-known/ai-plugin.json (OpenAI / ChatGPT plugin descriptor)
  • 2 pts/llms.txt + /llms-full.txt (llmstxt.org spec)
  • 2 pts<link rel="llms-txt"> + rel="ai-content" in <head>
  • 1 pt<meta name="ai-content"> + ai-license
  • 2 pts/.well-known/mcp/server-card.json (Anthropic MCP — Claude/Cursor/Zed)
  • 2 pts/.well-known/agent-card.json (Google A2A protocol)
  • 1 pt/.well-known/agent-skills/index.json

2. Crawler Policy — 7 pts

  • 3 pts — robots.txt has explicit AI section: 3 pts for ≥10 AI bots allowlisted (GPTBot/ClaudeBot/PerplexityBot/etc.), 2 pts for 5–9, 1 pt for ≥1
  • 2 ptsX-Robots-Tag: index, follow on indexable pages (HTTP header form, not just <meta>)
  • 2 pts — Content-Signal directives (IETF ai-train / ai-input / search) in robots.txt

3. Citation Surface — 6 pts

  • 1 pt — schema.org SpeakableSpecification on the homepage WebSite node
  • 2 pts — Author identification: Person schema with sameAs, byline link, dateModified
  • 1 pt — Markdown content negotiation (Accept: text/markdown → llms.txt body)
  • 1 ptLink: HTTP header advertising llms.txt + openapi + sitemap + MCP card + A2A card
  • 1 pt — sitemap reference in llms.txt + linked from RSS

4. Authentication & Catalog — 4 pts

  • 1 pt/.well-known/openid-configuration + oauth-authorization-server
  • 1 pt/.well-known/http-message-signatures-directory (Web Bot Auth)
  • 1 pt/.well-known/api-catalog (RFC 9727 linkset)
  • 1 pt — OpenAPI specification linked from agents.json + ai-plugin.json

Grade letter mapping

Same threshold table as Health Score:

Percent of maxGrade
≥ 90%A
≥ 70%B
≥ 50%C
≥ 30%D
< 30%F

References

Versioning

v1.0 — published 2026-05-05. Mirrors api/ai-check.php at HEAD on 2026-05-05 (20 signal checks). The category weights are author judgement: Discovery rated highest because without it AI engines cannot cite the site at all; Authentication rated lowest because most public-content engines do not exercise it. Future weight changes bump the version + add a delta block.

Run an AI-readiness check →