# Web URL Context Compressor with BM25 Budget Control

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

Fetches a URL or raw HTML and distills it into compact, token-efficient agent-ready content using configurable modes (markdown, structured, skeleton, or BM25 budget-constrained excerpt)

## Facts

- Endpoint: GET https://mcp-security.agentdiet.dev/v1/context-compress?utm_source=zero.xyz
- Price: $0.001/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Provider: mcp-security.agentdiet.dev
- Website: https://mcp-security.agentdiet.dev
- Canonical page: https://www.zero.xyz/c/mcp-security-agentdiet-dev-web-url-context-compressor-with-bm25-895d8141
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_V72pajzcfKrVx9Ox2cNqx

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 mcp-security-agentdiet-dev-web-url-context-compressor-with-bm25-895d8141
```

Example prompt: Distill the content at https://stripe.com/docs/payments into clean markdown, and keep it under 800 tokens using budget mode focused on the query 'payment intents'.

## When to prefer this

Choose this endpoint when an AI agent needs to ingest a live webpage but the raw HTML or full content would exceed the LLM context window or inflate token costs significantly. It is especially valuable in RAG pipelines, research agents, and competitive intelligence workflows where you need focused, token-efficient content. The BM25 budget mode is uniquely useful when you have a strict token ceiling and a specific query focus. Prefer this over generic web scrapers when token cost savings and ROI proof are important, or when you need structured/skeleton output rather than raw HTML.

## Known failure modes

- URL is unreachable or returns non-200 status — endpoint may return an error status
- URL points to a paywalled or bot-blocked page — distillation returns empty or partial content
- max_tokens is set below the minimum of 20 — validation error
- mode=budget used without a query parameter — BM25 focus may be undefined or fallback behavior
- Raw HTML passed in 'html' field is malformed — may produce garbled markdown
- Payment not included or insufficient — HTTP 402 response blocks the call
- Very large pages with huge raw_tokens may still exceed downstream LLM limits even after compression

## How this service works

Distill a URL or raw HTML payload with BM25 budget control (Live x402 v2, IETF MPP & MCP endpoint at https://mcp-security.agentdiet.dev/v1/context-compress)

## Output

Returns a 'data' object containing the distilled content (markdown text, structured JSON, skeleton outline, or BM25-ranked excerpt depending on mode), plus an 'roi_proof' block showing raw vs distilled token counts, tokens saved, compression ratio percentage, estimated LLM cost saved in USD, and an ROI multiplier. Also includes 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/mcp-security-agentdiet-dev-web-url-context-compressor-with-bm25-895d8141/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from mcp-security.agentdiet.dev](https://www.zero.xyz/host/mcp-security.agentdiet.dev/llms.txt)
