# Web Page & HTML Distillation with BM25 Budget Control

> Web Page & HTML Distillation with BM25 Budget Control is a paid API for AI agents from company-enrich.agentdiet.dev, paid per call via MPP, $0.001/call, status unknown (last checked 2026-10-23).

Fetches a URL or accepts raw HTML and distills it into clean Markdown, structured JSON, skeleton outline, or a BM25-ranked token-budget excerpt for RAG pipelines

## Facts

- Endpoint: POST https://company-enrich.agentdiet.dev/v1/rag-chunk?utm_source=zero.xyz
- Price: $0.001/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Provider: company-enrich.agentdiet.dev
- Website: https://company-enrich.agentdiet.dev
- Canonical page: https://www.zero.xyz/c/company-enrich-agentdiet-dev-web-page-html-distillation-with-bm25-c7df435e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Hw_G-ovYSrR5zQ8b2nqQ3

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability company-enrich-agentdiet-dev-web-page-html-distillation-with-bm25-c7df435e -d '<json body>'
```

Example prompt: Distill https://stripe.com/docs/api into clean markdown using budget mode focused on 'payment intents', and keep it under 1500 tokens so I can use it in my RAG pipeline without burning through my LLM context.

## When to prefer this

Choose this endpoint when you need to reduce the token footprint of web content before passing it to an LLM, especially for RAG pipelines where context windows are limited. It is ideal when you want BM25-ranked excerpts focused on a specific query topic, or when you need structured extraction (tables, metadata) rather than raw HTML. Prefer it over generic web scrapers when token budget control and compression ROI reporting are important to your pipeline economics.

## Known failure modes

- URL is unreachable or returns a non-200 status — endpoint may return an error status
- Raw HTML is malformed or empty — distillation may produce minimal or empty output
- Token budget (max_tokens) set too low for meaningful content — may return truncated or empty excerpt
- BM25 query provided without mode=budget — query may be ignored
- Missing required 'url' field — returns validation error
- Payment not completed via x402 — request rejected with 402 Payment Required
- Rate limiting or upstream fetch timeout — may return error status

## How this service works

Distill a URL or raw HTML payload with BM25 budget control (Live x402 v2, IETF MPP & MCP endpoint at https://company-enrich.agentdiet.dev/v1/rag-chunk)

## Output

Returns a JSON object with a 'data' field containing the distilled content (Markdown string, structured JSON tables/metadata, skeleton outline, or BM25-ranked excerpt depending on mode), plus an 'roi_proof' object showing raw_tokens, distilled_tokens, tokens_saved, compression_ratio_pct, and llm_cost_saved_usd. Also includes optional cache hit/miss status and billing details.

## Request schema (JSON Schema)

```json
{
 "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"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "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"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/company-enrich-agentdiet-dev-web-page-html-distillation-with-bm25-c7df435e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from company-enrich.agentdiet.dev](https://www.zero.xyz/host/company-enrich.agentdiet.dev/llms.txt)
