brooklinen.com
Scanned 6/5/2026, 11:34:21 PM
6 of 15 checks passed
Category breakdown
Check results
Commerce
27 1/5 passed
Commerce
27-
Pass UCP profile discoverable Critical 90/100
UCP profile fetched from https://brooklinen.com/.well-known/ucp (well-known, shopify shape). version=2026-04-08, capabilities=10, mcp endpoint=true.
How to fix: Add a <link rel="agent-profile" href="/.well-known/ucp"> tag in your homepage <head> and ensure the profile carries a version + at least one service/capability with transport="mcp".
Raw evidence
{ "source": "well-known", "profileUrl": "https://brooklinen.com/.well-known/ucp", "shape": "shopify", "version": "2026-04-08", "capabilityCount": 10, "hasMcpEndpoint": true } -
Fix MCP server card discoverable Critical 0/100
No MCP server card at any well-known path. Last error: /.well-known/mcp-server-card.json: HTTP 404.
How to fix: Publish a server card at /.well-known/mcp/server-card.json with name, remotes[], and capabilities. See SEP-2127.
Raw evidence
{ "lastError": "/.well-known/mcp-server-card.json: HTTP 404", "triedPaths": [ "/.well-known/mcp/server-card.json", "/.well-known/mcp-server-card.json" ] } -
Fix ACP compliance markers Important 0/100
/checkout_sessions returned 404.
How to fix: Implement the ACP checkout sessions endpoint. Stripe's docs/agentic-commerce has a turnkey integration for merchants.
Raw evidence
{ "status": 404, "hasLink": false } -
Fix x402 payment headers Nice-to-have 0/100
Probe https://brooklinen.com/.well-known/x402 returned 301; no x402 signal.
How to fix: Adopt x402 by responding with 402 + PAYMENT-REQUIRED header on a gated route, or publish a manifest at /.well-known/x402.
Raw evidence
{ "probeUrl": "https://brooklinen.com/.well-known/x402", "status": 301 } -
Fix WebMCP opt-in or trusted-agent eligibility Nice-to-have 0/100
WebMCP signals — header:false, meta:false, script-src:false, inline-register:false, inline-mention:false.
How to fix: Opt into WebMCP: register tools with navigator.modelContext.registerTool(...) in an inline <script>, or set the WebMCP-Available: true response header.
Raw evidence
{ "headerSignal": false, "metaSignal": false, "scriptSrcSignal": false, "inlineRegisterSignal": false, "inlineMentionSignal": false }
Product Data
40 1/3 passed
Product Data
40-
Fix schema.org Product JSON-LD on PDP Critical 50/100
JSON-LD present on https://www.brooklinen.com/products/classic-duvet-cover but no @type:Product node found.
How to fix: Your JSON-LD doesn't include a Product node. Add one with name, image, description, and offers fields.
Raw evidence
{ "sampledPdp": "https://www.brooklinen.com/products/classic-duvet-cover", "jsonLdBlocks": 1 } -
Fix Variant, pricing and availability clarity in Product JSON-LD Important 0/100
No Product JSON-LD block found — pricing and availability are invisible to agents.
How to fix: Add a Product JSON-LD block first (see the product-jsonld check). Then ensure offers.price and offers.availability are populated.
Raw evidence
{ "sampledPdp": "https://www.brooklinen.com/products/classic-duvet-cover" } -
Pass Open Graph + Twitter card on PDP Nice-to-have 90/100
Open Graph: 4/4. Twitter: 3/4.
How to fix: Add the missing meta tags: twitter:image.
Raw evidence
{ "sampledPdp": "https://www.brooklinen.com/products/classic-duvet-cover", "openGraph": { "og:title": "Classic Percale Duvet Cover", "og:description": "Hot sleepers, rejoice. Our award-winning Percale Duvet Cover is woven from crisp &amp; breathable 100% long-staple cotton to keep you cool all night long.", "og:image": "https:////www.brooklinen.com/cdn/shop/files/BKL_23-05_Bedding_ClassicLuxe_White_DUV_1x_WOgrey.jpg?v=1766420851&width=1200", "og:type": "product" }, "twitter": { "twitter:card": "summary_large_image", "twitter:title": "Classic Percale Duvet Cover", "twitter:description": "Hot sleepers, rejoice. Our award-winning Percale Duvet Cover is woven from crisp &amp; breathable 100% long-staple cotton to keep you cool all night long." } }
Checkout
65 1/2 passed
Checkout
65-
Fix Cart permalink format works Important 50/100
GET /cart → 200. GET /cart/000:1 → 410.
How to fix: Support Shopify-style cart permalinks (/cart/{variantId}:{qty}) so agents can hand off pre-built carts.
Raw evidence
{ "cartStatus": 200, "permalinkStatus": 410 } -
Pass Checkout handoff URL accessible Important 80/100
GET /checkout → 301 (redirects to https://www.brooklinen.com/checkout).
Raw evidence
{ "status": 301, "location": "https://www.brooklinen.com/checkout" }
Discoverability
48 1/3 passed
Discoverability
48-
Fix robots.txt with AI bot rules Important 20/100
robots.txt found. AI bots referenced: none. Sitemap directive: yes.
How to fix: Add explicit User-agent entries for GPTBot, ClaudeBot, PerplexityBot.
Raw evidence
{ "aiBotsFound": [], "hasSitemap": true, "sizeBytes": 3630 } -
Pass sitemap.xml present and valid Important 100/100
Valid sitemap found.
Raw evidence
{ "sizeBytes": 882 } -
Fix Hreflang / locale signals on homepage Nice-to-have 0/100
No hreflang link tags on the homepage.
How to fix: Add <link rel="alternate" hreflang="…"> tags for each supported locale plus x-default. Agents use these to pick the right regional storefront.
Raw evidence
{ "langs": [] }
Content
100 2/2 passed
Content
100-
Pass llms.txt manifest for agents Nice-to-have 100/100
llms.txt present (4296 bytes).
Raw evidence
{ "sizeBytes": 4296 } -
Pass Markdown content negotiation on homepage Nice-to-have 100/100
Server honors Accept: text/markdown (Content-Type: text/markdown; charset=utf-8).
Raw evidence
{ "contentType": "text/markdown; charset=utf-8", "status": 200 }
Watch this store for changes
Share this
Show badge embed code
<a href="https://isyourstoreagentready.com/scan/brooklinen.com"> <img src="https://isyourstoreagentready.com/badge/brooklinen.com.svg" alt="Agent readiness: D 45" /> </a>