Best MCP servers for web search
Search and retrieval listings in this directory. The page name is not a performance ranking. Rows are alphabetical. Paid placements do not add, remove, or reorder them.
Hosting and auth are shown only when the listing has a sourced fact. Official and Community come from a registry namespace or repository owner. A link check is not a functionality test.
| Listing | Hosting | Auth | Publisher | Link check |
|---|---|---|---|---|
| Apify | Hosted at https://mcp.apify.com, which the README recommends, and local via npx @apify/actors-mcp-server. | OAuth, or an Authorization: Bearer header with an Apify token. The README says unauthenticated hosted access is allowed only when the tools query is limited to search-actors, fetch-actor-details, search-apify-docs, fetch-apify-docs, apify-api-search, and apify-api-details. | Official | HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 401 not tested (2026-10-15) |
| Brave Search | Local. The README shows npx and Docker commands. A remote hosted MCP URL: Unknown. | BRAVE_API_KEY or BRAVE_API_KEY_FILE is required for the Search API. The README links keys at https://api-dashboard.search.brave.com/app/keys. It says the HTTP endpoint is unauthenticated. | Official | HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15) |
| Bright Data | Hosted remote server at https://mcp.brightdata.com/mcp, or a local instance via npx @brightdata/mcp. | An API token is required. The hosted URL takes it as the token query parameter. The local example sets API_TOKEN. | Not recorded | HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 400 not tested (2026-10-15) |
| Dumpling AI | Not recorded | Not recorded | Official | No link check recorded |
| Exa | Remote hosted server at https://mcp.exa.ai/mcp. Local: Unknown. | The README says anonymous use works with rate limits. OAuth is preferred, via https://mcp.exa.ai/mcp?login or https://mcp.exa.ai/mcp/oauth. An API key can be passed as the exaApiKey query parameter, an Authorization: Bearer header, or an x-api-key header. Exa Agent requires OAuth or an API key. The README links API keys at https://dashboard.exa.ai/api-keys. | Not recorded | HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 405 not tested (2026-10-15); HTTP 429 not a successful link check (2026-10-15) |
| Firecrawl | Cloud and self-hosted. A remote keyless server is at https://mcp.firecrawl.dev/v2/mcp. A local run is npx -y firecrawl-mcp. A self-hosted Firecrawl API is selected with FIRECRAWL_API_URL. | Keyless free tier for scrape, search, and parse, which the README says is rate-limited. OAuth URL https://mcp.firecrawl.dev/v2/mcp-oauth. API key as Authorization: Bearer, or FIRECRAWL_API_KEY for the local command. The README says crawl, map, and agent still need a key. | Official | HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 405 not tested (2026-10-15); HTTP 405 not tested (2026-10-15); HTTP 405 not tested (2026-10-15) |
| Glean | Not recorded | Not recorded | Official | No link check recorded |
| Graphlit | Not recorded | Not recorded | Official | No link check recorded |
| Hugging Face | Not recorded | Not recorded | Not recorded | No link check recorded |
| Kagi Search | Not recorded | Not recorded | Official | No link check recorded |
| Linkup | Not recorded | Not recorded | Official | No link check recorded |
| Meilisearch | Not recorded | Not recorded | Official | No link check recorded |
| Nerve | Not recorded | Not recorded | Official | No link check recorded |
| Olostep | Not recorded | Not recorded | Official | No link check recorded |
| OpenSearch | Not recorded | Not recorded | Official | No link check recorded |
| Optuna | Not recorded | Not recorded | Official | No link check recorded |
| Oxylabs | Not recorded | Not recorded | Official | No link check recorded |
| Parallel Search MCP | Not recorded | Not recorded | Not recorded | HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 405 not tested (2026-10-15) |
| Pure.md | Not recorded | Not recorded | Official | No link check recorded |
| Qdrant | Not recorded | Not recorded | Official | No link check recorded |
| ScrAPI | Not recorded | Not recorded | Not recorded | No link check recorded |
| Search1API | Not recorded | Not recorded | Not recorded | No link check recorded |
| Tako | Not recorded | Not recorded | Official | No link check recorded |
| Tavily | Remote server at https://mcp.tavily.com/mcp and a local install with npx -y tavily-mcp@latest. | API key in the tavilyApiKey query parameter or an Authorization: Bearer header. OAuth on the remote server is optional. The local example sets TAVILY_API_KEY. The README says a free account is available at https://app.tavily.com/home. | Official | HTTP 200 successful link check (2026-10-15); HTTP 405 not tested (2026-10-15); HTTP 200 successful link check (2026-10-15); HTTP 200 successful link check (2026-10-15) |
| WebScraping.AI | Not recorded | Not recorded | Official | No link check recorded |