web_url_read
Fetch a URL and get readable markdown content, converting HTML, JSON, PDFs, and more. Use options to extract a specific section or list headings for targeted reading.
Instructions
Fetches a URL and returns readable content as markdown. Content-type aware: HTML is converted to markdown; JSON is pretty-printed; plain text, YAML, TOML, and XML are returned as fenced readable text. PDF text extraction is supported with bounded input, output, page count, time, concurrency, and memory; OCR is not supported. Binary, media, archive, and octet-stream downloads other than PDFs are intentionally rejected instead of being returned as raw bytes. When the operator configures browser solvers, mcp-searxng attempts FlareSolverr first and then Byparr only after a busy or transient-unavailable acquisition; cache hits bypass acquisition and a final busy or unavailable provider uses one uncached direct-fetch fallback. Three modes: (1) Full content — omit filtering params; use startChar/maxLength to paginate large pages. (2) Section extraction — set section to return content under a specific heading. (3) Headings only — set readHeadings: true to list all headings (mutually exclusive with other filtering params). Returns an error string if the URL is unreachable or content cannot be extracted. Use after searxng_web_search to read the full content of individual result URLs.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL | |
| section | No | Extract content under a specific heading (searches for heading text) | |
| maxLength | No | Maximum number of characters to return | |
| startChar | No | Starting character position for content extraction (default: 0) | |
| readHeadings | No | Return only a list of headings instead of full content | |
| paragraphRange | No | Return specific paragraph ranges (e.g., '1-5', '3', '10-') |