{"uid":"cap_hQUkeEYnUzVRp8Ug7C7iD","slug":"x402broker-com-web-url-distiller-with-bm25-budget-control-6322fc8e","name":"Web URL 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://x402broker.com/v1/pdf-extract)","url":"https://x402broker.com/v1/pdf-extract?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_4TaKTQSvZxwMn1MD4P6Lk","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":"x402broker.com","brandSlug":"x402broker-com-mpp","brandBaseUrl":"https://x402broker.com","brandDocsUrl":null,"whatItDoes":"Fetches a webpage URL (or processes raw HTML) and distills it into compact, agent-ready tokens with configurable modes including markdown, structured JSON, skeleton outline, or BM25-focused budget excerpts","exampleAgentPrompt":"Can you distill https://stripe.com/docs/payments into compact markdown, keeping it under 2000 tokens using budget mode focused on the query 'payment intents'?","exampleUseCases":[{"title":"LLM cost-efficient doc summarization","prompt":"Fetch https://docs.openai.com/guides/function-calling and distill it into structured mode so I can pass just the key tables and metadata to my LLM without burning through tokens."},{"title":"BM25 focused research excerpt","prompt":"Distill https://en.wikipedia.org/wiki/Transformer_(machine_learning_model) in budget mode with a max of 500 tokens, focused on the query 'attention mechanism' — I only want the most relevant chunk."},{"title":"Skeleton outline for navigation agent","prompt":"Give me a skeleton outline of https://news.ycombinator.com so my agent knows the structural layout of the page without reading all the content."}],"resultDescription":"Returns a 'data' object containing the distilled content (markdown text, structured tables/metadata, skeleton outline, or BM25-ranked excerpt depending on mode), along with an roi_proof block showing raw_tokens, distilled_tokens, tokens_saved, compression_ratio_pct, roi_multiplier, and llm_cost_saved_usd. Also includes cache status (HIT/MISS) and billing metadata.","failureModes":["Invalid or unreachable URL returns an error status","Token budget too small (max_tokens below 20) causes validation failure","BM25 query mode used without providing a 'query' parameter may return unfiltered content","Rate limiting or payment failure via x402 causes request rejection","Raw HTML input is malformed or empty, resulting in empty distilled output","Target page blocks automated fetching (e.g. bot detection, CAPTCHA walls)"],"whenToPreferThis":"Choose this endpoint when you need to feed web content to an LLM but want to minimize token consumption and cost. It is ideal when the source page is long or noisy and you only need the semantically relevant portion (use budget+query mode), or when you want structured tables and metadata rather than raw HTML. Prefer it over generic scrapers when you care about token ROI and need a ready-to-use compressed representation rather than raw page content.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:22:02.256Z","isFirstParty":false,"canonicalSlug":"x402broker-com-web-url-distiller-with-bm25-budget-control-6322fc8e"}