web_search
Search the web through a configurable provider chain, using automatic failover or concurrent fanout, and return ranked JSON results with titles, URLs, and snippets.
Instructions
Web search through a configurable provider chain with automatic failover. Two modes: mode="failover" (default) walks the chain one provider at a time and returns the first success (including an empty answer); mode="fanout" queries up to UWR_SEARCH_FANOUT providers concurrently, then merges and rank-fuses the results (even an all-empty set of OK answers succeeds with results: []; provider="fanout", every row carries sources; costs N× provider quota per search). Default chain: AnySearch -> Tavily -> DDGS; operators can reorder/extend it with UWR_SEARCH_CHAIN (e.g. anysearch,tavily,yuanbao,bocha,deepseek,kimi,ddgs) and pick the default mode with UWR_SEARCH_MODE. Auth is automatic: a configured API key enables keyed mode, otherwise the provider's official keyless access is used. Returns JSON: {success, provider, mode, latency_ms, attempts, results: [{title, url, snippet, published?, site?, sources?}]}. providers overrides the chain order for this one call (e.g. ["bocha"] or ["yuanbao","tavily"]); in fanout mode its first N eligible entries are queried.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | ||
| limit | No | ||
| query | Yes | ||
| providers | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |