Web Search
search_webSearch the web through rotating providers with automatic failover on errors, rate limits, or no quota. Use when you need current web pages and no URL is known.
Instructions
Search the web through a rotating pool of search providers (Tavily, Firecrawl, Parallel, Exa, Google PSE, DuckDuckGo) with automatic failover when one errors, is rate-limited or has no local quota left. Use it when the answer depends on current web pages and no URL is known yet; use fetch_url to read a page whose URL is already known. Returns numbered results (title, URL, snippet, publication date when the provider supplies one) and names the provider that answered plus every failed attempt, so failover stays visible. Time filters keep rotation inside the providers that implement them and fail explicitly instead of searching without the filter; if every eligible provider fails, the tool returns an error listing each provider's reason. The engine parameter only prefers a provider and leaves failover active.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query | |
| engine | No | Preferred engine id from get_engine_status; only moves that engine to the front, failover to the others stays active. Engines without implemented support for the time filter are skipped even when preferred. | |
| endDate | No | End date YYYY-MM-DD (through this date, subject to provider boundary semantics). Cannot combine with timeRange. | |
| startDate | No | Start date YYYY-MM-DD. May be used alone or with endDate; cannot combine with timeRange. | |
| timeRange | No | Relative UTC date window: day=1, week=7, month=30, year=365 days through today. Cannot combine with startDate/endDate; day precision, not rolling hours. | |
| numResults | No | Optional result count (1–20). Omit to use the dashboard setting: a custom count or the provider default. |