crates.io
Finalizing the report
Preparing the stored Is Agentic score
crates.io
Preparing the stored Is Agentic score
crates.io
These checks describe whether an ordinary agent can enter, read, and operate the public site.
Core content is available
Useful content remains accessible without a fragile browser-only path.
Navigation fails safely
Redirects and missing pages give agents a recoverable path.
The public website is always evaluated. Optional surfaces appear when the scan finds positive evidence that they apply.
Blocked
Weighted across 14 applicable checks
Needs work
Weighted across 12 applicable checks
Critical access gaps come first, followed by other applicable readiness gaps.
Serve at least 500 characters of meaningful homepage content in raw HTML. Add a clear H1, keep deeper heading levels sequential, and remove excessive non-content markup.
Keep the correct HTTP 404 status. The remaining requirement is a Markdown error body when agents request Accept: text/markdown. Include at least 20 characters explaining the error and a link to your docs, sitemap, or llms.txt. Verify with curl -sS -L -i -H 'Accept: text/markdown' https://yourdomain.com/some-path-that-does-not-exist. Check both the final 404 status and the Markdown body with Content-Type: text/markdown. Checking the status alone does not verify the missing requirement.
Enable Markdown negotiation on the scanned homepage. Supporting it only on /docs or a separate .md URL does not satisfy this check. Requests with Accept: text/markdown must receive a nonempty Markdown body with Content-Type: text/markdown and Vary: Accept. Keep serving HTML for Accept: text/html. Adding Vary alone does not create a Markdown response. Verify both with curl -sS -L -i -H 'Accept: text/markdown' https://yourdomain.com/ and curl -sS -L -i -H 'Accept: text/html' https://yourdomain.com/. Check the final response headers and body: Markdown with Vary: Accept for the first request, HTML for the second.
Expose a public REST or GraphQL API. AI agents need programmatic access - not just a web UI - to integrate with your product.
Build an MCP (Model Context Protocol) server exposing your API as tools. Use Streamable HTTP transport for full score. This lets Claude, ChatGPT, and other AI agents call your product natively.
Checks are grouped by relevance for App sites.
Very little text content (32 chars) - likely JS-rendered, invisible to AI crawlers
How to pass
Serve at least 500 characters of meaningful homepage content in raw HTML. Add a clear H1, keep deeper heading levels sequential, and remove excessive non-content markup.
No meta-refresh stubs, JavaScript-redirect stubs, or cross-domain hops across 1 checked page
OpenAPI spec found at https://crates.io/api/openapi.json (version: 3.1.0)
Homepage https://crates.io does not meet the Markdown negotiation requirements: Accept: text/markdown returned no content-type; Vary header missing Accept (got "none")
How to pass
Enable Markdown negotiation on the scanned homepage. Supporting it only on /docs or a separate .md URL does not satisfy this check. Requests with Accept: text/markdown must receive a nonempty Markdown body with Content-Type: text/markdown and Vary: Accept. Keep serving HTML for Accept: text/html. Adding Vary alone does not create a Markdown response. Verify both with curl -sS -L -i -H 'Accept: text/markdown' https://yourdomain.com/ and curl -sS -L -i -H 'Accept: text/html' https://yourdomain.com/. Check the final response headers and body: Markdown with Vary: Accept for the first request, HTML for the second.
The nonexistent path https://crates.io/__ora-404-probe-70c8ho2f correctly returns HTTP 404. Partial credit: no Markdown error body was detected.
How to pass
Keep the correct HTTP 404 status. The remaining requirement is a Markdown error body when agents request Accept: text/markdown. Include at least 20 characters explaining the error and a link to your docs, sitemap, or llms.txt. Verify with curl -sS -L -i -H 'Accept: text/markdown' https://yourdomain.com/some-path-that-does-not-exist. Check both the final 404 status and the Markdown body with Content-Type: text/markdown. Checking the status alone does not verify the missing requirement.
No noindex on the homepage: no robots, googlebot or bingbot meta tag and no X-Robots-Tag header hides it from search.
No sitemap found
How to pass
Add a valid XML sitemap at /sitemap.xml listing all indexable URLs. Include lastmod dates and keep it under 50MB.
No JSON-LD structured data found on homepage
How to pass
Add JSON-LD structured data to your homepage using the identity type that matches your site - SoftwareApplication for products, Organization or LocalBusiness for companies, Person for personal sites, Article for blogs - with name, description, url, and type-appropriate fields (offers, sameAs, author) so AI can parse your identity programmatically.
No public API or documentation page linked from homepage
How to pass
Publish API documentation at a discoverable URL (/docs, /api, /developers). Include authentication, endpoints, and example requests.
2/4 metadata signals present - missing: canonical URL, og:type
How to pass
Add all four signals to your homepage: <link rel="canonical">, <html lang="...">, <meta property="og:image">, and <meta property="og:type">. Agents use these for entity resolution and attribution.
No trust anchor pages found with sufficient content (About, Contact, Privacy)
How to pass
Publish real /about, /contact, and /privacy pages with at least 500 characters of content each. These are the pages AI agents check to verify your business is legitimate before recommending you.
All 1 measured page fit an agent context budget (largest ~1K tokens)
No REST API endpoint or documentation found. No publicly reachable API surface detected (REST and GraphQL both absent or auth-gated).
How to pass
Expose a public REST or GraphQL API. AI agents need programmatic access - not just a web UI - to integrate with your product.
No MCP server or manifest found
How to pass
Build an MCP (Model Context Protocol) server exposing your API as tools. Use Streamable HTTP transport for full score. This lets Claude, ChatGPT, and other AI agents call your product natively.
Agent discovered 1 developer-resource type by name (OpenAPI spec) across 5 pages
crates.io ranks #1 for "crates package registry"
Wikidata Q47258851 (Cargo) verified - draft a Wikipedia page with cited references to complete knowledge graph coverage
How to pass
Establish a Wikipedia article and a Wikidata entity for your brand, with the domain set as the official website (Wikidata property P856) and a corresponding external link on Wikipedia. Wikipedia is the largest single source of citations in ChatGPT and a primary input to Knowledge Graphs across Google, Bing, and LLM training data. Earn third-party press coverage first to satisfy notability, then draft the article with cited references rather than self-promotion.
Agent config found: github.com/rust-lang/crates.io/blob/main/AGENTS.md
No hidden instruction text detected in accessibility-tree attributes or off-screen content.
What does crates.io do and who is it for? Explain it back to me.
Sign me up for Vercel product updates and marketing emails.
Unsubscribe anytime. Privacy Notice
Source: Ora API
What does crates.io do and who is it for? Explain it back to me.
13 steps7 reasoning steps2 searches
The agent successfully synthesized a comprehensive explanation of crates.io by working around minimal site content—the homepage and about pages returned only headers with no substantive information. It assembled the answer from web search results and the GitHub repository, producing a well-sourced comparison against npm and PyPI.