{"uid":"cap_-dmbZibLwVHa_8Rx7QWmL","slug":"serp-extract-agentdiet-dev-web-page-distiller-with-bm25-budget-control-e68bd18e","name":"Web Page 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://serp-extract.agentdiet.dev/v1/docs-to-markdown)","url":"https://serp-extract.agentdiet.dev/v1/docs-to-markdown?utm_source=zero.xyz","method":"POST","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_Yz2C4e9oxt-0-dpObY27V","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":"serp-extract.agentdiet.dev","brandSlug":"serp-extract-agentdiet-dev-mpp","brandBaseUrl":"https://serp-extract.agentdiet.dev","brandDocsUrl":null,"whatItDoes":"Fetches a URL or accepts raw HTML and converts it to distilled Markdown, structured JSON, skeleton outline, or BM25-focused budget excerpt with token compression metrics","exampleAgentPrompt":"Fetch https://docs.stripe.com/payments/quickstart and distill it into clean markdown using budget mode, focused on 'payment intent setup', keeping it under 2000 tokens so I can drop it into my LLM context.","exampleUseCases":[{"title":"LLM context-aware doc ingestion","prompt":"Pull the content from https://platform.openai.com/docs/api-reference and distill it in budget mode with the query 'streaming completions', capped at 1500 tokens — I need just the relevant parts for my LLM prompt."},{"title":"Raw HTML cleanup for agent pipeline","prompt":"I've got a big raw HTML blob from a scraped product page — can you distill it down to clean markdown so my agent can read it without burning through tokens?"},{"title":"Structured data extraction from webpage","prompt":"Go to https://en.wikipedia.org/wiki/List_of_S%26P_500_companies and extract the content in structured mode so I get the tables and metadata as JSON I can work with."}],"resultDescription":"Returns a JSON object with a 'data' field containing the distilled content (Markdown text, structured JSON tables/metadata, skeleton outline, or BM25-focused excerpt depending on mode), plus an 'roi_proof' block showing raw token count, distilled token count, tokens saved, compression ratio percentage, estimated LLM cost saved in USD, and ROI multiplier. Also includes optional cache status (HIT/MISS) and billing metadata.","failureModes":["Invalid or unreachable URL returns fetch error","HTML too large may hit processing limits","BM25 budget mode requires both 'query' and 'max_tokens' fields","max_tokens set too low (below 20) rejected by schema validation","Rate limiting or payment failure returns HTTP 402","Malformed HTML input may produce incomplete distillation"],"whenToPreferThis":"Choose this endpoint when you need to ingest webpage content into an LLM context efficiently — especially when token budget matters. It excels over raw fetch+parse approaches by providing BM25-ranked budget mode that surfaces only query-relevant content, built-in compression metrics, and multiple output modes (markdown, structured, skeleton). Prefer it over generic scraping APIs when you need LLM-ready output with measurable token savings rather than raw HTML dumps.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-23T06:35:50.724Z","isFirstParty":false,"canonicalSlug":"serp-extract-agentdiet-dev-web-page-distiller-with-bm25-budget-control-705ae0b1"}