# Brooklinen: agent door 50, human door not measured
- Site: brooklinen.com
- Scanned: 2026-09-08
- Scan type: Basic scan
- Business type: ecommerce
- Report: https://www.seconddoor.io/r/brooklinen-6zzx6q
- Scanner version: 15
A Shopify storefront with agent checkout capability but no product schema, leaving assistants unable to verify prices and availability before purchase.
## Scores
| Measure | Score |
| --- | --- |
| Humans | not measured |
| Agents | 50/100 (6/6 dimensions) |
| Composite | 50/100 |
Agent door only. The human door could not be measured on this scan. A Door Gap needs both doors, so this scan does not report one.
## What the machine actually did
The agent got through 9 of 16 requests, but could not find a contact route for machines. It came up empty on 6 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
- missing 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
## Top issues
1. **No security.txt is published, leaving agents without a standard channel to report vulnerabilities or verify the site's security contact.** (machine_fetchable_trust)
2. **No developer documentation is linked from the homepage, in raw HTML or the rendered page, so integration starts with a search engine.** (programmatic_onboarding)
3. **No API documentation or developer surface exists, requiring agents to reverse-engineer the UCP manifest and catalog feed without guidance.** (programmatic_onboarding)
The evidence and the recommended fix for each are on the report page: https://www.seconddoor.io/r/brooklinen-6zzx6q
## Files generated from this scan
- **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.
- **Return policy and shipping structured data** at `product page`, 30 minutes, developer. Verify: The next scan reads a MerchantReturnPolicy on the product pages, and OfferShippingDetails when the shipping node was published.
- **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.
- **Organization structured data** at `homepage`, 15 minutes, developer. Verify: The next scan reads Organization and WebSite nodes in the homepage JSON-LD and the structured data check passes.
- **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/brooklinen-6zzx6q
## The agent door
- **machine_discoverability** 99/100. No AI crawler is blocked by robots.txt or user agent rules; the site explicitly allows gptbot, claudebot, perplexitybot and others. A real browser is served the page normally.
- **programmatic_onboarding** 10/100. No API documentation is linked from the homepage or discoverable in the raw HTML. No OpenAPI spec exists at any of the 6 standard paths checked. The site publishes a UCP manifest for checkout, but there is no developer surface for.
- **pricing_legibility** 45/100. Prices are in the raw HTML of the 3 product pages read, 25 prices on the homepage itself, no Product structured data within the first 1.2 MB read of each product page.
- **agent_aware_instrumentation** 49/100. No MCP manifest exists at the 3 standard paths checked. A Universal Commerce Protocol manifest is published at version 2026-08-25, declaring 8 capabilities including checkout, cart, and catalog search.
- **machine_fetchable_trust** 65/100. No security.txt is published. The returns policy and shipping policy are readable as text at /policies/refund-policy and /policies/shipping-policy, with lengths of 275,607 and 275,597 characters respectively.
- **commercial_rails** 33/100. The catalogue answers as data at /products.json with brand on each product. A UCP manifest publishes 3 payment handlers and 8 capabilities including checkout and fulfillment. Returns and shipping policies read as text.
## The human door
- **steps_to_first_value** not measured. Could not verify: this scan did not reach the pages that would show it.
- **required_fields** not measured. Could not verify: this scan did not reach the pages that would show it.
- **verification_walls** not measured. Could not verify: this scan did not reach the pages that would show it.
- **error_recovery** not measured. Could not verify: this scan did not reach the pages that would show it.
---
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
