{"uid":"cap_vCpGyXoL9Hr5NyZnLstbo","slug":"serp-extract-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-16204784","name":"Web URL to Markdown Distiller with BM25 Budget Control","description":"Distill a web URL into compact agent-ready tokens (Live x402 v2, IETF MPP & MCP endpoint at https://serp-extract.agentdiet.dev/v1/html-to-markdown)","url":"https://serp-extract.agentdiet.dev/v1/html-to-markdown?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","minLength":1,"description":"Target webpage URL to distill (or builtin://stripe-docs)"},"mode":{"enum":["markdown","structured","skeleton","budget"],"type":"string","default":"markdown","description":"Extraction mode: markdown, structured, skeleton, or budget"},"limit":{"type":"integer","default":20,"maximum":100,"minimum":1,"description":"Maximum number of items to return per page (1-100)"},"query":{"type":"string","description":"BM25 focus query when mode=budget"},"cursor":{"type":"string","description":"Opaque pagination cursor for fetching the next page"},"max_tokens":{"type":"integer","minimum":20,"description":"Strict token 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_CbE2GaZ83QYWxl-yXMmc1","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 webpage URL (or processes raw HTML) and distills it into compact, agent-ready Markdown or structured output with optional BM25-ranked token budget control.","exampleAgentPrompt":"Can you fetch https://docs.stripe.com/payments and distill it into compact markdown, keeping it under 2000 tokens and focusing on the topic 'payment intents'?","exampleUseCases":[{"title":"Research article compression for RAG pipeline","prompt":"Grab https://en.wikipedia.org/wiki/Transformer_(machine_learning_model) and distill it into markdown under 1500 tokens, focused on the query 'attention mechanism' — I need it compact enough to fit in my context window."},{"title":"Structured data extraction from product page","prompt":"Fetch https://www.apple.com/iphone/ and extract it in structured mode so I get the product details, pricing, and specs as JSON tables rather than raw prose."},{"title":"Skeleton outline of a long documentation page","prompt":"Distill https://docs.python.org/3/library/asyncio.html into skeleton mode so I can see just the section headings and structure without all the body text."}],"resultDescription":"Returns a JSON object containing distilled content (Markdown, structured JSON tables/metadata, skeleton outline, or BM25 budget excerpt), an roi_proof block with raw token count, distilled token count, tokens saved, compression ratio percentage, and estimated LLM cost saved in USD, plus optional billing and cache metadata.","failureModes":["Invalid or unreachable URL returns an error status","mode=budget without a query or max_tokens may return unfiltered content","Very large pages may hit processing limits or return partial results","Raw HTML injection (html field) with malformed markup may degrade distillation quality","Pages behind authentication or paywalls will fail to fetch","Token ceiling too low (below 20) is rejected by schema validation"],"whenToPreferThis":"Choose this endpoint when an AI agent needs to read a web page but wants to minimize token consumption — especially when dealing with long, boilerplate-heavy pages. It is ideal for RAG pipelines, agentic browsing loops, and any scenario where fitting web content into a limited context window is critical. The BM25 budget mode makes it uniquely suitable when only the most query-relevant passages from a page are needed.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:24:37.434Z","isFirstParty":false,"canonicalSlug":"serp-extract-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-16204784"}