---
title: "Docusaurus: agent-ready recipes | Agent Ready Checklist"
description: "Every agent-ready recipe for Docusaurus: 31 rows of the checklist, the version read, the date and the vendor documentation each step came from."
canonical: https://agentreadychecklist.com/platforms/docusaurus
site: "Agent Ready Checklist"
last_updated: 2026-11-05
section: "Platforms"
---

# Docusaurus: agent-ready recipes | Agent Ready Checklist

> Every agent-ready recipe for Docusaurus: 31 rows of the checklist, the version read, the date and the vendor documentation each step came from.

Source: https://agentreadychecklist.com/platforms/docusaurus
Site: Agent Ready Checklist
Last reviewed: 2026-11-05
Agent endpoints: https://agentreadychecklist.com/llms.txt (index), https://agentreadychecklist.com/openapi.json (API), https://agentreadychecklist.com/mcp (MCP server), https://agentreadychecklist.com/ask (search)
Access: https://agentreadychecklist.com/auth.md (no key). Pricing: https://agentreadychecklist.com/pricing.md (free).

# Docusaurus: agent-ready recipes

Docusaurus: 31 recipes against the 31 checklist rows, read on 2026-11-04. Docusaurus: 17 are direct, 14 are workarounds. Docusaurus recipes cite the page they were derived from, or the specification when the step is generic. A Docusaurus workaround names the real route: a proxy, an edge function or a domain you control. Version read for Docusaurus: 3.10.2.

## Version and documentation read

Version

3.10.2 (npm @docusaurus/core latest, read 2026-11-04)

Read on

2026-11-04

Recipes

17 direct, 14 workaround, 0 not possible on the platform

robots.txt

[docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets). No robots.txt generator. Files in static/ are copied to the build root, so static/robots.txt becomes /robots.txt.

Sitemap

[docusaurus.io/docs/api/plugins/@docusaurus/plugin-sitemap](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-sitemap). plugin-sitemap ships in preset-classic; options lastmod, changefreq, priority, ignorePatterns, filename.

Structured data

[docusaurus.io/docs/seo](https://docusaurus.io/docs/seo). headTags in docusaurus.config.js or <head> in MDX; the SEO page shows an application/ld+json Organization example.

Status codes

[docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment). Static build; the build emits 404.html and the host decides the status code. Trailing slash behaviour depends on the host and the trailingSlash option.

Headers and redirects

[docusaurus.io/docs/api/plugins/@docusaurus/plugin-client-redirects](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-client-redirects). plugin-client-redirects creates client-side redirect pages, not HTTP 301s. Set real HTTP redirects and headers at the host.

Content negotiation

No first-party doc: Docusaurus emits HTML only. A curl with Accept: text/markdown to docusaurus.io/docs/seo returned text/html on 2026-11-04. Workaround: Cloudflare Markdown for Agents or an edge function at the host.

llms.txt

No first-party doc: No core llms.txt generator in 3.10.2. Write static/llms.txt by hand or add a community plugin.

OpenAPI

No first-party doc: No core OpenAPI plugin. Serve static/openapi.json; community plugins render API reference pages.

[The checklist table for Docusaurus](https://agentreadychecklist.com/platform/docusaurus/checklist/) shows every row with its first step.

## Verify with Ora

Docusaurus has a direct recipe for 17 rows, and Ora's catalogue (read 2026-11-05) names a matching check for 13 of them, among them AR-FIND-01, AR-FIND-03, AR-FIND-04. After the steps are live, one audit shows which of those fixes the score picks up.

```bash
npx ax@0.10 audit https://example.com --min-score 70
```

13 rows that Ora checks are a workaround or not possible on Docusaurus: [AR-READ-02](https://agentreadychecklist.com/checklist/ar-read-02/) (redirect-hygiene, workaround); [AR-READ-07](https://agentreadychecklist.com/checklist/ar-read-07/) (llms-txt-exists, workaround); [AR-READ-09](https://agentreadychecklist.com/checklist/ar-read-09/) (markdown-link-alternate, workaround); [AR-ACT-01](https://agentreadychecklist.com/checklist/ar-act-01/) (oauth-support, workaround); [AR-ACT-03](https://agentreadychecklist.com/checklist/ar-act-03/) (mcp-server, workaround); [AR-ACT-04](https://agentreadychecklist.com/checklist/ar-act-04/) (mcp-server-card, workaround); [AR-ACT-05](https://agentreadychecklist.com/checklist/ar-act-05/) (mcp-app-registry, workaround); [AR-ACT-07](https://agentreadychecklist.com/checklist/ar-act-07/) (webmcp, workaround); [AR-ACT-08](https://agentreadychecklist.com/checklist/ar-act-08/) (x402-support, workaround); [AR-ACT-09](https://agentreadychecklist.com/checklist/ar-act-09/) (nlweb-ask, workaround); [CF-MARKDOWN-NEGOTIATION](https://agentreadychecklist.com/checklist/cf-markdown-negotiation/) (markdown-negotiation-vary, workaround); [CF-OAUTH-DISCOVERY](https://agentreadychecklist.com/checklist/cf-oauth-discovery/) (oauth-protected-resource, workaround); [VERCEL-NEGOTIATION-HEADERS](https://agentreadychecklist.com/checklist/vercel-negotiation-headers/) (markdown-negotiation-vary, workaround). Ora scores the site as it stands, so a row the platform cannot satisfy stays open until the workaround is in place.

Run it again with `--force` after a deploy, so the audit skips Ora's cache. [Gate deploys on it in CI](https://agentreadychecklist.com/guides/gate-deploys-on-agent-readiness-in-ci/), [why this site recommends Ora](https://agentreadychecklist.com/verify-with-ora/), [the crosswalk of rows and checks](https://agentreadychecklist.com/checklist/ora-checks/).

## Recipes, row by row

### [AR-FIND-01](https://agentreadychecklist.com/checklist/ar-find-01/): Do not block agentsrecipe

Create static/robots.txt: User-agent: \* Allow: / Sitemap: https://example.com/sitemap.xml Check the host or CDN bot rules separately; Docusaurus does not control the WAF.

Read 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)

### [AR-FIND-02](https://agentreadychecklist.com/checklist/ar-find-02/): Answers on one first-party pagerecipe

Publish each answer once, as a page on your own domain. Put the fact (price, limit, version) in the page text, give the page one stable address, and link it from the home page and from llms.txt. Keep the page current: a second, older copy elsewhere on the site is the usual way an agent cites the wrong figure.

Generic step from the AgentReady specification; not platform-specific. [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-FIND-03](https://agentreadychecklist.com/checklist/ar-find-03/): Sitemap listed in robots.txtrecipe

Keep preset-classic sitemap on (default). Configure in docusaurus.config.js presets: \['classic', { sitemap: { lastmod: 'date', changefreq: 'weekly', ignorePatterns: \['/tags/\*\*'\], filename: 'sitemap.xml' } }\]. Add the Sitemap: line to static/robots.txt.

Read 2026-11-04. [docusaurus.io/docs/api/plugins/@docusaurus/plugin-sitemap](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-sitemap)

### [AR-FIND-04](https://agentreadychecklist.com/checklist/ar-find-04/): AI Catalog at .well-knownrecipe

Add static/.well-known/ai-catalog.json; it is copied to /.well-known/ai-catalog.json. On GitHub Pages add an empty static/.nojekyll so dot and underscore paths are served. Add a headTags entry { tagName: 'link', attributes: { rel: 'ai-catalog', href: '/.well-known/ai-catalog.json' } }.

Read 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)

### [AR-READ-01](https://agentreadychecklist.com/checklist/ar-read-01/): Answer in the initial HTMLrecipe

Docusaurus prerenders every route to static HTML at build time (SSG). Keep answer text out of <BrowserOnly> and useEffect-only components; those render only in the browser.

Read 2026-11-04. [docusaurus.io/docs/advanced/ssg](https://docusaurus.io/docs/advanced/ssg)

### [AR-READ-02](https://agentreadychecklist.com/checklist/ar-read-02/): Real HTTP status codesworkaround

The build writes build/404.html. Use a host that serves it with status 404 (Netlify, Vercel, Cloudflare Pages, GitHub Pages do). 429 with Retry-After is set at the host or CDN, not in Docusaurus.

Read 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment)

### [AR-READ-03](https://agentreadychecklist.com/checklist/ar-read-03/): Home page with real linksrecipe

Put docs, product and pricing links in themeConfig.navbar.items and themeConfig.footer.links; they render as plain <a href> in the prerendered homepage.

Read 2026-11-04. [docusaurus.io/docs/api/themes/configuration](https://docusaurus.io/docs/api/themes/configuration)

### [AR-READ-04](https://agentreadychecklist.com/checklist/ar-read-04/): Docs that answer agent tasksrecipe

For each of your top five agent tasks, write a page that holds the steps as text, in order, with the exact names of the buttons, fields and settings. Steps that exist only in an image, a video or a script-built widget are not in the response a plain fetch receives. Fetch the page with curl and grep for the step.

Generic step from the AgentReady specification; not platform-specific. [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-READ-05](https://agentreadychecklist.com/checklist/ar-read-05/): Fenced, language-tagged coderecipe

Fence code with a language: \`\`\`js title="example.js". Add languages Prism lacks with themeConfig.prism.additionalLanguages: \['bash', 'json'\].

Read 2026-11-04. [docusaurus.io/docs/markdown-features/code-blocks](https://docusaurus.io/docs/markdown-features/code-blocks)

### [AR-READ-06](https://agentreadychecklist.com/checklist/ar-read-06/): Link the discovery filesrecipe

Add footer links to /llms.txt and /openapi.json in themeConfig.footer.links, and head links with headTags: \[{ tagName: 'link', attributes: { rel: 'alternate', type: 'text/markdown', href: '/llms.txt' } }\].

Read 2026-11-04. [docusaurus.io/docs/api/docusaurus-config](https://docusaurus.io/docs/api/docusaurus-config)

### [AR-READ-07](https://agentreadychecklist.com/checklist/ar-read-07/): Ship llms.txtworkaround

No generator in core. Write static/llms.txt (H1, blockquote summary, sections of described links) and regenerate it in CI, or install a community llms.txt plugin.

Read 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)

### [AR-READ-08](https://agentreadychecklist.com/checklist/ar-read-08/): JSON-LD on key pagesrecipe

Add JSON-LD with headTags in docusaurus.config.js: { tagName: 'script', attributes: { type: 'application/ld+json' }, innerHTML: JSON.stringify({ '@context': 'https://schema.org/', '@type': 'Organization', name: 'Example', url: 'https://example.com/' }) }. Per page, use <head><script type="application/ld+json"> in MDX.

Read 2026-11-04. [docusaurus.io/docs/seo](https://docusaurus.io/docs/seo)

### [AR-READ-09](https://agentreadychecklist.com/checklist/ar-read-09/): Advertise a markdown mirrorworkaround

No .md output per page. Copy source .md files into the build in a postbuild script and add <link rel="alternate" type="text/markdown"> per page through a swizzled DocItem head, or send a Link header from the host.

Read 2026-11-04. [docusaurus.io/docs/api/docusaurus-config](https://docusaurus.io/docs/api/docusaurus-config)

### [AR-READ-11](https://agentreadychecklist.com/checklist/ar-read-11/): Pricing as first-party HTMLrecipe

Write pricing as src/pages/pricing.md (or .mdx) with plans and limits in text and tables; it is prerendered like any page.

Read 2026-11-04. [docusaurus.io/docs/creating-pages](https://docusaurus.io/docs/creating-pages)

### [AR-ACT-01](https://agentreadychecklist.com/checklist/ar-act-01/): Auth an agent can finishworkaround

Docusaurus is a static site generator, so it has no authorization server or API keys of its own. Workaround: run the identity provider or authorization server on a subdomain or API domain you control, with self-serve keys and documented scopes, and publish its OAuth metadata there (the CF-OAUTH-DISCOVERY recipe, /platforms/docusaurus/#cf-oauth-discovery).

Derived from Docusaurus's documentation read on 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment) and [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-ACT-02](https://agentreadychecklist.com/checklist/ar-act-02/): OpenAPI contractrecipe

Place the contract at static/openapi.json and link it from the footer and llms.txt.

Read 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)

### [AR-ACT-03](https://agentreadychecklist.com/checklist/ar-act-03/): MCP over Streamable HTTPworkaround

Docusaurus is a static site generator and ships no MCP server. Workaround: run an MCP server elsewhere (for example a Cloudflare Worker at /mcp behind the same domain) and link it from the docs.

Read 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment)

### [AR-ACT-04](https://agentreadychecklist.com/checklist/ar-act-04/): MCP server cardworkaround

This platform builds no MCP server, so the card would describe a server you host elsewhere. Place the card at /.well-known/mcp/server-card.json the same way the AR-FIND-04 recipe places the AI Catalog (/platforms/docusaurus/#ar-find-04), and give it a serverInfo.name that matches your MCP server. Publish it only if you run an MCP server.

Generic step from the AgentReady specification; not platform-specific. [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-ACT-05](https://agentreadychecklist.com/checklist/ar-act-05/): MCP Apps viewworkaround

Docusaurus is a static site generator, and its deployment page covers building static files and no server. Not possible on this platform without outside help. Workaround: serve the ui:// resource from an MCP server you run on a subdomain or API domain you control (the AR-ACT-03 recipe, /platforms/docusaurus/#ar-act-03).

Derived from Docusaurus's documentation read on 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment) and [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-ACT-06](https://agentreadychecklist.com/checklist/ar-act-06/): SDKs and a CLIrecipe

Publish the SDK and the CLI from the product's own repository to npm or PyPI; the website platform is not involved. Then show the install command and a first call on a page of your own site so that agents reading the site find them. Verify with curl -s https://registry.npmjs.org/<cli-name>/latest.

Generic step from the AgentReady specification; not platform-specific. [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-ACT-07](https://agentreadychecklist.com/checklist/ar-act-07/): WebMCP toolsworkaround

Register tools from a client module: add clientModules: \[require.resolve('./src/webmcp.js')\] and in that file feature-detect document.modelContext (fall back to navigator.modelContext) before calling registerTool for search.

Read 2026-11-04. [docusaurus.io/docs/advanced/client](https://docusaurus.io/docs/advanced/client)

### [AR-ACT-08](https://agentreadychecklist.com/checklist/ar-act-08/): Agent paymentsworkaround

Docusaurus is a static site generator, and its deployment page covers building static files and no server. Not possible on this platform without outside help. Workaround: run the paid endpoint on a subdomain or API domain you control, returning HTTP 402 with a payment payload on the paid path only (x402 or MPP), or a checkout handler, and link it from the site. Put no CAPTCHA in front of a verified agent.

Derived from Docusaurus's documentation read on 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment) and [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-ACT-09](https://agentreadychecklist.com/checklist/ar-act-09/): NLWeb /ask endpointworkaround

Docusaurus is a static site generator, and its deployment page covers building static files and no server. The documentation read lists no built-in feature for this row. Workaround: run the /ask endpoint on a subdomain or API domain you control, returning schema.org-shaped JSON for the query parameter, and link it from the site. Mirror the same ask tool over MCP.

Derived from Docusaurus's documentation read on 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment) and [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [AR-ACT-10](https://agentreadychecklist.com/checklist/ar-act-10/): An MCP server or a CLIrecipe

A CLI meets AR-ACT-10 on any platform: publish it as described in the AR-ACT-06 recipe (/platforms/docusaurus/#ar-act-06). An MCP server also meets it; how Docusaurus hosts one is in the AR-ACT-03 recipe (/platforms/docusaurus/#ar-act-03). Do not ship an empty surface to tick the box.

Generic step from the AgentReady specification; not platform-specific. [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)

### [CF-CONTENT-SIGNALS](https://agentreadychecklist.com/checklist/cf-content-signals/): Content-Signal linerecipe

Add to static/robots.txt under User-agent: \* the line Content-Signal: ai-train=no, search=yes, ai-input=yes (pick your values).

Read 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)

### [CF-MARKDOWN-NEGOTIATION](https://agentreadychecklist.com/checklist/cf-markdown-negotiation/): Markdown by Acceptworkaround

Docusaurus serves HTML for Accept: text/markdown. Put the site on a Cloudflare zone and enable Markdown for Agents, which converts HTML at the edge and returns text/markdown.

Read 2026-11-04. [developers.cloudflare.com/fundamentals/reference/markdown-for-agents/](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/)

### [CF-PAY-PER-CRAWL](https://agentreadychecklist.com/checklist/cf-pay-per-crawl/): Pay per crawl, HTTP 402workaround

Pay per crawl is a feature of Cloudflare AI Crawl Control, set per Cloudflare zone and in closed beta on 2026-11-04, so Docusaurus does not set it, and a crawler is answered 402 only on a zone that has it. Not possible on this platform without outside help. Workaround: put the domain on a Cloudflare zone, where Docusaurus allows a proxy or custom DNS in front, and set the price there. Test with curl -A "GPTBot/1.0".

Derived from Cloudflare's pay per crawl documentation read on 2026-11-04. [developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/) and [developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/)

### [CF-OAUTH-DISCOVERY](https://agentreadychecklist.com/checklist/cf-oauth-discovery/): OAuth discovery filesworkaround

A static file works when the metadata is fixed: add static/.well-known/oauth-authorization-server and set Content-Type: application/json at the host, since the file has no extension. The authorization server itself must run elsewhere, because Docusaurus is a static site generator.

Derived from Docusaurus's documentation read on 2026-11-04. [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment) and [isitagentready.com/.well-known/agent-skills/oauth-discovery/SKILL.md](https://isitagentready.com/.well-known/agent-skills/oauth-discovery/SKILL.md)

### [CF-AGENT-SKILLS](https://agentreadychecklist.com/checklist/cf-agent-skills/): Agent Skills indexrecipe

Publish static/.well-known/agent-skills/index.json with $schema, and a skills array of {name, type, description, url, digest}; add static/.nojekyll on GitHub Pages.

Read 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)

### [VERCEL-NEGOTIATION-HEADERS](https://agentreadychecklist.com/checklist/vercel-negotiation-headers/): Markdown headersworkaround

With Cloudflare Markdown for Agents in front, markdown responses get Content-Type: text/markdown; charset=utf-8 and Vary includes Accept. On other hosts set Vary: Accept in the edge function that serves markdown.

Read 2026-11-04. [developers.cloudflare.com/fundamentals/reference/markdown-for-agents/](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/)

### [VERCEL-ROBOTS-EXCLUSIONS](https://agentreadychecklist.com/checklist/vercel-robots-exclusions/): Robots exclusionsrecipe

Open the robots.txt that Docusaurus serves for your site and read every Disallow; each one must have a reason you can state. How the file is produced here: No robots.txt generator. Files in static/ are copied to the build root, so static/robots.txt becomes /robots.txt.

Derived from Docusaurus's documentation read on 2026-11-04. [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets) and [vercel.com/kb/guide/make-your-site-readable-by-ai-agents](https://vercel.com/kb/guide/make-your-site-readable-by-ai-agents)

## Vendors on this platform

-   [Docusaurus](https://agentreadychecklist.com/vendors/docusaurus/)Docs tool, 4 of 11 checklist rows read met by default

## Sources

-   [ora.ai/api/checks, contract 1.38.0](https://ora.ai/api/checks?utm_source=agentreadychecklist.com&utm_medium=referral&utm_campaign=platform)read 2026-11-05
-   [registry.npmjs.org/ax, the ax README](https://registry.npmjs.org/ax)read 2026-11-05
-   [docusaurus.io/docs/static-assets](https://docusaurus.io/docs/static-assets)read 2026-11-04
-   [docusaurus.io/docs/api/plugins/@docusaurus/plugin-sitemap](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-sitemap)read 2026-11-04
-   [docusaurus.io/docs/seo](https://docusaurus.io/docs/seo)read 2026-11-04
-   [docusaurus.io/docs/deployment](https://docusaurus.io/docs/deployment)read 2026-11-04
-   [docusaurus.io/docs/api/plugins/@docusaurus/plugin-client-redirects](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-client-redirects)read 2026-11-04
-   [github.com/agentready-org/standard/blob/main/spec/spec.md](https://github.com/agentready-org/standard/blob/main/spec/spec.md)read 2026-11-04
-   [docusaurus.io/docs/advanced/ssg](https://docusaurus.io/docs/advanced/ssg)read 2026-11-04
-   [docusaurus.io/docs/api/themes/configuration](https://docusaurus.io/docs/api/themes/configuration)read 2026-11-04
-   [docusaurus.io/docs/markdown-features/code-blocks](https://docusaurus.io/docs/markdown-features/code-blocks)read 2026-11-04
-   [docusaurus.io/docs/api/docusaurus-config](https://docusaurus.io/docs/api/docusaurus-config)read 2026-11-04
-   [docusaurus.io/docs/creating-pages](https://docusaurus.io/docs/creating-pages)read 2026-11-04
-   [docusaurus.io/docs/advanced/client](https://docusaurus.io/docs/advanced/client)read 2026-11-04
-   [developers.cloudflare.com/fundamentals/reference/markdown-for-agents/](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/)read 2026-11-04
-   [developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/)read 2026-11-04
-   [isitagentready.com/.well-known/agent-skills/oauth-discovery/SKILL.md](https://isitagentready.com/.well-known/agent-skills/oauth-discovery/SKILL.md)read 2026-11-04
-   [vercel.com/kb/guide/make-your-site-readable-by-ai-agents](https://vercel.com/kb/guide/make-your-site-readable-by-ai-agents)read 2026-11-04

Edition

Data

2026-11-04

Reviewed

2026-11-05

Spec

AgentReady v2.0, 273d2d7

Crawl

13,071 rows, 2026-11-04

Ora

132 checks, contract 1.38.0, 2026-11-05

Verify with Ora

The scanner this site recommends for the whole checklist. 132 checks, a score out of 100, no account.

`npx ax@0.10 audit <url> --min-score <n>`

[Why Ora, and its limits](https://agentreadychecklist.com/verify-with-ora/)

Method

-   [How rows, commands and rates are made](https://agentreadychecklist.com/method/)
-   [How an Ora check is matched to a row](https://agentreadychecklist.com/checklist/ora-checks/)
-   [Pass rates by rank band](https://agentreadychecklist.com/data/by-rank/)

Sources and read dates sit at the foot of the page.

Last reviewed 2026-11-05. AgentReady v2.0, read 2026-11-04.
