Viam

Last scanned docs.viam.comCustom platform15 pages tested

AI agents can find, read and use these docs well. Viam scores 91 out of 100 (grade A), passing 17 of 27 checks. 7 still need work. 3 could not be verified.

Fix it with Documentation.AI

Get this report by email

We send the full report to your inbox. Nothing on this page needs an email.

Use your work email. We only send what you asked for, and every email has an unsubscribe link.

Developer docs

Kind of site

17/27

Checks passed

1

Partly passed

6

Failed

Access

Content discoverability6 passed1 partly
  • Pages point agents to llms.txt

    llms.txt directive found in HTML of 14 of 15 sampled pages, but buried deep in the page (past 50%)

    An llms.txt directive was found in the HTML of some pages but is missing from others, or is buried deep in the page. Ensure the directive appears near the top of every documentation page.

    Check your fix: curl -s https://docs.viam.com/build-apps/overview/ | grep -n llms.txt finds the link near the top of the HTML.

  • llms.txt exists

    llms.txt found at https://docs.viam.com/llms.txt

  • llms.txt follows the standard structure

    llms.txt follows the proposed structure (H1, blockquote, heading-delimited link sections)

  • llms.txt fits in an agent's context

    llms.txt is 5,594 characters (under 50,000 threshold)

  • llms.txt links work

    All 15 same-origin sampled links resolve (17 total links)

  • llms.txt links point to Markdown

    14/15 same-origin sampled links point to markdown content (93%)

  • Markdown pages point agents to llms.txt

    llms.txt directive found in markdown of all 14 sampled pages, near the top of content; 1 had no markdown version

Markdown availability2 passed
  • Pages are available as Markdown

    14/14 sampled pages support .md URLs (100%)

  • Server returns Markdown when asked

    14/14 sampled pages support content negotiation (100%)

Page size and truncation1 passed3 failed
  • Markdown pages fit in context

    2 of 14 pages exceed 100K chars (max 238K)

    2 of 14 markdown pages exceed 100K characters and will be truncated by agents. Break these into smaller pages or restructure serialized tabbed content.

  • HTML pages fit in context

    2 of 15 sampled pages convert to over 100K chars (max 515K HTML → 263K markdown (43% boilerplate))

    2 of 15 pages convert to over 100K characters of markdown. Break large pages into smaller units, reduce navigation boilerplate, or provide markdown versions that bypass the HTML conversion overhead.

  • Content starts near the top

    1 of 15 sampled pages have content starting past 50% (worst 100%)

    1 of 15 pages have content starting past 50% of the converted output. Agents may never see the documentation content. Reduce navigation, breadcrumb, and sidebar markup that precedes the content area.

  • Content is in the HTML without JavaScript

    All 15 sampled pages contain server-rendered content

Content structure2 passed1 failed
  • Tabs don't bloat the page

    100 tab group(s) found; worst page serializes to 202K chars (over 100K)

    Tabbed content on 1 pages serializes to over 100K characters. Agents see only the first few tab variants; content in later tabs is truncated. Break variants into separate pages.

  • Headings inside tabs name their variant

    2 page(s) with tab headers checked; headers include variant context

  • Code blocks are well-formed

    All 505 code fences properly closed across 15 pages

URL stability2 unverified
  • Missing pages return a real 404

    Not finished: the scan reached its time or request limit before this check could read everything it needed, so it is left out of the score. (Could not test any URLs; 15 failed to fetch)

  • Redirects stay on the same host

    Not finished: the scan reached its time or request limit before this check could read everything it needed, so it is left out of the score. (Could not test any URLs; 15 failed to fetch)

Content health1 passed2 failed
  • llms.txt covers the whole site

    llms.txt covers 19/482 sitemap doc pages (4%); 463 missing; 2 llms.txt links not in sitemap (may indicate stale links or incomplete sitemap)

    Your llms.txt covers 4% of your site's pages (below 80% threshold). 463 live pages are missing from the index. If unintentional, regenerate llms.txt from your sitemap or build pipeline. If intentional, lower the threshold or set it to 0 to make the check informational.

  • Markdown matches the HTML page

    9 of 14 pages have substantive content differences between markdown and HTML (avg 49% missing)

    9 pages have substantive content differences between markdown and HTML (avg 49% missing). If unintentional, agents are getting outdated content; regenerate markdown from source or fix the build pipeline.

  • Cache headers allow timely updates

    All 16 endpoints have appropriate cache headers

Authentication and access1 unverified
  • Docs are readable without logging in

    Not finished: the scan reached its time or request limit before this check could read everything it needed, so it is left out of the score. (Could not fetch any pages to check authentication; 15 failed to fetch)

  • Gated docs offer another way in

    auth-gate-detection errored; cannot assess alternative access

Crawler access2 passed
  • Crawlers and AI assistants may read the docs

    robots.txt lets Googlebot, Bingbot, OAI-SearchBot, PerplexityBot, Claude-SearchBot and Claude-User read the docs.

  • Sitemap lists the docs pages

    The sitemap at https://docs.viam.com/sitemap.xml lists 404 of the 405 docs pages found through llms.txt and page links.

Freshness

Maintenance3 passed
  • Pages say when they were last changed

    14 of 14 sampled pages state when they were last changed.

  • Links and section anchors work

    All 43 links and 15 section anchors checked on the sampled pages work. 2 more could not be verified (timeouts or blocked requests) and are not counted.

  • Sitemap entries still exist

    All 10 sitemap entries sampled still exist.

Consistency with the API specNot applicable
  • Endpoints in the docs exist in the API spec

    No OpenAPI description was found, so the docs could not be compared with a spec.

CurrencyNot applicable
  • Deprecated operations are marked as such

    No OpenAPI description was found, so deprecation notices could not be compared with a spec.

Additional checks

Not part of the score: optional extras that help agents use your docs.

  • MCP server is discoverable

    No MCP server was found for these docs.

    Offer a read-only MCP server with a search tool over your docs, and link it from llms.txt, so agents in Cursor, Claude and ChatGPT can query your docs directly.

  • llms-full.txt is available

    llms-full.txt found at https://docs.viam.com/llms-full.txt (36,127 characters).

  • Agent skills are published

    No agent skills index was found at /.well-known/agent-skills/index.json.

    Publish an Agent Skills index at /.well-known/agent-skills/index.json with a SKILL.md for your main tasks, so agents can load task instructions without reading every page.

About this scan

Scanned
Oct 26, 2026
Pages tested
15 of 21 found
Platform
Unknown
Kind of site
Developer docs
AFDocs score, on its own
90 (A), 12 of 23 checks pass
  • Based on 15 sampled pages, chosen deterministically from the sitemap and llms.txt. Pages outside the sample were not read.
  • Pages were fetched without running JavaScript, the way most AI agents read the web.
  • robots.txt stopped the scanner from reading 2 URLs; checks that needed them are unverified.
  • Some checks could not be verified (a timeout, a blocked request or a scan limit); they are left out of the score rather than counted as failures.
  • Answerability, where an AI agent answers real questions written from these pages, runs in the open-source scanner with your own API key. This web score is made of Access and Freshness.

Methodology 2026-09.6 · AFDocs 0.20.0

Pages we sampled (15)
  • https://docs.viam.com/build-apps/overview/
  • https://docs.viam.com/build-apps/tasks/connect-to-machine/
  • https://docs.viam.com/build-apps/tasks/control-components/
  • https://docs.viam.com/build-modules/overview/
  • https://docs.viam.com/build-modules/use-registry-modules/
  • https://docs.viam.com/cli/drive-a-machine/
  • https://docs.viam.com/cli/overview/
  • https://docs.viam.com/cli/reference/
  • https://docs.viam.com/reference/apis/components/overview/
  • https://docs.viam.com/reference/apis/fleet/
  • https://docs.viam.com/reference/apis/services/overview/
  • https://docs.viam.com/reference/components/
  • https://docs.viam.com/reference/mcp/
  • https://docs.viam.com/set-up-a-machine/first-machine/
  • https://docs.viam.com/sitetree.json

Show your score

Add the badge to your docs or README. It updates each time the site is scanned.

Agent Readiness Score badge

Markdown

[![Agent Readiness Score: 91 (A)](https://documentation.ai/agent-score/badge/viam.svg)](https://documentation.ai/agent-score/viam)

HTML

<a href="https://documentation.ai/agent-score/viam"><img src="https://documentation.ai/agent-score/badge/viam.svg" alt="Agent Readiness Score: 91 (A)" height="20"></a>

Agent-ready docs by default

Documentation.AI sites ship with llms.txt, Markdown pages, a sitemap and an MCP server, and our agent keeps the content current.

Live in under 5 min · No credit card required