Engineering Blueprint: Serving /llms.txt, /pricing.md & /ai/summary.json Without SPA Soft-404s
Updated 2026-10-31 · Empirical telemetry across 507 B2B SaaS domains

Modern React, Vite, and Next.js marketing sites frequently return HTTP 200 text/html catch-all shells on unknown routes instead of deterministic plain text or JSON. When OAI-SearchBot, ClaudeBot, or PerplexityBot requests /llms.txt, /pricing.md, or /ai/summary.json, receiving a 290.4 KB HTML shell with 27.9 client scripts causes retrieval pipelines to drop citation confidence or hallucinate pricing tiers.

1. Required Deterministic Agent Endpoints (10 Routes)

RouteContent-TypeRetrieval PurposeMissing Across 507 SaaS Domains
/llms.txt & /llms-full.txttext/plain; charset=utf-8Canonical entity summary & full technical corpus27.6% missing /llms.txt
/pricing.md & /answers.mdtext/markdown; charset=utf-8Exact USD fee schedule & 50-word factual answers78.7% missing
/ai/summary.json & /ai/faq.jsonapplication/json; charset=utf-8Typed entity attributes, SOC2/SLA facts & Q&A100.0% missing
/.well-known/ai.txt & mcp.jsontext/plain / application/json27-crawler permissions, WebMCP & OpenAPI 3.1 links>98% missing

2. Zero-Origin Edge Interception Pattern (<15ms)

Intercept agent discovery routes at your CDN edge (Cloudflare Worker, Vercel middleware.ts, or Nginx) before requests hit your SPA router, and append RFC 8288 Link: </llms.txt>; rel="llms-txt" headers on HTML responses. Every pre-built teardown in our 507-domain index includes copy-pasteable routers for all 3 stacks.

[ Test Your Domain for Soft-404s Live → ] [ Have ASO Studio Ship Your 26-File Bundle ($1,490 · Pay $0 Today) ]