---
title: "llms.txt vs AI Catalog vs ARD | Agent Ready Checklist"
description: "llms.txt vs AI Catalog vs ARD in one table. Path, format, who defines it, the AgentReady level and the Ora checks for each file."
canonical: https://agentreadychecklist.com/guides/llms-txt-vs-ai-catalog-vs-ard
site: "Agent Ready Checklist"
last_updated: 2026-11-05
date: 2026-11-05
section: "Guides"
---

# llms.txt vs AI Catalog vs ARD | Agent Ready Checklist

> llms.txt vs AI Catalog vs ARD in one table. Path, format, who defines it, the AgentReady level and the Ora checks for each file.

Source: https://agentreadychecklist.com/guides/llms-txt-vs-ai-catalog-vs-ard
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).

# llms.txt vs AI Catalog vs ARD in one table

Three files, three jobs. llms.txt is a markdown index for readers, an AI Catalog is a JSON list of every agent-facing resource at /.well-known/ai-catalog.json, and ARD is the registry layer with its own file at /.well-known/ard.json. AgentReady asks for llms.txt as a SHOULD and the catalog as a MAY.

## The table

| Property | llms.txt | AI Catalog | ARD |
| --- | --- | --- | --- |
| Path | /llms.txt. Ora also reads /.well-known/llms.txt. | /.well-known/ai-catalog.json | /.well-known/ard.json, or a catalog the home page points to with a link rel="ard" tag or an HTTP Link header with rel="ard". |
| Format | Markdown: an H1 name, a blockquote summary, H2 sections of links with a line each. | JSON with specVersion "1.0" and an entries array: identifier, displayName, a media type and exactly one of url or data. | The same catalog model; Ora reads ARD v0.91 and says the same entries can sit in both files. |
| What it lists | The key pages a reader should start from. | Every agent-facing resource the site ships: MCP servers, APIs, agents and skills. | The same resources, as the registry layer that agents resolving your domain read first. |
| Defined by | llmstxt.org. | The AI Catalog Standard at ai-catalog.io, from the Agent-Card working group. | Agentic Resource Discovery, v0.91 in Ora's catalogue of 2026-11-05. |
| AgentReady row | AR-READ-07, SHOULD: every site with more than a handful of pages. | AR-FIND-04, MAY: sites that ship more than one agent-facing resource. The row names ARD as the registry layer. | No row of its own; the row for the catalog is the nearest. |
| Cloudflare check | llmsTxt, opt-in. | ard, at /.well-known/ai-catalog.json: Content-Type application/json, HTTP 200 and Access-Control-Allow-Origin *. | Not listed by the checklist. |
| Ora checks, points | llms-txt-exists 1, llms-txt-formatting 2, llms-txt-links-resolve 2, modular-llms-txt 1 (bonus). | ai-catalog-published 1 (bonus), ard-entries-valid 2 (bonus), ard-trust-manifest 2 (bonus). | ard-catalog 1; Ora weights it at 1 point while adoption is early, down from 3, and still counts the older ai-catalog.json path. |
| Evidence it matters | 14.3% of reachable crawled sites serve one; the row cites its evidence on its page. | Marked not measured in the AgentReady studies: no study shows agents reading ai-catalog.json yet. | Not measured in the crawl. |

## Which to ship first

Ship llms.txt first. It is a SHOULD for any site with more than a handful of pages, it earns 1 to 2 points on each of three Ora checks, and the rows [AR-READ-07](https://agentreadychecklist.com/checklist/ar-read-07/) and [the guide to shipping it](https://agentreadychecklist.com/guides/ship-llms-txt-and-link-it/) give the file and the link. Add the catalog when the site ships more than one agent-facing resource, which is the condition on [AR-FIND-04](https://agentreadychecklist.com/checklist/ar-find-04/). A site with a single agent-facing resource falls outside the row's condition.

The two catalog paths overlap. Ora's catalogue says the entries can be the same at both, and that the AI Catalog Standard's document also needs "specVersion": "1.0" at the top level. If you serve one file, serve it at the path your scanners read: AgentReady and Cloudflare name /.well-known/ai-catalog.json, and Ora's ARD check reads /.well-known/ard.json first and still counts the older path with a nudge to move.

## An example of each

### llms.txt

```markdown
# Acme
> Acme ships a payments API.
## Docs
- [Quickstart](https://example.com/docs/quickstart): first charge
```

### AI Catalog

```json
{"specVersion":"1.0","entries":[{"identifier":"urn:air:example.com:server:docs","displayName":"Docs MCP","type":"application/mcp-server-card+json","url":"https://example.com/.well-known/mcp/server-card.json"}]}
```

The catalog example is from Cloudflare's published skill for the check. ARD has no separate example here, because the only ARD file format this site has read is the one Ora's check descriptions give, and they point to the same entries. [Glossary: AI Catalog](https://agentreadychecklist.com/glossary/ai-catalog/), [Glossary: llms.txt](https://agentreadychecklist.com/glossary/llms-txt/).

## Check it

```bash
curl -s -o /dev/null -w "%{http_code} %{content_type}\n" https://example.com/llms.txt
curl -s -o /dev/null -w "%{http_code} %{content_type}\n" https://example.com/.well-known/ai-catalog.json
curl -s -o /dev/null -w "%{http_code} %{content_type}\n" https://example.com/.well-known/ard.json
```

Each should print 200 and a non-HTML type. A catch-all route that returns the home page with a 200 is the usual failure, and the kit's ai-catalog check reads the content as well as the status.

## Sources

-   [llmstxt.org](https://llmstxt.org/)read 2026-11-04
-   [ai-catalog.io, as cited by Ora's check](https://ai-catalog.io/)read 2026-11-05
-   [ora.ai/api/checks, contract 1.38.0](https://ora.ai/api/checks?utm_source=agentreadychecklist.com&utm_medium=referral&utm_campaign=guide)read 2026-11-05
-   [isitagentready.com/.well-known/agent-skills/ard/SKILL.md](https://isitagentready.com/.well-known/agent-skills/ard/SKILL.md)read 2026-11-04
-   [github.com/agentready-org/standard/blob/main/CHANGELOG.md](https://github.com/agentready-org/standard/blob/main/CHANGELOG.md)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

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.
