Static pre-check · Fri, 07 Aug 2026 06:51:28 GMT
circleci.com
AI agents struggle with undocumented authentication schemes and error handling in CircleCI's API integration, limiting autonomous workflow automation.
Watch a real agent use your site →
A live Claude Code run against circleci.com, streamed step by step.
Test this with real agents →
An audit: measured success rates from repeated real agent runs, with confidence intervals and downloadable evidence.
Discovery 21.1/22.2
API reference linked from the homepagedetailsWARN
no link to an API reference in the homepage HTML
Fix: If you have an API, link its reference from the homepage. If you don't, this check is safe to ignore.
Canonical URL declareddetailsPASS
https://circleci.com/
Documentation linked from the homepagedetailsPASS
5 docs link(s), e.g. https://circleci.com/docs/
Homepage has a meta descriptiondetailsPASS
141 characters
Homepage has a descriptive titledetailsPASS
'Autonomous validation for the AI era - CircleCI' (47 chars)
Open Graph tags presentdetailsPASS
og:title and og:description present
robots.txt allows agent crawlersdetailsPASS
all 6 agent crawlers may fetch /
robots.txt existsdetailsPASS
HTTP 200, 994 bytes
robots.txt points at the sitemapdetailsPASS
robots.txt has a Sitemap: line
sitemap.xml exists and parsesdetailsPASS
212 URL(s) listed
Brand findable in agent searchdetailsN/A
search-based checks are deferred — excluded from the score
Listed in an MCP registrydetailsN/A
registry lookup not implemented in v1 — excluded from the score rather than guessed
Accessibility 30.8/33.3
llms-full.txt is publisheddetailsWARN
/llms-full.txt not served
Fix: Optional but cheap: publish /llms-full.txt with your docs inlined as one markdown file, so an agent can read everything in a single fetch.
Serves markdown when asked for itdetailsWARN
Accept: text/markdown → text/html; charset=UTF-8
Fix: Optional but increasingly expected: honour `Accept: text/markdown` by serving a markdown rendering of the page, so agents skip HTML parsing entirely.
Content-to-markup ratio is reasonabledetailsWARN
ratio 0.0256 — 15746 readable chars in 616166 bytes of HTML
Fix: Most of what you serve is markup and inline script rather than content. Reduce inline payloads or server-render more text so the signal-to-noise ratio favours readers.
Docs are readable without JavaScriptdetailsPASS
1768 characters of text at /docs
Homepage responds to an agent requestdetailsPASS
HTTP 200 for / (agent UA)
Served over HTTPSdetailsPASS
https://circleci.com/
Structured data (JSON-LD) on the homepagedetailsPASS
1 valid block(s) (Organization)
llms.txt is publisheddetailsPASS
HTTP 200, 6331 bytes
Links in llms.txt resolvedetailsPASS
5 sampled link(s) all resolve
llms.txt is structured markdowndetailsPASS
has headings and markdown links
Same response for agents and browsersdetailsPASS
both User-Agents got HTTP 200
Homepage has readable text without JavaScriptdetailsPASS
15746 characters of text in the served HTML
No long redirect chain on the homepagedetailsPASS
0 redirect(s)
Usability 26.8/44.4
OpenAPI declares its auth schemedetailsFAIL
no securitySchemes declared
Fix: Declare your auth in `components.securitySchemes` and reference it from operations. Without it an agent cannot tell whether a 401 means "log in" or "you are not allowed".
OpenAPI documents error responsesdetailsFAIL
no 4xx/5xx responses documented on any operation
Fix: Document your error responses with codes and schemas. Undocumented failures are where agent integrations silently break.
agents.md is publisheddetailsWARN
/agents.md not served (HTTP 404)
Fix: Publish /agents.md: what an agent may do here, which endpoints matter, auth requirements, and rate limits. It is the agent-facing counterpart to a README.
Errors are machine-readabledetailsWARN
404 returns HTML, not a machine-readable body
Fix: Content-negotiate your errors: return a JSON body with a stable `code` (and a `next_action` where recovery exists) to clients that ask for JSON.
.well-known/mcp.json advertises an MCP serverdetailsWARN
/.well-known/mcp.json not served (HTTP 404)
Fix: If you run an MCP server, advertise it at /.well-known/mcp.json so agents discover it without being told its URL.
A documentation endpoint respondsdetailsPASS
/docs → HTTP 200
OpenAPI operations are describeddetailsPASS
3/3 operations described (100%)
OpenAPI document publisheddetailsPASS
HTTP 200, 1264 bytes of JSON
OpenAPI document is structurally validdetailsPASS
OpenAPI 3.1.0, 3 path(s)
The /api root behaves predictablydetailsN/A
/api → HTTP 404 (no API at the conventional root)
MCP server completes the initialize handshakedetailsN/A
no MCP endpoint found to probe (none in the input URL and none advertised at /.well-known/mcp.json)
MCP tool parameters are typed and describeddetailsN/A
no listed MCP tools to inspect
Every MCP tool has a descriptiondetailsN/A
no listed MCP tools to inspect
MCP server lists toolsdetailsN/A
no MCP endpoint to probe
Payments not applicable — excluded from the score
Serves a 402 payment challengedetailsN/A
no agent-payment rail published — not applicable. This layer is excluded from the score rather than counted against the site.
Declares AP2 / ACP supportdetailsN/A
no agent-payment rail published — not applicable. This layer is excluded from the score rather than counted against the site.
Publishes x402 payment metadatadetailsN/A
no agent-payment rail published — not applicable. This layer is excluded from the score rather than counted against the site.
Badge
Shows the current scan score and grade for this domain, straight from the latest static pre-check.
[](/score/circleci.com)<a href="/score/circleci.com"><img src="/api/badge/circleci.com" alt="agent readiness score" /></a>