{
  "name": "AgenticWebScore",
  "url": "https://agenticwebscore.com/",
  "description": "AgenticWebScore measures how well a website serves AI agents. Its 61 checks in 5 dimensions give a score you can recompute and a fix for every failure.",
  "language": "en",
  "rubricVersion": "0.7",
  "checks": 61,
  "dimensions": 5,
  "pages": [
    {
      "url": "https://agenticwebscore.com/",
      "title": "Agent readiness, measured from the outside",
      "description": "Find out whether AI agents can read your site. AgenticWebScore runs 61 checks from the outside and gives a fix for every failure.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/index.md"
    },
    {
      "url": "https://agenticwebscore.com/methodology",
      "title": "Methodology and rubric",
      "description": "The complete scoring contract for AgenticWebScore rubric v0.7: 5 dimensions, tier pools, the scoring formula, grades, and levels.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/methodology.md"
    },
    {
      "url": "https://agenticwebscore.com/checks",
      "title": "All 61 agent readiness checks by dimension",
      "description": "Every check in rubric v0.7, with the measurement, the reproduction command, and the fix to ship. They are grouped by dimension, with tier and impact.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/reachable",
      "title": "AI crawler access: is your homepage open to agents?",
      "description": "Homepage open to agent access: If an agent cannot read your site, every other check is moot. The fix: open agent access (clear the 403/429 block).",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/reachable.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/robots-txt",
      "title": "robots.txt for AI agents: rules, crawl-delay and AI crawlers",
      "description": "robots.txt with agent directives: The front door for agent traffic (RFC 9309). It is an essential-tier check in the Discoverability dimension.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/robots-txt.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/sitemap-xml",
      "title": "sitemap.xml valid and current",
      "description": "sitemap.xml valid and current: The primary URL discovery source for agent crawlers. The fix: publish a sitemap with lastmod.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/sitemap-xml.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/llms-txt",
      "title": "llms.txt: how to publish a site summary for AI agents",
      "description": "/llms.txt published and well-structured: The most widely adopted contract for making a site legible to agents. The fix: publish llms.txt. Standard: llmstxt.org.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/llms-txt.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/link-headers",
      "title": "Discovery via Link response headers",
      "description": "Discovery via Link response headers: RFC 8288 Link headers let an agent find your discovery resources without parsing HTML.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/link-headers.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/dns-aid",
      "title": "DNS-AID discovery record",
      "description": "DNS-AID discovery record: Lets agents read discovery information over DNS without an HTTP round trip. Cloudflare added it to its readiness checklist.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/dns-aid.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/canonical",
      "title": "Canonical and hreflang discipline",
      "description": "Canonical and hreflang discipline: An agent needs one consistent URL per important page. The fix: establish canonical and hreflang discipline.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/canonical.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/llms-full",
      "title": "/llms-full.txt expanded context",
      "description": "/llms-full.txt expanded context: Lets an agent take in the full context in a single request instead of walking the site step by step.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/llms-full.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/agents-md",
      "title": "AGENTS.md with the required sections",
      "description": "AGENTS.md with the required sections: The instruction file for coding and operations agents. The fix: publish AGENTS.md.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/agents-md.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/sitemap-md",
      "title": "/sitemap.md markdown site map",
      "description": "/sitemap.md markdown site map: Lets an agent read your site structure as markdown in a single file. The fix: publish a markdown sitemap.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/sitemap-md.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/markdown-negotiation",
      "title": "Markdown content negotiation for AI agents",
      "description": "Markdown content negotiation: Agents can request a markup-free version with \"Accept: text/markdown\", which cuts token cost.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/markdown-negotiation.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/headings",
      "title": "Semantic heading structure",
      "description": "Semantic heading structure: A single H1 and a consistent H2 structure let the content be split correctly. The fix: build a semantic heading structure.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/headings.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/meta",
      "title": "Title and summary metadata",
      "description": "Title and summary metadata: This is how an agent learns what a page is about without opening it. The fix: add a title and meta description.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/meta.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/jsonld",
      "title": "JSON-LD structured data",
      "description": "JSON-LD structured data: The entity type becomes unambiguous to a machine. Without authoritative data, an agent answers from whatever it can scrape.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/jsonld.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/faq-schema",
      "title": "FAQ / question-answer schema",
      "description": "FAQ / question-answer schema: Question-and-answer content is the type agents quote most. The fix: add FAQ schema. Standard: schema.org/FAQPage.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/faq-schema.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/breadcrumb",
      "title": "Breadcrumb / navigation schema",
      "description": "Breadcrumb / navigation schema: Helps an agent make sense of where a page sits in your site. The fix: add breadcrumb schema.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/breadcrumb.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/summary",
      "title": "Prominent summary block",
      "description": "Prominent summary block: The llms.txt contract recommends a short summary at the top of every page; agents quote it directly.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/summary.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/lang",
      "title": "HTML lang and hreflang: language declarations for agents",
      "description": "Language declaration and multilingual access: A wrong language tag makes an agent misread the content. The fix: add a language declaration and hreflang.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/lang.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/no-js-fallback",
      "title": "Content that needs no JavaScript",
      "description": "Content that needs no JavaScript: If content is only produced client-side, the page is empty for agents that do not run JavaScript.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/no-js-fallback.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/spa-fallback",
      "title": "SPA fallback: why every URL needs its own document",
      "description": "Per-page content separation (no SPA fallback): A catch-all route returning the same skeleton for every URL makes pages indistinguishable to an agent.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/spa-fallback.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/token-efficiency",
      "title": "Token efficiency (content-to-markup ratio)",
      "description": "Token efficiency (content-to-markup ratio): A bloated DOM wastes an agent's context window. The fix: improve the content-to-markup ratio.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/token-efficiency.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/viewport",
      "title": "Responsive markup",
      "description": "Responsive markup: Agent browsers mostly run at mobile scale. The fix: add responsive markup. The page gives a command to reproduce the measurement.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/viewport.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/webbotauth",
      "title": "Web Bot Auth: signed agent requests a site can verify",
      "description": "RFC 9421 with Ed25519: the mechanism that lets a site verify which agent is calling rather than guessing from a user-agent string.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/webbotauth.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/agent-permissions",
      "title": "agent-permissions.json: declaring what agents may do",
      "description": "Agent permission model (agent-permissions.json): Declares which actions an agent may take, which are refused, and which need a person.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/agent-permissions.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/ai-rules",
      "title": "Named AI bot rules in robots.txt",
      "description": "Named AI bot rules in robots.txt: Naming agent crawlers explicitly is the first step to being visible in agent traffic. Standard: RFC 9309.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/ai-rules.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/content-signal",
      "title": "Content-Signal usage signals",
      "description": "Content-Signal usage signals: Declares how your content may be used, inside robots.txt. Cloudflare included this in its readiness checks.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/content-signal.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/ai-policy",
      "title": "AI usage policy page",
      "description": "AI usage policy page: States the rules agents must follow and reduces licensing ambiguity. The fix: publish an AI usage policy.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/ai-policy.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/bot-page",
      "title": "Crawler and agent policy page",
      "description": "Crawler and agent policy page: Explains which agents are permitted and how they are verified. The fix: publish a crawler and agent policy page.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/bot-page.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/security-txt",
      "title": "security.txt (RFC 9116)",
      "description": "security.txt (RFC 9116): Provides a responsible disclosure channel for agent-related security incidents. The fix: publish security.txt.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/security-txt.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/crawl-delay",
      "title": "Crawl rate declaration",
      "description": "Crawl rate declaration: Cloudflare's Verified Bots policy drops AI crawlers that ignore crawl-delay. The fix: declare a crawl rate.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/crawl-delay.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/ai-txt",
      "title": "/ai.txt access declaration",
      "description": "/ai.txt access declaration: Some agent ecosystems read an /ai.txt contract alongside robots.txt. The fix: publish an /ai.txt access declaration.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/ai-txt.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/mcp-card",
      "title": "MCP server card: making your service callable by agents",
      "description": "MCP server card: Since MCP 2026-07-28, agents discover tool servers through a published declaration. The fix: publish an MCP server card.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/mcp-card.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/openapi",
      "title": "OpenAPI definition",
      "description": "OpenAPI definition: A machine-readable contract so an agent can discover your API and generate correct calls. The fix: publish an OpenAPI definition.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/openapi.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/oauth-discovery",
      "title": "OAuth discovery documents",
      "description": "Required for agents to connect to your authenticated API on their own (RFC 8414 / RFC 9728). The fix: publish OAuth discovery documents.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/oauth-discovery.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/api-catalog",
      "title": "API catalog (RFC 9727): advertising callable APIs to agents",
      "description": "API catalog: Lets an agent see which capabilities are callable in a single document (RFC 9727). The fix: publish an API catalog.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/api-catalog.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/agent-skills",
      "title": "Agent Skills declaration",
      "description": "Agent Skills declaration: Offers ready-made capability packages to agent runtimes. The fix: publish an agent skills index.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/agent-skills.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/a2a-card",
      "title": "A2A agent card",
      "description": "A2A agent card: A2A v1.0 (Linux Foundation) is the emerging standard for agent-to-agent discovery. The fix: publish an A2A agent card.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/a2a-card.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/a2a-signed",
      "title": "Cryptographically signed agent card",
      "description": "Cryptographically signed agent card: A2A v1.0 makes identity verifiable through JWS (RFC 7515). The fix: sign the agent card.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/a2a-signed.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/auth-md",
      "title": "/auth.md agent authentication guide",
      "description": "/auth.md agent authentication guide: A guide telling an agent which authentication flow to use. The fix: publish an auth.md guide.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/auth-md.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/webmcp",
      "title": "WebMCP browser tool declaration",
      "description": "WebMCP browser tool declaration: WebMCP lets sites expose tools to in-browser agents. It is the only normative deliverable of the W3C Agentic Web WG.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/webmcp.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/ard-manifest",
      "title": "ARD resource discovery manifest",
      "description": "ARD resource discovery manifest: Cisco/Outshift's Agentic Resource Discovery specification; Lighthouse audits it too. The fix: publish an ARD resource manifest.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/ard-manifest.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/docs",
      "title": "Documentation reachable",
      "description": "Documentation reachable: An agent needs documentation to complete an integration on its own. The fix: publish machine-readable documentation.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/docs.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/pricing-structured",
      "title": "Structured pricing information",
      "description": "Structured pricing information: An offer without a price cannot be compared by an agent — you drop out of consideration.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/pricing-structured.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/service-schema",
      "title": "Service/product scope machine-readable",
      "description": "Service/product scope machine-readable: An agent must be able to answer \"what does this site offer, and to whom\". The fix: add a service scope schema.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/service-schema.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/contact",
      "title": "Structured contact information",
      "description": "Structured contact information: An agent must know where to reach you before starting a transaction, or when something fails.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/contact.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/status-page",
      "title": "Service status and changelog feed",
      "description": "Service status and changelog feed: An agent should be able to learn about outages and API changes in a machine-readable way.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/status-page.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/product-schema",
      "title": "Product schema for AI shopping agents",
      "description": "Product/catalog schema: Product data is the most valuable and the least machine-readable. The fix: add product schema. Standard: schema.org/Product.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/product-schema.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/payment-protocols",
      "title": "Agent payment protocol support: AP2, ACP, x402, and UCP",
      "description": "Agent payment standard support (AP2/ACP/x402/UCP): The least-implemented surface in the rubric. The fix: declare agent payment standard support.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/payment-protocols.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/agent-purchase",
      "title": "Agent purchase policy",
      "description": "Agent purchase policy: Liability is the open question in agent commerce, and it is a policy decision rather than a technical one.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/agent-purchase.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/ucp-manifest",
      "title": "UCP manifest (/.well-known/ucp)",
      "description": "UCP manifest (/.well-known/ucp): Google and Shopify's Universal Commerce Protocol; lets a merchant declare checkout capabilities at transaction time.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/ucp-manifest.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/returns",
      "title": "Return and shipping terms machine-readable",
      "description": "Return and shipping terms machine-readable: An agent must verify return terms before making a purchase decision. The fix: add return and shipping schema.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/returns.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/agent-analytics",
      "title": "Agent traffic measurement",
      "description": "Agent traffic measurement: If agent traffic is not measured separately, the channel's return is invisible and never funded.",
      "updated": "2026-10-09",
      "markdown": "https://agenticwebscore.com/checks/agent-analytics.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/inventory-freshness",
      "title": "Inventory and price freshness",
      "description": "An agent that cannot tell whether an item is in stock will quote a stale offer to a buyer. The fix: declare availability and price validity.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/inventory-freshness.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/seller-identity",
      "title": "Seller identity declared",
      "description": "Seller identity declared: On a marketplace an offer is meaningless without knowing who is selling and who is the merchant of record.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/seller-identity.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/shipping-costs",
      "title": "Shipping cost and delivery declared",
      "description": "A purchase agent that cannot compute the delivered total cannot complete a checkout, and returns to the merchant without it.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/shipping-costs.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/sandbox-environment",
      "title": "Sandbox or test environment documented",
      "description": "An agent cannot safely integrate against a production endpoint; a documented sandbox is the difference between a working trial and a support ticket.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/sandbox-environment.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/rate-limits-declared",
      "title": "Rate limits and quotas documented",
      "description": "An agent that does not know the quota discovers it by being throttled, halfway through a task it cannot resume. The fix: document rate limits and quotas.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/rate-limits-declared.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/licensing-terms",
      "title": "Reuse and licensing terms declared",
      "description": "Declaring ai-train=no without stating a licensing path leaves both the publisher and the agent without an answer they can act on.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/licensing-terms.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/provenance-declared",
      "title": "Content provenance declared",
      "description": "Author, publication date and update date are what let an agent judge whether a source is current and attributable before it quotes it.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/provenance-declared.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/booking-action",
      "title": "Machine-readable booking action",
      "description": "Machine-readable booking action: For a service business the agent's task is to book, not to browse. The fix: declare a bookable action.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/booking-action.md"
    },
    {
      "url": "https://agenticwebscore.com/checks/document-formats",
      "title": "Documents in machine-readable formats",
      "description": "A PDF that carries no document structure is unreadable to an agent and to a screen reader alike — the same defect, found twice.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/checks/document-formats.md"
    },
    {
      "url": "https://agenticwebscore.com/manifesto",
      "title": "The turn: how ready sites are for agents",
      "description": "The web is no longer only for people. It is becoming a working environment for AI agents, and this page reports how ready the sites we measured are for them.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/manifesto.md"
    },
    {
      "url": "https://agenticwebscore.com/bot",
      "title": "Crawler and agent policy",
      "description": "How the AgenticWebScore scanner identifies itself, what it requests, and which machine surfaces agents are welcome to read here.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/bot.md"
    },
    {
      "url": "https://agenticwebscore.com/ai-policy",
      "title": "AI usage policy",
      "description": "Crawling, model training, commercial use, and attribution rules for the content published on AgenticWebScore. Each topic is stated plainly.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/ai-policy.md"
    },
    {
      "url": "https://agenticwebscore.com/privacy",
      "title": "Privacy: what this service stores",
      "description": "Every record this service keeps, where it lives, what it holds, and for how long. Who else receives scan data, and who to contact about it.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/privacy.md"
    },
    {
      "url": "https://agenticwebscore.com/terms",
      "title": "Terms of use",
      "description": "Terms for this site, the scanner, and the badge endpoints: what a measurement is, what the badge licence grants, and what is not promised.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/terms.md"
    },
    {
      "url": "https://agenticwebscore.com/abuse",
      "title": "Abuse and removal",
      "description": "What the scanner requests, how often, and why robots.txt does not stop it. How to block it, have a stored record removed, and report a vulnerability.",
      "updated": "2026-10-12",
      "markdown": "https://agenticwebscore.com/abuse.md"
    },
    {
      "url": "https://agenticwebscore.com/scan",
      "title": "Scan your site for agent readiness"
    },
    {
      "url": "https://agenticwebscore.com/directory",
      "title": "Agent readiness directory"
    },
    {
      "url": "https://agenticwebscore.com/learn",
      "title": "Learn"
    },
    {
      "url": "https://agenticwebscore.com/learn/ai-crawler-blocking",
      "title": "AI crawler blocking: how to refuse scrapers without locking out agents",
      "description": "Blocking AI crawlers by IP locks out the agents you want. Named user-agent rules and Content Signals let you refuse training without refusing retrieval.",
      "type": "article",
      "updated": "2026-10-12",
      "tags": [
        "robots.txt",
        "AI crawlers",
        "Content Signals",
        "bot access"
      ],
      "markdown": "https://agenticwebscore.com/learn/ai-crawler-blocking.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/site-profiles-methodology",
      "title": "One rubric, 8 site profiles: why a publisher should not be asked for a product feed",
      "description": "Since rubric v0.4, sites are scored through 8 site profiles, so a check that only applies to a shop is never handed to a publisher as a task.",
      "type": "article",
      "updated": "2026-10-12",
      "tags": [
        "methodology",
        "site profiles",
        "auditing"
      ],
      "markdown": "https://agenticwebscore.com/learn/site-profiles-methodology.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/agent-tools-not-pages",
      "title": "Tools, not pages: MCP server cards, agent skills and WebMCP",
      "description": "Reading a page is inference; calling a tool is an API. What MCP server cards, agent skills and WebMCP let an agent call, and where each one breaks.",
      "type": "article",
      "updated": "2026-10-12",
      "tags": [
        "MCP",
        "agent skills",
        "WebMCP",
        "APIs"
      ],
      "markdown": "https://agenticwebscore.com/learn/agent-tools-not-pages.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/what-is-agent-readiness",
      "title": "What agent readiness actually means",
      "description": "Agent readiness is whether a non-browser client can reach, read and act on a site: what it measures, what it does not, and when to report nothing.",
      "type": "article",
      "updated": "2026-10-12",
      "tags": [
        "agent readiness",
        "AI agents",
        "web standards"
      ],
      "markdown": "https://agenticwebscore.com/learn/what-is-agent-readiness.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/agentic-commerce-protocols",
      "title": "Agentic commerce protocols compared: AP2, ACP, x402 and UCP",
      "description": "What AP2, ACP, x402 and UCP each do, which layer of a transaction each occupies, who governs it, and when the honest answer is to implement none of them.",
      "type": "article",
      "updated": "2026-10-09",
      "tags": [
        "AP2",
        "ACP",
        "x402",
        "UCP",
        "agentic commerce"
      ],
      "markdown": "https://agenticwebscore.com/learn/agentic-commerce-protocols.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/llms-txt-guide",
      "title": "llms.txt: what it is, what it is not, and when it actually helps",
      "description": "llms.txt is a proposal, not a standard. What the format specifies, how files fail, and how it relates to llms-full.txt and sitemap.md.",
      "type": "article",
      "updated": "2026-10-08",
      "tags": [
        "llms.txt",
        "agent readiness",
        "discovery"
      ],
      "markdown": "https://agenticwebscore.com/learn/llms-txt-guide.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/markdown-content-negotiation",
      "title": "Serving agents markdown: content negotiation without a second codebase",
      "description": "Serve markdown on a page's own URL with Accept and Vary, so agents get token-efficient text and readers still get HTML from one content source.",
      "type": "article",
      "updated": "2026-10-08",
      "tags": [
        "markdown",
        "content negotiation",
        "HTTP"
      ],
      "markdown": "https://agenticwebscore.com/learn/markdown-content-negotiation.md"
    },
    {
      "url": "https://agenticwebscore.com/learn/web-bot-auth-explained",
      "title": "Signed agents: how Web Bot Auth works and what it does not prove",
      "description": "Web Bot Auth verifies which key signed an HTTP request. It proves who sent the traffic — not what that agent is allowed to do on your site.",
      "type": "article",
      "updated": "2026-10-08",
      "tags": [
        "Web Bot Auth",
        "agent identity",
        "HTTP signatures"
      ],
      "markdown": "https://agenticwebscore.com/learn/web-bot-auth-explained.md"
    }
  ],
  "pagesNote": "81 routes: 70 pages in the content registry, 8 learn articles and 3 routes that are not in the registry (/scan, /directory, /learn). A route carries a markdown field when it has a markdown twin; the 3 routes without one serve HTML.",
  "surfaces": [
    {
      "url": "https://agenticwebscore.com/llms.txt",
      "label": "llms.txt",
      "type": "text/plain; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/llms-full.txt",
      "label": "llms-full.txt",
      "type": "text/plain; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/AGENTS.md",
      "label": "AGENTS.md",
      "type": "text/markdown; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/sitemap.md",
      "label": "sitemap.md",
      "type": "text/markdown; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/sitemap.xml",
      "label": "sitemap.xml",
      "type": "application/xml; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/index.json",
      "label": "index.json",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/rubric.json",
      "label": "rubric.json",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/robots.txt",
      "label": "robots.txt",
      "type": "text/plain; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/ai.txt",
      "label": "ai.txt",
      "type": "text/plain; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/auth.md",
      "label": "auth.md",
      "type": "text/markdown; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/ai-policy",
      "label": "AI policy",
      "type": "text/html",
      "kind": "page"
    },
    {
      "url": "https://agenticwebscore.com/bot",
      "label": "Agent policy",
      "type": "text/html",
      "kind": "page"
    },
    {
      "url": "https://agenticwebscore.com/privacy",
      "label": "Privacy",
      "type": "text/html",
      "kind": "page"
    },
    {
      "url": "https://agenticwebscore.com/terms",
      "label": "Terms of use",
      "type": "text/html",
      "kind": "page"
    },
    {
      "url": "https://agenticwebscore.com/abuse",
      "label": "Abuse and removal",
      "type": "text/html",
      "kind": "page"
    },
    {
      "url": "https://agenticwebscore.com/.well-known/agent-permissions.json",
      "label": "agent-permissions.json",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/.well-known/mcp/server-card.json",
      "label": "MCP server card",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/.well-known/api-catalog",
      "label": "api-catalog",
      "type": "application/linkset+json; profile=\"https://www.rfc-editor.org/info/rfc9727\"; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/openapi.json",
      "label": "openapi.json",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/.well-known/agent-skills/index.json",
      "label": "agent-skills index",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/.well-known/security.txt",
      "label": "security.txt",
      "type": "text/plain; charset=utf-8",
      "kind": "document"
    },
    {
      "url": "https://agenticwebscore.com/.well-known/dns-aid.json",
      "label": "dns-aid.json",
      "type": "application/json; charset=utf-8",
      "kind": "document"
    }
  ],
  "surfacesNote": "A published surface is a path this site publishes for agents: 17 machine-readable documents and 5 HTML policy pages. /bot and /sitemap.md count the same 22 paths."
}