{"slug":"seconddoor-8ea2ur","companyName":"SecondDoor","domain":"seconddoor.io","url":"https://seconddoor.io","headline":"A software and storefront hybrid with strong machine discoverability but no published path for agents to complete a purchase.","compositeScore":82,"humanScore":83,"agentScore":81,"doorGap":2,"humanMeasured":4,"agentMeasured":6,"percentile":null,"humanPercentile":null,"agentPercentile":null,"isPartial":false,"depth":"free","siteClass":"hybrid","scannerVersion":10,"scannedAt":"2026-09-04T19:26:01.401Z","unlocked":false,"mission":{"steps":[{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"reach the site at all"},{"url":"https://www.seconddoor.io/robots.txt","outcome":"ok","purpose":"find out whether machines are welcome"},{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"ask whether the door opens for requests carrying the AI crawlers' names"},{"url":"https://www.seconddoor.io/llms.txt","outcome":"ok","purpose":"read the site's own guide for language models"},{"url":"https://www.seconddoor.io/sitemap.xml","outcome":"ok","purpose":"find out what pages exist"},{"url":"https://www.seconddoor.io/.well-known/security.txt","outcome":"ok","purpose":"find a contact route for machines"},{"url":"https://www.seconddoor.io/.well-known/mcp.json","outcome":"ok","purpose":"find a published agent interface"},{"url":"https://www.seconddoor.io/.well-known/ai-plugin.json","outcome":"ok","purpose":"find an agent plugin manifest"},{"url":"https://www.seconddoor.io","outcome":"missing","purpose":"find out whether verified agents are recognised"},{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"read the homepage as data rather than as a page"},{"url":"https://www.seconddoor.io/openapi.json","outcome":"ok","purpose":"find a machine readable API spec"},{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"read the developer documentation"},{"url":"https://www.seconddoor.io/pricing","outcome":"ok","purpose":"read the prices without running JavaScript"},{"url":"https://www.seconddoor.io","outcome":"missing","purpose":"read the product catalogue as data"},{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"read a product page as data"},{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"read the returns and shipping terms"},{"url":"https://www.seconddoor.io","outcome":"ok","purpose":"find a comparison page worth citing"},{"url":"https://www.seconddoor.io/signup","outcome":"ok","purpose":"walk the way a visitor would, to a signup form or a product"}],"verdict":"The agent got through 16 of 18 requests, but could not find out whether verified agents are recognised. It came up empty on 1 other check too."},"observations":null,"dimensions":[{"key":"machine_discoverability","audience":"agent","score":100,"summary":"Robots.txt names 14 AI crawlers and allows them all. A real browser is served the page normally. No user agent rule refuses declared crawler names.","evidence":{"locked":true,"count":4}},{"key":"programmatic_onboarding","audience":"agent","score":50,"summary":"A machine readable API spec is published.","evidence":{"locked":true,"count":3}},{"key":"pricing_legibility","audience":"agent","score":88,"summary":"Six prices are readable without JavaScript on the pricing page: $0, $29, $99, $249, $2,500, and one more. No tier is gated behind a sales contact. The page carries FAQ schema markup. Prices are legible to both humans and machines.","evidence":{"locked":true,"count":2}},{"key":"agent_aware_instrumentation","audience":"agent","score":100,"summary":"An MCP manifest is published at /.well-known/mcp.json. An ai-plugin.json is published. Robots.txt names 14 AI crawlers and allows them. An OpenAPI spec is published.","evidence":{"locked":true,"count":4}},{"key":"machine_fetchable_trust","audience":"agent","score":85,"summary":"Security.txt is published at /.well-known/security.txt with a contact route for machines. The returns policy reads as plain text at /refunds. The homepage answers automated requests. A shipping policy was not found at standard paths.","evidence":{"locked":true,"count":3}},{"key":"commercial_rails","audience":"agent","score":65,"summary":"Prices are published in raw HTML on the pricing page. A self serve signup form is reachable from the homepage in 2 steps. However, no UCP manifest, commerce platform, or payment processor is detected.","evidence":{"locked":true,"count":4}},{"key":"steps_to_first_value","audience":"human","score":80,"summary":"The primary call to action, 'Sign up for free', is 2 steps from the homepage and leads to a signup form. The form itself is 2 steps away. A visitor reaches the form quickly, though what happens after submission was not observed.","evidence":{"locked":true,"count":1}},{"key":"required_fields","audience":"human","score":93,"summary":"The signup form has 2 fields, both required: Work email and Password. One sign in option is offered: Google. Both inputs carry validation rules. The form asks for the minimum needed to create an account.","evidence":{"locked":true,"count":1}},{"key":"verification_walls","audience":"human","score":80,"summary":"No verification requirement appears on the signup page itself. Google sign in avoids email verification entirely. The form does not block progress with a second factor or email confirmation step visible at form render.","evidence":{"locked":true,"count":1}},{"key":"error_recovery","audience":"human","score":80,"summary":"Both of the 2 inputs on the signup form carry validation rules, so a user can correct mistakes before submission. No inline error containers or live regions were detected, so feedback after submission was not measured.","evidence":{"locked":true,"count":1}}],"issues":[],"fixArtifacts":{"locked":true,"count":3,"summaries":[{"id":"policy_pages_text:shipping","kind":"policy_pages_text","title":"Shipping and delivery page","path":"/shipping","effort":{"minutes":30,"role":"owner"},"outcome":{"dimension":"machine_fetchable_trust","external":["Returns and shipping pages read as text and are linked from every product page."]}},{"id":"agent_checkout_note:notes","kind":"agent_checkout_note","title":"Agent checkout: where you stand","path":"notes","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["The checkout rail question is settled with the platform and processor before any manifest is published."]}},{"id":"pricing_md:pricing-md","kind":"pricing_md","title":"pricing.md","path":"/pricing.md","effort":{"minutes":20,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["Agents read the price list directly instead of rendering the pricing page."]}}]},"feedback":{"endpoint":"/api/feedback","mcpTool":"rate_fix","targets":[{"type":"report","key":"report"},{"type":"dimension","dimensionKey":"machine_discoverability","key":"dimension:machine_discoverability"},{"type":"dimension","dimensionKey":"programmatic_onboarding","key":"dimension:programmatic_onboarding"},{"type":"dimension","dimensionKey":"pricing_legibility","key":"dimension:pricing_legibility"},{"type":"dimension","dimensionKey":"agent_aware_instrumentation","key":"dimension:agent_aware_instrumentation"},{"type":"dimension","dimensionKey":"machine_fetchable_trust","key":"dimension:machine_fetchable_trust"},{"type":"dimension","dimensionKey":"commercial_rails","key":"dimension:commercial_rails"},{"type":"dimension","dimensionKey":"steps_to_first_value","key":"dimension:steps_to_first_value"},{"type":"dimension","dimensionKey":"required_fields","key":"dimension:required_fields"},{"type":"dimension","dimensionKey":"verification_walls","key":"dimension:verification_walls"},{"type":"dimension","dimensionKey":"error_recovery","key":"dimension:error_recovery"}]}}