{"uid":"cap_TwOUaQH9rSfb-xtPHMu1a","slug":"github-audit-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-0bf90a68","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://github-audit.agentdiet.dev/v1/html-to-markdown)","url":"https://github-audit.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 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_uGP7vDiy1eWv3szn7fb71","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":"github-audit.agentdiet.dev","brandSlug":"github-audit-agentdiet-dev-mpp","brandBaseUrl":"https://github-audit.agentdiet.dev","brandDocsUrl":null,"whatItDoes":"Fetches a web URL (or accepts raw HTML) and distills it into compact, agent-ready Markdown, structured JSON, skeleton outline, or BM25-ranked token-budgeted excerpts","exampleAgentPrompt":"Fetch https://stripe.com/docs/payments/accept-a-payment and distill it into compact markdown using budget mode focused on 'payment intent setup', keeping it under 500 tokens.","exampleUseCases":[{"title":"Compress docs page for LLM context","prompt":"Distill https://docs.openai.com/api-reference/chat into markdown and keep it under 800 tokens — I need to fit it inside my agent's context window without blowing the budget."},{"title":"Extract structured data from a landing page","prompt":"Take the HTML from this SaaS pricing page at https://linear.app/pricing and convert it into structured JSON tables so I can parse the plan tiers and costs."},{"title":"BM25-focused research excerpt","prompt":"Fetch https://en.wikipedia.org/wiki/Transformer_(machine_learning_model) and give me only the sections most relevant to 'attention mechanism', strict 300 token ceiling in budget mode."}],"resultDescription":"Returns a distilled payload in the requested mode (Markdown text, structured JSON with tables/metadata, a skeleton outline, or a BM25-ranked excerpt), along with an ROI proof object showing raw token count, distilled token count, tokens saved, compression ratio percentage, estimated LLM cost saved in USD, and optional billing and cache metadata.","failureModes":["Invalid or unreachable URL returns a fetch error with status != ok","max_tokens below minimum (20) causes a validation error","BM25 query provided without mode=budget may be ignored","Raw HTML too large may exceed processing limits","Paywalled or bot-blocked pages may return empty or partial content","Missing required 'url' parameter returns a 422 validation error","x402 payment failure returns HTTP 402 with payment details"],"whenToPreferThis":"Choose this endpoint when an AI agent needs to ingest web content efficiently without blowing its token budget — especially when the raw HTML would be too verbose for direct LLM consumption. It is ideal for agentic pipelines that need to read documentation, extract structured data from web pages, or focus on specific topics within a large page using BM25 ranking. Prefer it over generic scraping tools when token cost reduction and ROI measurement matter.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:20:50.755Z","isFirstParty":false,"canonicalSlug":"github-audit-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-0bf90a68"}