{"uid":"cap_3gsV1hXuIF8POTa-BquOO","slug":"token-intel-agentdiet-dev-article-extractor-with-bm25-budget-control-6f540f30","name":"Article Extractor 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://token-intel.agentdiet.dev/v1/article-extractor)","url":"https://token-intel.agentdiet.dev/v1/article-extractor?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_wizZ2r7mrDBzMTWDDoB-m","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":"token-intel.agentdiet.dev","brandSlug":"token-intel-agentdiet-dev-mpp","brandBaseUrl":"https://token-intel.agentdiet.dev","brandDocsUrl":null,"whatItDoes":"Fetches a URL or distills raw HTML into clean Markdown, structured JSON, skeleton outline, or a BM25-ranked token-budgeted excerpt for LLM consumption","exampleAgentPrompt":"Can you distill https://stripe.com/docs/payments/accept-a-payment into clean markdown and keep it under 2000 tokens — use budget mode with a query focused on 'payment integration steps'?","exampleUseCases":[{"title":"Compress docs page for LLM context","prompt":"Pull the content from https://docs.openai.com/api-reference/chat and distill it into markdown, keeping it under 1500 tokens — use budget mode with the query 'chat completions API parameters'."},{"title":"Extract article from paywalled-looking HTML","prompt":"I have raw HTML from a news article — can you distill it into clean readable markdown and strip out all the nav menus and ads?"},{"title":"Build structured outline from long report","prompt":"Fetch https://www.mckinsey.com/featured-insights/future-of-work/the-future-of-work-after-covid-19 and give me a skeleton outline of the document's main sections and headings."}],"resultDescription":"Returns a `data` object containing the distilled content (Markdown string, structured JSON tables/metadata, skeleton outline, or BM25-ranked excerpt depending on mode), plus an `roi_proof` block showing raw token count, distilled token count, tokens saved, compression ratio percentage, ROI multiplier, and estimated LLM cost saved in USD. Also includes a `cache` block (HIT/MISS) and billing details.","failureModes":["Invalid or unreachable URL returns a fetch error","max_tokens too low (below 20) causes validation rejection","query field required but missing when mode=budget","Raw HTML too large may hit processing limits","Payment failure via x402 results in 402 response before distillation occurs","URL behind authentication/paywalls may return incomplete content"],"whenToPreferThis":"Choose this endpoint when you need to preprocess web content for LLM consumption and want to minimize token usage and API costs. It is especially valuable when working with long articles, documentation pages, or HTML payloads that need to be trimmed to a strict token budget using BM25 relevance ranking. Prefer this over generic scrapers when you need ROI metrics (tokens saved, compression ratio) alongside distilled content, or when you need multiple output modes (Markdown, structured, skeleton, budget excerpt) from a single service.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-23T06:34:50.071Z","isFirstParty":false,"canonicalSlug":"token-intel-agentdiet-dev-article-extractor-with-bm25-budget-control-6f540f30"}