# Faherty Brand: 15 point Door Gap
- Site: fahertybrand.com
- Scanned: 2026-09-04
- Scan type: Basic scan
- Business type: ecommerce
- Report: https://www.seconddoor.io/r/fahertybrand-kvzb98
- Scanner version: 10
A Shopify storefront with strong agent discovery and checkout capability, but no programmatic API for integrations beyond the UCP protocol.
## Scores
| Measure | Score |
| --- | --- |
| Humans | 85/100 |
| Agents | 70/100 |
| Composite | 78/100 |
| Door Gap | 15 points |
The human score is the mean of the four human dimensions, the agent score the mean of the six agent dimensions, and the Door Gap the difference between them.
## What the machine actually did
The agent got through 11 of 17 requests, but could not find a contact route for machines. It came up empty on 5 other checks too.
- ok      reach the site at all
- ok      find out whether machines are welcome
- ok      ask whether the door opens for requests carrying the AI crawlers' names
- ok      read the site's own guide for language models
- ok      find out what pages exist
- missing find a contact route for machines
- missing find a published agent interface
- missing find an agent plugin manifest
- missing find out whether verified agents are recognised
- ok      read the homepage as data rather than as a page
- missing find a machine readable API spec
- missing read the developer documentation
- ok      read the prices without running JavaScript
- ok      read the product catalogue as data
- ok      read a product page as data
- ok      read the returns and shipping terms
- ok      walk the way a visitor would, to a signup form or a product
## Top issues
1. **No security.txt file is published, leaving no standardized way for security researchers to report vulnerabilities.** (machine_fetchable_trust)
2. **The visible product price on the page does not match the price in structured data, creating confusion about the actual cost.** (pricing_legibility)
3. **No API documentation or developer integration surface exists beyond the UCP protocol, blocking third-party integrations and custom agent workflows.** (programmatic_onboarding)
The evidence and the recommended fix for each are on the report page: https://www.seconddoor.io/r/fahertybrand-kvzb98
## Files generated from this scan
- **Put Yotpo reviews in the page** at `notes`, 10 minutes, no developer needed. Verify: The next scan finds review text in the server HTML of a product page.
- **robots.txt rules for AI crawlers** at `/robots.txt`, 10 minutes, no developer needed. Verify: The next scan reads robots.txt and finds every search and agent crawler allowed, none of them kept off product or pricing paths.
- **Link the policy pages from the product page** at `notes`, 30 minutes, no developer needed. Verify: The next scan finds the returns and shipping policy pages linked from a product page.
- **Variants missing a GTIN or a brand** at `catalog-identifiers.csv`, 5 minutes, no developer needed. Verify: The next scan reads the catalogue feed and finds a valid GTIN on at least nine in ten variants and a brand on at least nine in ten products.
- **security.txt** at `/.well-known/security.txt`, 10 minutes, no developer needed. Verify: The next scan fetches /.well-known/security.txt as text and the security.txt check passes.
- **Machine interfaces: where you stand** at `notes`, 10 minutes, no developer needed. Verify: The next scan finds the interface you published answering at its well-known path, and that check passes.
Each file is written from what this scan found on the site. The content is in the JSON once the evidence is opened: https://www.seconddoor.io/api/reports/fahertybrand-kvzb98
## The agent door
- **machine_discoverability** 100/100. No AI crawler is blocked by robots.txt or user agent rules; all declared AI names are allowed. The site publishes llms.txt, a sitemap with 704 URLs including products, 19 schema.org types on the homepage, and a /products.json feed.
- **programmatic_onboarding** 10/100. No API documentation is linked from the homepage or discoverable in the raw HTML. The site publishes a UCP manifest for checkout, but offers no OpenAPI spec, developer docs, or integration surface for building on top of the catalogue.
- **pricing_legibility** 75/100. Prices appear in the raw HTML of product pages and in Product structured data with currency (USD). The visible price on the product page is $150, but structured data shows $88 for the same variant, creating ambiguity about which price.
- **agent_aware_instrumentation** 57/100. A Universal Commerce Protocol manifest is published with 8 capabilities and a storefront MCP endpoint that agents can call. The catalogue answers as data at /products.json.
- **machine_fetchable_trust** 77/100. The returns policy and shipping policy both read as text without JavaScript. Return policy is published in structured data. No security.txt is present at /.well-known/security.txt.
- **commercial_rails** 98/100. Product markup carries price, currency, GTIN, and brand. The catalogue answers as data at /products.json, ready for feed syndication. Return policy is in structured data; returns and shipping terms read as text.
## The human door
- **steps_to_first_value** 95/100. A product with its price ($150) and an add-to-cart control is reached in 2 steps from the homepage. The product page renders with 13 variant choosers and three express wallet options (Apple Pay, Shop Pay, PayPal) that skip the form.
- **required_fields** 80/100. No account is required before buying. The product page does not demand sign-in. Three express wallets (Apple Pay, Shop Pay, PayPal) allow checkout without entering any form fields.
- **verification_walls** 75/100. No sign-in requirement appears on the product page. Express wallets skip verification entirely. The page contains 79 inline error containers and 8 live regions, suggesting form validation is present, but no wall blocks a guest from.
- **error_recovery** 90/100. The product page offers 13 size or colour choosers, allowing a shopper to correct a variant selection before adding to cart. The page includes 79 inline error containers and 8 live regions for validation feedback, supporting error.
---
Scored by SecondDoor. Method: https://www.seconddoor.io/methodology
Scan another site: https://www.seconddoor.io
Rate an issue or this report: POST https://www.seconddoor.io/api/feedback, or the rate_fix tool on https://www.seconddoor.io/api/mcp
