---
title: "Agent readability report: atarcms.com — 86/100"
description: "Agent readability score for atarcms.com: Vercel 86/100, llmstxt 100/100. Full check results and how to fix each finding."
last_updated: 2026-10-23
canonical_url: https://agent-ready.dev/scan/UjZ735KLTG
---

# Agent readability report: atarcms.com

> atarcms.com scored 86/100 on the [Vercel Agent Readability Spec](https://vercel.com/kb/guide/agent-readability-spec), measured by [Agent Ready](https://agent-ready.dev). This is the machine-readable twin of the interactive report at <https://agent-ready.dev/scan/UjZ735KLTG>.

## Scores

- Agent-readability score (vs the Vercel Agent Readability Spec): **86/100** (good)
- llms.txt score: **100/100**
- Accessibility sub-score: 100/100
- Better than 89% of 2,620 sites scanned
- Pages checked: 18
- Scanned: 2026-10-23

| Check group | Passed | Warned | Failed | Not scored |
|---|---|---|---|---|
| Site-wide checks | 13 | 0 | 2 | 0 |
| Page checks | 20 | 2 | 3 | 0 |
| llms.txt checks | 10 | 0 | 0 | 0 |
| Protocol discovery checks | 1 | 0 | 0 | 0 |
| Accessibility checks | 17 | 0 | 0 | 6 |

A check's "how to fix" line is specific to what the scanner observed on this site. "Not scored" results were excluded from the score — either the page is client-rendered so the static HTML couldn't be graded, or the check's subject doesn't exist on this page.

## What to fix first

- **FAIL** `S12` AGENTS.md exists (Site-wide checks) — No skill file found at any known path
  - How to fix: Create an AGENTS.md file at one of: /AGENTS.md, /agents.md, /.well-known/agents.md, /docs/AGENTS.md, /CLAUDE.md, /.cursor/rules, or /.cursorrules. This file gives coding agents context about how to use your product.
- **FAIL** `S13` AGENTS.md has required sections (Site-wide checks) — Skill file not found
  - How to fix: First ensure a skill file exists (check S12).
- **FAIL** `P13` Text-to-HTML ratio (Page checks) — 8.4% text content (minimum 10%, recommended >15%)
  - How to fix: Your page is mostly HTML/CSS/JS with very little readable text. AI agents struggle to extract useful content from pages dominated by framework boilerplate. Add more text content or reduce unnecessary markup.
- **FAIL** `P20` Sitemap section in markdown (Page checks) — No ## Sitemap section found in markdown
  - How to fix: Add a sitemap section to your markdown pages: ## Sitemap See the full [sitemap](/sitemap.md) for all pages.
- **FAIL** `P21` Code block language tags (Page checks) — None of 1 code blocks have language tags
  - How to fix: Add language classes to all code blocks. In HTML: <pre><code class="language-typescript">. In markdown: specify the language after the opening fence (```typescript).
- **WARN** `P11` JSON-LD has required fields (Page checks) — Missing fields: BreadcrumbList
  - How to fix: Add the following to your primary JSON-LD entity (WebPage): BreadcrumbList. These fields help AI agents understand the page's identity, freshness, and position in your site hierarchy.
- **WARN** `P14` Glossary link (Page checks) — No link to a glossary or terminology page found
  - How to fix: Add a link to a glossary or terminology page. This helps AI agents resolve ambiguous terms in your content. Use paths like /glossary, /terminology, or /definitions.

## Full results

### Site-wide checks

- **PASS** `S1` llms.txt exists — Found at https://atarcms.com/llms.txt
- **PASS** `S2` llms.txt Content-Type — Served as text/plain
- **PASS** `S3` llms.txt not empty — File has 1743 characters of content
- **PASS** `S4` llms.txt URL format — 18 URLs found, none use .html extensions
- **PASS** `S5` robots.txt — AI bots allowed — No AI bots are blocked
- **PASS** `S6` robots.txt — /llms.txt not blocked — /llms.txt is not blocked
- **PASS** `S7` robots.txt exists — robots.txt found
- **PASS** `S8` sitemap.xml valid — Valid sitemap with 18 URLs
- **PASS** `S9` sitemap.xml has lastmod — All 18 entries have lastmod dates
- **PASS** `S10` sitemap.md exists — Found at https://atarcms.com/sitemap.md
- **PASS** `S11` sitemap.md has headings + links — Contains structured headings and links
- **FAIL** `S12` AGENTS.md exists — No skill file found at any known path
  - How to fix: Create an AGENTS.md file at one of: /AGENTS.md, /agents.md, /.well-known/agents.md, /docs/AGENTS.md, /CLAUDE.md, /.cursor/rules, or /.cursorrules. This file gives coding agents context about how to use your product.
- **FAIL** `S13` AGENTS.md has required sections — Skill file not found
  - How to fix: First ensure a skill file exists (check S12).
- **PASS** `S14` HTTPS — Site is served over HTTPS
- **PASS** `S15` Root OpenAPI spec — Not an API-first site (check not applicable)

### Page checks

Collapsed across 18 scanned pages — each check shows its worst result on any page.

- **PASS** `P1` HTTP 200 — Returns HTTP 200
- **PASS** `P2` Redirect chain — No redirects
- **PASS** `P3` Content-Type header — Content-Type includes text/html
- **PASS** `P4` x-robots-tag — x-robots-tag does not contain restrictive values
- **PASS** `P5` Canonical link — Canonical URL: https://atarcms.com/
- **PASS** `P6` Meta description — Description present (189 chars)
- **PASS** `P7` og:title — og:title: "AtarCMS — a small CMS that AI agents can build, run and read"
- **PASS** `P8` og:description — og:description present
- **PASS** `P9` HTML lang attribute — lang="en"
- **PASS** `P10` JSON-LD present — 1 JSON-LD block found
- **WARN** `P11` JSON-LD has required fields — Missing fields: BreadcrumbList
  - How to fix: Add the following to your primary JSON-LD entity (WebPage): BreadcrumbList. These fields help AI agents understand the page's identity, freshness, and position in your site hierarchy.
- **PASS** `P12` Section headings — 18 headings (h1-h3) found
- **FAIL** `P13` Text-to-HTML ratio — 8.4% text content (minimum 10%, recommended >15%)
  - How to fix: Your page is mostly HTML/CSS/JS with very little readable text. AI agents struggle to extract useful content from pages dominated by framework boilerplate. Add more text content or reduce unnecessary markup.
- **WARN** `P14` Glossary link — No link to a glossary or terminology page found
  - How to fix: Add a link to a glossary or terminology page. This helps AI agents resolve ambiguous terms in your content. Use paths like /glossary, /terminology, or /definitions.
- **PASS** `P15` Markdown mirror exists — Markdown version of this page exists
- **PASS** `P16` Markdown frontmatter — Frontmatter includes title, description, and last_updated
- **PASS** `P17` Alternate link (markdown) — Alternate markdown link: /index.md
- **PASS** `P18` Link header in markdown — Markdown endpoint returns Link header with rel="canonical"
- **PASS** `P19` Content negotiation — Accept: text/markdown returns markdown content
- **FAIL** `P20` Sitemap section in markdown — No ## Sitemap section found in markdown
  - How to fix: Add a sitemap section to your markdown pages: ## Sitemap See the full [sitemap](/sitemap.md) for all pages.
- **FAIL** `P21` Code block language tags — None of 1 code blocks have language tags
  - How to fix: Add language classes to all code blocks. In HTML: <pre><code class="language-typescript">. In markdown: specify the language after the opening fence (```typescript).
- **PASS** `P22` API schema link — Not an API page (check not applicable)
- **PASS** `P23` JS rendering dependency — Static HTML contains 4710 characters of rendered text
- **PASS** `P24` llms.txt discovery link — describedby link to llms.txt (HTTP Link header): /llms.txt
- **PASS** `P25` AI snippet directives — max-snippet:-1 and max-image-preview:large are set — full text and large images are eligible for AI Overviews

### llms.txt checks

- **PASS** `L1` File accessible — llms.txt returns HTTP 200
- **PASS** `L2` H1 present — H1: "AtarCMS"
- **PASS** `L3` Valid markdown — llms.txt is valid, parseable markdown
- **PASS** `L4` Blockquote summary — Blockquote summary present below H1
- **PASS** `L5` H2 file-list sections — 6 H2 sections with links
- **PASS** `L6` Link format correct — All 18 links use correct format
- **PASS** `L7` Links are accessible — All 5 sampled links are accessible
- **PASS** `L8` Optional section used correctly — No ## Optional section present (not required)
- **PASS** `L9` Content-Type: text/plain — Served as text/plain
- **PASS** `L10` llms-full.txt available — Found at https://atarcms.com/llms-full.txt

### Protocol discovery checks

Run because this site publishes agentic-protocol discovery endpoints. Informational — these don't contribute to the score above.

- **PASS** `C16` Content parity (no cloaking) — No cloaking — AI crawlers and the scanner receive equivalent content (4044 vs 4044 chars).

### Accessibility checks

WCAG signals over the homepage DOM, scored into the separate accessibility sub-score.

- **PASS** `A1` Images have text alternatives — All 10 images carry a text alternative.
- **PASS** `A2` Form controls have labels — All 2 form controls have an accessible label.
- **PASS** `A3` Controls have accessible names — All 69 links/buttons expose an accessible name.
- **PASS** `A4` Media declares explicit dimensions — All 10 media elements declare explicit dimensions.
- **PASS** `A5` ARIA name references resolve — All label/aria-labelledby references resolve and ids are unique.
- **NOT SCORED** `A6` Iframes have an accessible name — No visible iframes on the page.
- **PASS** `A7` Heading hierarchy is well-formed — Exactly one h1 and no skipped heading levels.
- **PASS** `A8` No positive tabindex — No positive tabindex values — focus order follows the DOM.
- **PASS** `A9` Pinch-zoom is not disabled — The viewport meta does not disable zoom.
- **PASS** `A10` Page has a title — Page title: "AtarCMS — a small CMS that AI agents can build, run and read"
- **NOT SCORED** `A11` Accessible name contains the visible label — No controls override their visible text with an aria-label.
- **PASS** `A12` Content is reachable past the chrome — One main landmark marks where the content begins.
- **PASS** `A13` Language tag is valid — <html lang="en"> is a well-formed language tag.
- **PASS** `A14` Hidden elements are not focusable — No focusable elements are hidden from assistive technology.
- **PASS** `A15` Interactive controls are not nested — No interactive control contains another.
- **PASS** `A16` Headings are not empty — All 18 headings carry text.
- **PASS** `A17` No timed meta refresh — No meta refresh on the page.
- **NOT SCORED** `A18` Autocomplete tokens are valid — No autocomplete attributes to validate.
- **NOT SCORED** `A19` Tables declare their headers — No data tables on the page.
- **NOT SCORED** `A20` SVG images have a text alternative — No SVGs are exposed as images.
- **NOT SCORED** `A21` Media declares a captions track — No audio or video elements on the page.
- **PASS** `A22` List structure is well-formed — Lists contain only list items, and every item sits in a list.
- **PASS** `A23` ARIA roles and attributes are valid — All ARIA roles and attributes are valid.

## Fix it with Agent Ready's tools

Generators (produce a valid file to publish):

- [llms.txt generator](https://agent-ready.dev/llms-txt-generator)
- [AI robots.txt generator](https://agent-ready.dev/ai-robots-txt-generator)
- [agents.json generator](https://agent-ready.dev/agents-json-generator)
- [agent-permissions.json generator](https://agent-ready.dev/agent-permissions-generator)
- [API catalog generator (RFC 9727)](https://agent-ready.dev/api-catalog-generator)
- [A2A Agent Card generator](https://agent-ready.dev/agent-card-generator)

Guides:

- [How to make your site AI-agent friendly](https://agent-ready.dev/how-to-make-your-site-ai-agent-friendly)
- [How to write an effective AGENTS.md](https://agent-ready.dev/how-to-write-an-effective-agents-md)
- [How to publish an MCP server card](https://agent-ready.dev/how-to-publish-an-mcp-server-card)
- [Common agent-readability mistakes](https://agent-ready.dev/common-agent-readability-mistakes)
- [Scoring methodology — every check, explained](https://agent-ready.dev/methodology)

---

Run a scan of your own site: <https://agent-ready.dev> · [REST API](https://agent-ready.dev/docs/api) · [MCP server](https://agent-ready.dev/mcp)

## Sitemap

See the full [sitemap](https://agent-ready.dev/sitemap.md) for all pages on agent-ready.dev.
