Twilio scores 78/100 (Grade C), passing 10 of 22 checks (45%). The documentation is broadly accessible to AI agents but has 11 areas that could be improved to better serve automated tooling.
# Agent Score Fix Report — Twilio URL: https://docs.sendgrid.com Score: 78/100 (Grade C) I need help improving the AI-readiness of the documentation at https://docs.sendgrid.com. Agent Score found 3 failing checks and 8 warnings. ## Failing Checks (3) - [content-discoverability] Llms Txt Size: llms.txt is 2,192,437 characters (exceeds 100,000 threshold; will be truncated by most agents) - [url-stability] Http Status Codes: 8 of 10 sampled pages return 200 for non-existent URLs (soft 404) - [observability] Markdown Content Parity: 2 of 10 pages have substantive content differences between markdown and HTML (avg 8% missing) ## Warnings (8) - [content-discoverability] Llms Txt Exists: llms.txt found but only reachable via cross-host redirect (agents may not follow it) - [content-discoverability] Llms Txt Valid: llms.txt contains parseable links but doesn't fully follow the proposed structure: https://www.twilio.com/llms.txt: No H1 heading found, No blockquote summary found - [content-discoverability] Llms Txt Directive: llms.txt directive found in 7 of 10 sampled pages, but buried deep in the page (past 50%) - [page-size] Page Size Markdown: 1 of 10 pages between 50K–100K chars (max 88K) - [page-size] Page Size Html: 1 of 10 sampled pages convert to 50K–100K chars (max 88K, 0% boilerplate) - [page-size] Content Start Position: 1 of 10 sampled pages have content starting at 10–50% (worst 35%) - [observability] Llms Txt Freshness: llms.txt covers 7119/8052 sitemap doc pages (88%); 933 missing; 1400 llms.txt links not in sitemap (may indicate stale links or incomplete sitemap) - [observability] Cache Header Hygiene: 9 of 11 endpoints have moderate cache lifetimes (1–24 hours) ## Fix Instructions For each issue above, please: 1. Analyze the documentation site at https://docs.sendgrid.com 2. Implement the specific fix 3. Verify the fix would cause the check to pass ### Common fixes: - **No llms.txt**: Create /llms.txt following https://llmstxt.org — list all doc pages in markdown format - **No .md URL support**: Configure your docs platform to serve pages at equivalent .md URLs (e.g. /docs/quickstart.md) - **No content negotiation**: Return markdown when request includes Accept: text/markdown header - **Large page size**: Reduce nav boilerplate, inline scripts, and repetitive markup - **No sitemap**: Generate /sitemap.xml listing all documentation URLs - **Auth walls**: Ensure docs pages return 200 without requiring login cookies or tokens - **No Last-Modified header**: Configure your server/CDN to include Last-Modified response headers - **Tab content hidden**: Ensure tabbed content is rendered in the HTML (not JS-only) so agents can read all variants ## Run afdocs Locally for More Detail To get deeper visibility into what's failing, run afdocs against your docs: npx afdocs https://docs.sendgrid.com --fixes --verbose - **--fixes**: Adds "Fix:" lines to the output for each warn/fail check with actionable remediation steps - **-v, --verbose**: Shows per-page details (specific URLs, character counts, error codes) for checks with issues — useful for per-URL visibility into what's failing
CHECK RESULTS
How your docs scored
markdown-content-parity2 of 10 pages have substantive content differences between markdown and HTML (avg 8% missing)
llms-txt-freshnessllms.txt covers 7119/8052 sitemap doc pages (88%); 933 missing; 1400 llms.txt links not in sitemap (may indicate stale links or incomplete sitemap)
cache-header-hygiene9 of 11 endpoints have moderate cache lifetimes (1–24 hours)
http-status-codes8 of 10 sampled pages return 200 for non-existent URLs (soft 404)
redirect-behaviorNo redirects detected across 10 sampled pages
auth-gate-detectionAll 10 sampled pages are publicly accessible
auth-alternative-accessAll docs pages are publicly accessible; no alternative access paths needed
llms-txt-sizellms.txt is 2,192,437 characters (exceeds 100,000 threshold; will be truncated by most agents)
llms-txt-existsllms.txt found but only reachable via cross-host redirect (agents may not follow it)
llms-txt-validllms.txt contains parseable links but doesn't fully follow the proposed structure: https://www.twilio.com/llms.txt: No H1 heading found, No blockquote summary found
llms-txt-directivellms.txt directive found in 7 of 10 sampled pages, but buried deep in the page (past 50%)
llms-txt-links-resolveAll 10 same-origin sampled links resolve (7120 total links)
llms-txt-links-markdown10/10 same-origin sampled links point to markdown content (100%)
page-size-markdown1 of 10 pages between 50K–100K chars (max 88K)
page-size-html1 of 10 sampled pages convert to 50K–100K chars (max 88K, 0% boilerplate)
content-start-position1 of 10 sampled pages have content starting at 10–50% (worst 35%)
rendering-strategyAll 10 sampled pages contain server-rendered content
markdown-url-support10/10 sampled pages support .md URLs (100%)
content-negotiation10/10 sampled pages support content negotiation (100%)
tabbed-content-serializationNo tabbed content detected across 10 sampled pages
section-header-qualityNo tabbed content found; header quality check not applicable
markdown-code-fence-validityAll 156 code fences properly closed across 11 pages