{"uid":"cap_M5DDzVOMBxPqnHoClRcCF","slug":"onchain-risk-agentdiet-dev-web-distill-with-bm25-budget-control-6d91b3b6","name":"Web Distill 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://onchain-risk.agentdiet.dev/v1/distill)","url":"https://onchain-risk.agentdiet.dev/v1/distill?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_zqZWlip4e4pBRSZ57z7Bn","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":"onchain-risk.agentdiet.dev","brandSlug":"onchain-risk-agentdiet-dev-mpp","brandBaseUrl":"https://onchain-risk.agentdiet.dev","brandDocsUrl":null,"whatItDoes":"Fetches a URL or accepts raw HTML and distills it into compact, token-efficient content using BM25 ranking with strict token budget control","exampleAgentPrompt":"Distill the content at https://docs.stripe.com/payments into compact markdown, focusing on 'payment intents', and keep it under 1000 tokens using budget mode so I don't blow my context window.","exampleUseCases":[{"title":"Token-budget Stripe docs extraction","prompt":"Fetch the Stripe docs page at https://docs.stripe.com/api/charges and distill only the parts about 'refund processing' in budget mode, capped at 500 tokens, so my agent can answer questions without running out of context."},{"title":"Competitor pricing page summarization","prompt":"Grab the pricing page at https://openai.com/pricing and distill it into structured markdown so I can see all the plan tiers and costs without reading the whole page."},{"title":"Raw HTML newsletter condensing","prompt":"I have a raw HTML email newsletter — distill it into a skeleton outline mode so I can quickly see the main topics covered without processing the full content."}],"resultDescription":"Returns a distilled version of the webpage or HTML in the requested format (markdown, structured JSON, skeleton outline, or BM25 budget excerpt), plus an roi_proof object showing raw vs. distilled token counts, compression ratio, tokens saved, and estimated LLM cost saved in USD. Also includes cache status (HIT/MISS) and billing details.","failureModes":["URL unreachable or returns non-200 status — distillation fails with error status","Token budget too low (below 20) — rejected by schema validation","Invalid mode enum value — request rejected","HTML payload empty or malformed — poor distillation quality","BM25 query missing when mode=budget — may return unranked or full content","Rate limiting or payment failure via x402 — call blocked"],"whenToPreferThis":"Choose this endpoint when you need to feed webpage content into an LLM but want to minimize token usage and cost. It is especially valuable when you have a specific query focus (use mode=budget with BM25 ranking) and need to stay within a strict token ceiling. Prefer it over generic scrapers when ROI metrics (tokens saved, cost saved) matter to your workflow, or when you need structured/skeleton output rather than raw HTML.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-23T06:30:51.370Z","isFirstParty":false,"canonicalSlug":"onchain-risk-agentdiet-dev-web-distill-with-bm25-budget-control-6d91b3b6"}