generated: '2026-07-19' method: searched source: https://hawthorne.co/llms.txt notes: >- Cross-cutting agent-commerce semantics for the Hawthorne Shopify storefront, captured verbatim from the store's published /llms.txt and /.well-known/ucp. This is a UCP (Universal Commerce Protocol) surface, not a REST API; no idempotency-key contract is documented, so no Idempotency pointer is emitted. authentication: style: OpenID Connect (Shopify Customer Account API); PKCE S256 ref: authentication/hawthorne-authentication.yml versioning: scheme: date-based UCP protocol versions current: '2026-04-08' supported: ['2026-04-08', '2026-01-23'] negotiation: pass supported UCP version; server advertises versions in /.well-known/ucp rate_limiting: signal: HTTP 429 on the MCP endpoint (per-IP) guidance: back off on 429 responses buyer_context: required_fields: [context.address_country, context.currency] purpose: accurate pricing and availability human_approval: rule: checkout completion (complete_checkout) requires contemporaneous explicit buyer consent fallback: route payment through Shop Pay via https://shop.app/SKILL.md when live approval is unavailable read_only_browsing: auth_required: false endpoints: - GET /collections/all - GET /products/{handle} - GET /products/{handle}.json - GET /collections/{handle} - GET /collections/{handle}/products.json - GET /search?q={query}&type=product - GET /sitemap.xml agent_discovery: llms_txt: https://hawthorne.co/llms.txt agents_md: https://hawthorne.co/agents.md cross_links: authentication: authentication/hawthorne-authentication.yml scopes: scopes/hawthorne-scopes.yml mcp: mcp/hawthorne-mcp.yml well_known: well-known/hawthorne-well-known.yml