# AgentDiet Web URL Distiller

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

Fetches a URL or raw HTML and compresses it into compact, agent-ready tokens using BM25 budget control and multiple distillation modes

## Facts

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

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 defi-yield-agentdiet-dev-agentdiet-web-url-distiller-aee6a040
```

Example prompt: Can you distill https://docs.stripe.com/payments/accept-a-payment into compact markdown, keeping it under 800 tokens and focusing on the payment flow steps?

## When to prefer this

Choose this endpoint when your agent needs to read web pages but must stay within strict token budgets or minimize LLM costs. It is especially valuable in agentic pipelines where multiple URLs need to be processed cheaply, or when you want BM25-focused excerpts rather than full-page content. Prefer it over raw HTTP fetching when you need automatic compression, structured extraction, or skeleton outlines without building your own HTML parser.

## Known failure modes

- URL is unreachable or returns non-200 status — endpoint may return an error status
- URL requires authentication or JavaScript rendering — content may be incomplete or empty
- max_tokens ceiling too low — may produce truncated or minimal output
- BM25 query in budget mode returns no relevant matches — excerpt may be empty
- Raw HTML field and URL both provided — behavior may be undefined or one takes precedence
- Payment failure via x402 — request blocked with 402 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://defi-yield.agentdiet.dev/api/diet)

## Output

Returns a JSON object with a 'data' field containing the distilled content (markdown, structured JSON, skeleton outline, or BM25 excerpt depending on mode), an 'roi_proof' object showing raw vs. distilled token counts, compression ratio, and estimated LLM cost saved in USD, plus 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/defi-yield-agentdiet-dev-agentdiet-web-url-distiller-aee6a040/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from defi-yield.agentdiet.dev](https://www.zero.xyz/host/defi-yield.agentdiet.dev/llms.txt)
