{"uid":"cap_YV-18EEZLq6ClMp67WgBo","slug":"onchain-risk-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-359ae249","name":"Web URL to Markdown 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://onchain-risk.agentdiet.dev/v1/docs-to-markdown)","url":"https://onchain-risk.agentdiet.dev/v1/docs-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 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_g20DLY-hMz5stRUxtGeSg","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 webpage or raw HTML and converts it into compact, agent-ready Markdown, structured JSON, skeleton outline, or BM25-focused token-budgeted excerpts","exampleAgentPrompt":"Can you fetch the Stripe pricing page at https://stripe.com/pricing and distill it into compact markdown, keeping it under 500 tokens and focusing on the query 'transaction fees'?","exampleUseCases":[{"title":"Documentation page for agent context","prompt":"Grab the OpenAI API reference at https://platform.openai.com/docs/api-reference and distill it into structured JSON tables so I can feed it into my agent without blowing my token budget."},{"title":"Budget-capped competitor research","prompt":"Fetch https://www.notion.so/pricing and distill it in budget mode with the query 'team plan cost', capping it at 300 tokens so I only get the relevant pricing info."},{"title":"Skeleton outline of long article","prompt":"Take this URL https://en.wikipedia.org/wiki/Large_language_model and give me a skeleton outline of the page structure so I can quickly navigate what topics are covered."}],"resultDescription":"Returns a JSON object with a 'data' field containing the distilled content (Markdown text, structured tables/metadata, skeleton outline, or BM25-focused excerpt depending on mode), an 'roi_proof' object showing raw vs distilled token counts, compression ratio, tokens saved, and estimated LLM cost saved in USD, plus optional cache hit/miss status and billing details.","failureModes":["Invalid or unreachable URL returns an error status","URL blocked by robots.txt or requires authentication results in empty or error response","max_tokens set too low may return truncated or minimal content","mode=budget without a query parameter may fall back to default behavior","Rate limiting or payment failure (HTTP 402) if USDC payment is not provided","Very large pages may exceed processing limits or take longer than expected"],"whenToPreferThis":"Choose this endpoint when you need to pass web content to an LLM and want to minimize token consumption and cost — especially for long documentation pages, competitor sites, or research URLs. It is ideal when you have a strict token budget (mode=budget with max_tokens) or need structured extraction (mode=structured) rather than raw HTML. Prefer this over generic scrapers when token efficiency and LLM-readiness matter, or when you need BM25-ranked relevance filtering around a specific query.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:24:36.110Z","isFirstParty":false,"canonicalSlug":"onchain-risk-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-359ae249"}