# AgentDiet Web URL Context Distiller

> AgentDiet Web URL Context Distiller is a paid API for AI agents from onchain-risk.agentdiet.dev, paid per call via MPP, $0.001/call, status unknown (last checked 2026-10-21).

Fetches and distills a web URL or raw HTML into compact, agent-ready tokens with multiple extraction modes and BM25 budget control

## Facts

- Endpoint: GET https://onchain-risk.agentdiet.dev/v1/context-diet?utm_source=zero.xyz
- Price: $0.001/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Provider: onchain-risk.agentdiet.dev
- Website: https://onchain-risk.agentdiet.dev
- Canonical page: https://www.zero.xyz/c/onchain-risk-agentdiet-dev-agentdiet-web-url-context-distiller-1503c848
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_I_AUqlCx0cKrrLOoSQRbz

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 onchain-risk-agentdiet-dev-agentdiet-web-url-context-distiller-1503c848
```

Example prompt: Can you distill https://stripe.com/docs/api into compact markdown and keep it under 2000 tokens, focusing on payment intents?

## When to prefer this

Choose this endpoint when an AI agent needs to read web content but must stay within a token budget — especially when you want provable compression ROI (tokens saved, cost saved). Prefer it over raw web scraping when downstream LLM cost matters, or when you need structured or skeleton extraction modes rather than full HTML dumps. The BM25 budget mode is uniquely useful for query-focused extraction from long documents.

## Known failure modes

- Invalid or unreachable URL returns an error status
- Token budget too low (max_tokens < 20) rejected with validation error
- Mode set to 'budget' without providing a query may produce unfocused results
- Raw HTML too large may hit internal limits
- Payment failure via x402 results in 402 response before distillation occurs
- Network timeout fetching the target URL

## How this service works

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

## Output

Returns a 'data' object containing the distilled content (Markdown, structured JSON tables/metadata, skeleton outline, or BM25 budget excerpt depending on mode), plus an roi_proof block showing raw_tokens, distilled_tokens, tokens_saved, compression_ratio_pct, roi_multiplier, and llm_cost_saved_usd. Also includes 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/onchain-risk-agentdiet-dev-agentdiet-web-url-context-distiller-1503c848/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from onchain-risk.agentdiet.dev](https://www.zero.xyz/host/onchain-risk.agentdiet.dev/llms.txt)
