{"uid":"cap_CppSvGKQAW0Mn6Cl7S6g0","slug":"preflight-agentdiet-dev-web-url-distiller-with-bm25-budget-control-40546ea5","name":"Web URL Distiller with BM25 Budget Control","description":"Distill a URL or raw HTML payload with BM25 budget control (Live x402 v2, IETF MPP & MCP endpoint at https://preflight.agentdiet.dev/v1/spa-markdown-reader)","url":"https://preflight.agentdiet.dev/v1/spa-markdown-reader?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","minLength":1,"description":"Target webpage URL to fetch and distill (or builtin://stripe-docs)"},"html":{"type":"string","description":"Optional raw HTML string to distill directly without fetching"},"mode":{"enum":["markdown","structured","skeleton","budget"],"type":"string","default":"markdown","description":"Distillation mode"},"query":{"type":"string","description":"BM25 focus query when mode=budget"},"max_tokens":{"type":"integer","minimum":20,"description":"Strict token budget ceiling when mode=budget"}}},"responseSchema":{"type":"object","required":["status","roi_proof","data"],"properties":{"data":{"type":"object","description":"Distilled Markdown, structured JSON tables/metadata, skeleton outline, or BM25 budget excerpt."},"cache":{"type":"object","properties":{"status":{"enum":["HIT","MISS"],"type":"string"},"cache_key":{"type":"string"},"latency_ms":{"type":"number"}}},"status":{"type":"string","description":"Execution status ('ok')"},"billing":{"type":"object","properties":{"agent_id":{"type":"string"},"payment_method":{"type":"string"},"fee_charged_usd":{"type":"number"}}},"roi_proof":{"type":"object","properties":{"raw_tokens":{"type":"integer"},"tokens_saved":{"type":"integer"},"roi_multiplier":{"type":"number"},"distilled_tokens":{"type":"integer"},"llm_cost_saved_usd":{"type":"number"},"compression_ratio_pct":{"type":"number"}}}}},"example":null,"exampleRequest":null,"tags":[],"displayCostAmount":"0.001","displayCostAsset":"USD","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.001/call","primary":{"kind":"static","protocol":"mpp","network":"tempo","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"mpp","network":"tempo","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_CgVkyq3gGC5LHuBpEAyno","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":"preflight.agentdiet.dev","brandSlug":"preflight-agentdiet-dev-mpp","brandBaseUrl":"https://preflight.agentdiet.dev","brandDocsUrl":null,"whatItDoes":"Fetches a URL or raw HTML and distills it into compact, agent-ready Markdown, structured JSON, skeleton outline, or BM25-ranked token-budgeted excerpts","exampleAgentPrompt":"Distill https://docs.stripe.com/payments into compact markdown using budget mode, focused on 'payment intents', and keep it under 500 tokens.","exampleUseCases":[{"title":"Compress documentation for LLM context","prompt":"Fetch the OpenAI API docs at https://platform.openai.com/docs/api-reference and distill them into clean markdown so I can include them in my prompt without blowing my context window."},{"title":"BM25 budget excerpt for research query","prompt":"I need the most relevant content from https://en.wikipedia.org/wiki/Transformer_(machine_learning_model) about 'attention mechanisms' — use budget mode and cap it at 300 tokens so it's cheap to process."},{"title":"Extract structured tables from a webpage","prompt":"Pull https://aws.amazon.com/ec2/pricing/ and give me the pricing data as structured JSON tables — I want the instance types and costs organized so my agent can compare them."}],"resultDescription":"Returns a JSON object with a 'data' field containing the distilled content (Markdown text, structured JSON tables/metadata, skeleton outline, or BM25-ranked excerpt depending on mode), plus an 'roi_proof' object showing raw vs distilled token counts, tokens saved, compression ratio percentage, ROI multiplier, and estimated LLM cost saved in USD. Also includes cache hit/miss status and billing details.","failureModes":["Invalid or unreachable URL returns an error status","URL behind authentication or paywalls may return empty or partial content","max_tokens below 20 is rejected by schema validation","BM25 query required when mode=budget but may be omitted causing fallback behavior","Rate limits or payment failures return HTTP 402 requiring x402 micropayment","Raw HTML too large may exceed processing limits","Dynamically rendered SPAs may not fully execute JavaScript before capture"],"whenToPreferThis":"Choose this endpoint when you need to reduce the token footprint of web content before feeding it to an LLM — especially when dealing with large documentation pages, news articles, or HTML dumps. The BM25 budget mode is uniquely valuable when you have a specific query focus and a hard token ceiling, letting you extract only the most relevant passages. Prefer this over generic scrapers when token cost savings and compression ROI metrics matter to your workflow, or when you need structured JSON tables or skeleton outlines rather than raw HTML.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:24:44.740Z","isFirstParty":false,"canonicalSlug":"preflight-agentdiet-dev-web-url-distiller-with-bm25-budget-control-40546ea5"}