fetch
Retrieve the main content of a single URL as reader-mode Markdown or JSON. Ideal when you already have a URL and need clean text for verifying claims, avoiding ads, nav, or scripts. Supports caching and custom rendering for JavaScript-heavy pages.
Instructions
Fetch one URL and return reader-mode Markdown of the main content.
Best for:
- You already have a URL (from `search`, the user, or your own knowledge)
and need the actual page text.
- Verifying a single claim by reading the source.
- Pages that need reader-mode cleanup (nav/footer/scripts stripped).
Not recommended for:
- Multiple URLs at once -> use `fetch_batch` (concurrent, one round-trip).
- "Search then read top N" -> use `research` (one call, not two).
- PDF/DOCX URLs -> use `read_doc` (proper binary parsing).
- You don't have a URL yet -> use `search` first.
Returns:
- markdown (default): a small header (URL, render method, token count)
plus the cleaned page body.
- json: {url, title, content, method, truncated, tokens_estimated,
author, published_date, sitename}.
Common mistakes:
- Passing a search query instead of a URL.
- Using `render="http"` on a JS-only SPA — it returns near-empty content;
use "auto" (default) or "browser".
- Forgetting that results are cached 7 days — use `force_refresh=True`
or `max_age_hours=0` for a fresh pull.
Args:
url: Absolute http(s) URL.
render: "auto" (try HTTP, fall back to stealth Chromium), "http"
(fast, fails on JS), "browser" (slow, robust).
force_refresh: Bypass the page cache entirely.
max_age_hours: Treat cached pages older than this as a miss. 0 = same
as force_refresh. None = server default TTL (7 days).
format: "markdown" or "json".Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| render | No | auto | |
| force_refresh | No | ||
| max_age_hours | No | ||
| format | No | markdown |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |