search
Search the web via your chosen search API (SearXNG, Brave, Tavily, or Exa) and receive normalized title, URL, and snippet results, avoiding unreliable SERP scraping.
Instructions
Search the web through a search API YOU control — a self-hosted SearXNG, or Brave/Tavily/Exa with a key — and get back a normalised title/url/snippet list. This never scrapes a SERP: that shipped in 0.9.0 and was removed in 0.9.2 because engines answer some queries with confidently wrong results. A real API contract does not have that failure mode. Set MCP_SEARCH_ENDPOINT (and MCP_SEARCH_API_KEY when the provider needs one) to avoid passing them every call.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| query | Yes | ||
| api_key | No | Defaults to $MCP_SEARCH_API_KEY. A self-hosted SearXNG needs none. | |
| endpoint | No | Search API base or full URL, e.g. http://127.0.0.1:8899 for a self-hosted SearXNG. Defaults to $MCP_SEARCH_ENDPOINT. | |
| provider | No | auto infers from the endpoint host and falls back to searxng. | auto |
| timeout_ms | No | ||
| extra_params | No | Extra query params as JSON, e.g. {"engines":"google,brave","language":"en"} (SearXNG). |