index.stuntdouble.io
Finalizing the report
Preparing the stored Is Agentic score
index.stuntdouble.io
Preparing the stored Is Agentic score
index.stuntdouble.io
These checks describe whether an ordinary agent can enter, read, and operate the public site.
Agents can reach the site
Crawler access and bot defenses.
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.
Controls are understandable
Forms and interactive controls expose usable names and structure.
The public website is always evaluated. Optional surfaces appear when the scan finds positive evidence that they apply.
Ready with gaps
Weighted across 17 applicable checks
Needs work
Weighted across 8 applicable checks
Needs work
Weighted across 3 applicable checks
Ready with gaps
Weighted across 1 applicable check
Critical access gaps come first, followed by other applicable readiness gaps.
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.
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.
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.
Add Organization JSON-LD that includes both contactPoint (with email/phone and contactType) and address (PostalAddress). This lets AI verify your business legitimacy and answer contact queries.
Add description to the Organization JSON-LD entity for full score.
Checks are grouped by relevance for Docs & content sites.
3362 chars with H1, but 2.5% content ratio is below the 5% target
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.
Site accessible to 6 AI agent user-agents
No meta-refresh stubs, JavaScript-redirect stubs, or cross-domain hops across 5 checked pages
All 4 sampled pages are publicly readable (4 with substantive content)
Homepage https://index.stuntdouble.io does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; charset=utf-8; Vary header missing Accept (got "rsc, next-router-state-tree, next-router-prefetch, next-router-segment-prefetch")
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.
All major AI crawlers can reach the site: ChatGPT-User, ClaudeBot, Google-Extended, ora-agent, DeepSeekBot.
The nonexistent path https://index.stuntdouble.io/__ora-404-probe-b7jllor5 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.
Valid sitemap found at https://index.stuntdouble.io/sitemap.xml with 674 entries
JSON-LD Organization found - missing description on this entity
How to pass
Add description to the Organization JSON-LD entity for full score.
All metadata signals present: canonical URL, lang="en-GB", og:image, og:type
Organization schema found but missing: address
How to pass
Add Organization JSON-LD that includes both contactPoint (with email/phone and contactType) and address (PostalAddress). This lets AI verify your business legitimacy and answer contact queries.
All trust anchor pages verified: About, Contact, Privacy
All 5 measured pages fit an agent context budget (largest ~2K tokens)
Agent struggled to find developer resources by name - only 1 result(s) out of 10. Not found in this search sample: OpenAPI spec, SDK documentation
How to pass
Check whether your developer resources (API docs, OpenAPI spec, auth docs, developer portal, MCP server, SDK documentation) surface in name-based searches. If they do not, use predictable URLs, link them in llms.txt, and include your product name in page titles and headings. This result reflects one search sample.
index.stuntdouble.io appears at position #1 in a clean brand-name search for "Stunt Double Index" (1 total match)
MCP manifest has name and description but no icon at /.well-known/mcp/server-card.json
How to pass
Give your MCP server-card (at /.well-known/mcp/server-card.json) a display name, an icon or logo, and a description - all three together are what reads as a complete, branded listing agents can present.
MCP server discoverable via server-card.json at /.well-known/mcp/
100% of 500 sampled sitemap entries carry lastmod; newest is 0 day(s) old
Found the llms.txt at https://index.stuntdouble.io/llms.txt.
The llms.txt is well-formatted: 63 lines with markdown links, 7,775 characters in total.
Pricing structured data (schema.org/Offer) found
API/docs link found on homepage and resolves: /developers
Strong entity linking via sameAs: github.com, linkedin.com
Some extended schema types found: Service - add FAQPage, Service, or AggregateRating for full coverage
How to pass
Expand your JSON-LD beyond Organization/WebSite. Add FAQPage for common questions, Service or Product for offerings, AggregateRating or Review for social proof, and BreadcrumbList for navigation context.
All 5 probed llms.txt links resolve to real content
Code fences balanced across 1 markdown document
Developer portal found at /developers
REST API documentation found at https://index.stuntdouble.io/developers. Best-of-protocols score: 7/7.
OAuth authorization server metadata at https://app.stuntdouble.io
product MCP requires authentication with OAuth metadata discovery
RFC 8414 OAuth metadata for product MCP: issuer=https://app.stuntdouble.io, auth and token endpoints present; client registration: DCR endpoint only (RFC 7591, deprecated in favor of CIMD)
OAuth metadata for product MCP supports PKCE S256 code challenge
Onboarding signals described but not verified live: free tier available, self-serve key generation, sandbox/test environment
How to pass
Offer a free tier or trial, self-serve API key generation, and a sandbox environment. Agents can't fill out 'contact sales' forms.
RFC 9728 metadata at https://app.stuntdouble.io: resource=https://app.stuntdouble.io, authorization_servers (1), scopes_supported (3), bearer_methods_supported
PRM + AS metadata both present (PRM discovered at https://app.stuntdouble.io) (AS metadata fetched from advertised origin https://app.stuntdouble.io) but AS metadata has no agent_auth block
How to pass
Publish RFC 9728 protected-resource metadata at /.well-known/oauth-protected-resource on your resource server (the host that actually serves the API, e.g. api.) with resource and authorization_servers. Publish RFC 8414 authorization-server metadata at /.well-known/oauth-authorization-server on the AS origin, and include the WorkOS auth.md agent_auth block with identity_endpoint, identity_types_supported drawn from the spec enum (anonymous, identity_assertion, service_auth - the assertion variant, the ID-JAG URN urn:ietf:params:oauth:token-type:id-jag, belongs inside identity_assertion.assertion_types_supported, not at the top level), and the identity_assertion.assertion_types_supported block when you advertise that type, so agents can check their assertion shape is accepted before minting. Cross-link by listing the AS origin in PRM authorization_servers, and point agent_auth.skill back at your published /auth.md. Spec: https://github.com/workos/auth.md.
MCP server detected at https://app.stuntdouble.io/api/mcp; it requires authentication. Presence is verified (5/6), but Ora could not inspect its tools or verify access scopes without credentials.
How to pass
Keep authentication enabled. Verify tool listing with an authorized MCP client. This unauthenticated scan cannot establish whether protected tools are missing or unusable.
CLI tool found on PyPI: index
MCP server card found at https://app.stuntdouble.io/.well-known/mcp/server-card.json but missing tools[]
How to pass
Publish a server card at /.well-known/mcp/server-card.json describing your MCP server. Required fields: name, description, version, serverUrl, tools[]. This lets agents preview your server before opening a transport connection.
Server HTML is a well-structured document (main=true, landmarks=4/4, h1=1, maxHeadingSkip=1).
116 native controls, 0 non-native div-soup affordances (100% native).
116/116 interactive elements have a computable accessible name (100%).
2/2 form controls have an associated label (100%).
No hidden instruction text detected in accessibility-tree attributes or off-screen content.
What does index.stuntdouble.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 index.stuntdouble.io do and who is it for? Explain it back to me.
11 steps2 reasoning steps2 searches
The agent assembled a partial but usable explanation of Stunt Double Index from two homepage fetches and a comparison page, but could not retrieve pricing or business model details because the site does not expose them—no /pricing page exists, methodology links return 404s, and the site intentionally omits cost information.