Learn
llms.txt vs llms-full.txt vs AGENTS.md vs SKILL.md vs MCP server card: which file does which job
llms.txt lists pages for agents. llms-full.txt, AGENTS.md, SKILL.md, a server card and robots.txt do other jobs. Who reads each, where it lives, what we check.
7 min read 1408 words
- llms.txt
- AGENTS.md
- agent skills
- MCP
- robots.txt
These files have different readers. robots.txt is read by crawlers, and llms.txt and llms-full.txt by agents that read a site's content. AGENTS.md is read by coding agents inside a repository, and SKILL.md by agents that load a procedure for a task. An MCP server card is read by a client before it connects to a server.
AgenticWebScore checks 5 of the 6 in some form. It dropped AGENTS.md in rubric v0.8.
Which file does which job?
| File | Job | Read by | Lives at | Scanner check |
|---|---|---|---|---|
robots.txt |
Says which URLs a crawler may fetch | Crawlers that follow RFC 9309 | /robots.txt, top level of the host |
robots.txt: scored, essential, holds level 2 |
llms.txt |
Lists the pages an agent should read | Agents and documentation tools that choose to. Google Search does not | /llms.txt or a subpath |
llms-txt: scored convention, holds no level |
llms-full.txt |
Holds the text of those pages in one file | Documentation tools and agents that choose to | Beside llms.txt, by convention |
llms-full: scored convention, asked once llms.txt is in use |
AGENTS.md |
Gives a coding agent a project's instructions | Coding agents working in the repository | Repository root, and nested directories | None. Removed in v0.8 |
SKILL.md |
Packages the instructions for one task | Agent runtimes that support skills | A skill folder. On a site, listed in /.well-known/agent-skills/index.json |
agent-skills: unscored. Reads the index, not the skill |
| MCP server card | States where a remote server is and which versions it speaks | MCP clients and registries, before they connect | Any unreserved URI, listed in an AI catalog | mcp-card: unscored. mcp-server is scored and gates levels 4 and 5 |
This site serves each of these paths, and its skills index lists 59 skill-md artifacts. The commands below print the status and type of each path as of 31 October 2026.
SITE=https://agenticwebscore.com
for p in /robots.txt /llms.txt /llms-full.txt /AGENTS.md /.well-known/agent-skills/index.json /.well-known/mcp/server-card.json; do
printf '%-40s' "$p"; curl -sS -o /dev/null -w '%{http_code} %{content_type}\n' "$SITE$p"
done
/robots.txt 200 text/plain; charset=utf-8
/llms.txt 200 text/plain; charset=utf-8
/llms-full.txt 200 text/plain; charset=utf-8
/AGENTS.md 200 text/markdown; charset=utf-8
/.well-known/agent-skills/index.json 200 application/json; charset=utf-8
/.well-known/mcp/server-card.json 200 application/json; charset=utf-8
What is the difference between llms.txt and llms-full.txt?
llms.txt is the index. The llmstxt.org proposal defines it and does not mention llms-full.txt: I searched the page for the name and found no match.
Mintlify, a documentation host, documents both. It describes llms.txt as a markdown map of links. It describes llms-full.txt as the whole documentation site in one file, with each page's title, source URL, description and content.
Real files differ by orders of magnitude. On 31 October 2026, Resend's /llms-full.txt was 9.7 KB. Vercel's /docs/llms-full.txt was 11.8 MB, Anthropic's was 49.3 MB and Cloudflare Developers' was 69.7 MB. Files of tens of megabytes suit a tool that indexes or searches them, not an agent that reads the file whole.
The llms-full check is asked once /llms.txt is in use. Present needs a text file of at least 150 words that is not mostly links. GitHub's /llms-full.txt is a byte-for-byte copy of its /llms.txt, so it reads as a list of links.
The check requests /llms-full.txt at the root only. Vercel keeps its file under /docs/, so the check does not read it, and the root path answered 404 on 31 October 2026.
For the formats and examples, see what llms.txt is and 6 real llms.txt files.
What is the difference between llms.txt and AGENTS.md?
AGENTS.md calls itself "a README for agents". It holds project instructions for coding agents, such as how to build and test. It goes at the root of the repository, nested files may sit in subprojects, and the nearest one wins. It has no required fields.
The Agentic AI Foundation, under the Linux Foundation, stewards the format. Its page lists coding agents such as Codex, Cursor and Gemini CLI.
So llms.txt is for the agent that reads your site, and AGENTS.md is for the agent that changes your code. They overlap in practice. Stripe's llms.txt carries a section of instructions to agents, and Vercel's has one on how agents should use its platform.
Why did the scanner drop AGENTS.md?
Rubric v0.8 removed the agents-md check on 19 October 2026, with 8 other checks. The methodology page gives the reason: AGENTS.md is a file for coding agents at a repository root, and no reader requests it from a website. The format's own page says to create it at the root of the repository. It says nothing about serving it over HTTP.
This site still serves /AGENTS.md, as a brief on how an agent uses the scanner. That is our choice, and no check reads it.
What is the difference between llms.txt and SKILL.md?
A skill is a folder with a SKILL.md file. The Agent Skills specification gives the file YAML frontmatter and then markdown instructions. The frontmatter needs a name of up to 64 characters, in lowercase letters, digits and hyphens. It also needs a description of up to 1,024 characters.
Agents load the name and description at startup and read the rest only when a task matches. Anthropic developed the format and released it as an open standard.
llms.txt tells an agent what to read, and a skill tells it how to do something. To publish skills on a site, Cloudflare's draft RFC, version 0.2.0 and updated on 12 March 2026, puts an index at /.well-known/agent-skills/index.json. Each entry has a name, a type of skill-md or archive, a description, a url and a sha256 digest. The draft has already renamed its path once, from /.well-known/skills/.
The agent-skills check is unscored. It reads the index at 3 paths, the current one and 2 older ones. It requests up to 10 same-origin artifacts and compares each with its digest, but it does not read a skill's frontmatter. Resend's llms.txt links its skills index and 5 SKILL.md files, so the 2 files work together.
What is the difference between llms.txt and an MCP server card?
MCP is a protocol, not a file. A server speaks JSON-RPC 2.0 and offers resources, prompts and tools to a client, according to the specification overview. A text file cannot give an agent a callable tool. A server can.
A server card describes a remote server before a client connects. SEP-2127, an extension with Final status, defines it as static metadata: the server's identity, its remote endpoints and the protocol versions it supports. It leaves out tools, resources and prompts on purpose, because a server's lists can vary by user and session. A card can sit at any unreserved URI, and an AI catalog at /.well-known/ai-catalog.json can list it.
The mcp-server check is scored and essential. It opens one session, lists the tools and calls none, and it is a gate for levels 4 and 5. The mcp-card check is unscored. Testing an MCP server with curl shows the handshake.
The files point at each other in practice. Anthropic's llms.txt names its docs MCP server and the server's card. Resend's links its remote MCP server and an MCP discovery file.
What is the difference between llms.txt and robots.txt?
RFC 9309 puts /robots.txt at the top level of the host. It says "These rules are not a form of access authorization." A 4xx answer makes the file unavailable, and a crawler may then fetch anything. A 5xx answer makes it unreachable, and a crawler must then assume everything is disallowed.
llms.txt allows and denies nothing, so adding it changes nothing about what a crawler may fetch. Google's guide to its generative AI features, updated on 10 July 2026, says Google Search does not use llms.txt files. Rules for named AI crawlers belong in robots.txt: see blocking AI crawlers and Content-Signal.
Which of these files should your site publish?
robots.txt: yes. It is the one web standard of the 6, an essential check, and a gate for level 2.llms.txt: optional and cheap. It is a scored convention of weight 1 with no level, and Google Search ignores it.llms-full.txt: only for a bounded body of documentation, and only beside anllms.txtthat links it.- A skills index: only if you have procedures an agent should follow. The draft path has moved once.
- A server card: only if you run a remote MCP server.
AGENTS.md: put it in your repository, where its readers look.
To check the 2 llms files on your domain, use the llms.txt checker. To see how the rest read, scan your site.