# Web URL to Markdown Distiller with BM25 Budget Control

> Web URL to Markdown Distiller with BM25 Budget Control is a paid API for AI agents from shopify-spy.agentdiet.dev, paid per call via MPP, $0.001/call, status unknown (last checked 2026-10-21).

Fetches a webpage or raw HTML and converts it into compact, token-efficient Markdown (or structured/skeleton/budget excerpts) with BM25-ranked content filtering and token ceiling enforcement.

## Facts

- Endpoint: GET https://shopify-spy.agentdiet.dev/v1/docs-to-markdown?utm_source=zero.xyz
- Price: $0.001/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Provider: shopify-spy.agentdiet.dev
- Website: https://shopify-spy.agentdiet.dev
- Canonical page: https://www.zero.xyz/c/shopify-spy-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-b9420bed
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_5g_bkDsyrd0ca4z5imGVA

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 shopify-spy-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-b9420bed
```

Example prompt: Fetch https://docs.stripe.com/api and distill it into compact markdown using budget mode focused on 'payment intents', keeping it under 800 tokens.

## When to prefer this

Choose this endpoint when an AI agent needs to ingest a live webpage or raw HTML but must stay within a strict token budget or minimize LLM inference costs. It is especially valuable for processing long documentation pages, product pages, or articles where only the most relevant sections (controlled via BM25 query) are needed. Prefer this over generic web scrapers when token efficiency and compression ROI metrics are important to the agent's operation.

## Known failure modes

- Invalid or unreachable URL returns an error status
- HTML too large or malformed may produce poor distillation quality
- BM25 budget mode with a very low max_tokens ceiling may truncate critical content
- Rate limiting or payment failure (x402) blocks the request
- mode=budget without a query parameter may fall back to simple truncation

## How this service works

Distill a URL or raw HTML payload with BM25 budget control (Live x402 v2, IETF MPP & MCP endpoint at https://shopify-spy.agentdiet.dev/v1/docs-to-markdown)

## Output

Returns a JSON object containing the distilled content (Markdown text, structured JSON tables, skeleton outline, or BM25-ranked excerpt depending on mode), an ROI proof block showing raw vs. distilled token counts, compression ratio, and estimated LLM cost saved, plus optional cache hit/miss status and billing metadata.

## 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/shopify-spy-agentdiet-dev-web-url-to-markdown-distiller-with-bm25-b9420bed/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from shopify-spy.agentdiet.dev](https://www.zero.xyz/host/shopify-spy.agentdiet.dev/llms.txt)
