web-search-plus-mcp
The web-search-plus-mcp server enables AI assistants to perform intelligent web searches across multiple providers.
web_searchtool: Perform web searches with a requiredqueryparameter, optional provider override, and configurable result count (default: 5)Intelligent auto-routing: Analyzes query intent to automatically select the best provider — e.g., facts/news → Serper, research/explanations → Tavily, semantic discovery → Exa
7 supported providers: Serper (Google), Tavily, Querit, Exa, Perplexity, You.com, and SearXNG
Force a specific provider: Override auto-routing by specifying
auto,serper,tavily, orexaGraceful fallback: If a provider's API key is missing, the server falls back to available providers
Privacy option: SearXNG support for self-hosted, privacy-first searching at zero cost
MCP-native: Compatible with Claude Desktop, NanoBot, and any MCP-compatible host
Easy deployment: Zero-install via
uvxor standard pip installation; API keys configured via environment variables or.envfile
Integrated via Serper to provide search results for facts, news, shopping, and local businesses.
Integrated to provide AI-synthesized answers with citations as one of the search provider options.
Integrated as a privacy-first, self-hosted search provider for retrieving web search results.
🔍 web-search-plus-mcp
Multi-provider web search and extraction MCP server with intelligent auto-routing.
web-search-plus-mcp is the standalone MCP packaging of Web Search Plus. It gives Claude Desktop, NanoBot, Cursor, and other MCP-compatible hosts access to the same Python routing engine family used by the Hermes/OpenClaw Web Search Plus tools.
✨ Features
10 search providers — Serper, Brave, Tavily, Exa, Querit, Linkup, Firecrawl, Perplexity, You.com, SearXNG
5 extract providers — Firecrawl, Linkup, Tavily, Exa, You.com
Intelligent auto-routing — scores query intent and picks a provider automatically
Quality reports — optional routing/result diagnostics
Research mode — opt-in multi-provider search + top-source extraction with a time budget
Zero-install run —
uvx web-search-plus-mcpMCP-native — stdio server exposing
web_searchandweb_extract
🚀 Quick Start
# Run instantly with uvx
uvx web-search-plus-mcp
# Or install globally
pip install web-search-plus-mcp
web-search-plus-mcpAt least one provider credential is required for search. Extraction needs at least one extraction-capable provider key.
⚙️ Claude Desktop Config
Add to ~/Library/Application Support/Claude/claude_desktop_config.json on macOS or %APPDATA%\\Claude\\claude_desktop_config.json on Windows:
{
"mcpServers": {
"web-search-plus": {
"command": "uvx",
"args": ["web-search-plus-mcp"],
"env": {
"LINKUP_API_KEY": "your_linkup_key",
"TAVILY_API_KEY": "your_tavily_key",
"EXA_API_KEY": "your_exa_key",
"FIRECRAWL_API_KEY": "your_firecrawl_key",
"BRAVE_API_KEY": "your_brave_key",
"SERPER_API_KEY": "your_serper_key",
"QUERIT_API_KEY": "your_querit_key",
"PERPLEXITY_API_KEY": "your_perplexity_key",
"YOU_API_KEY": "your_you_key",
"SEARXNG_INSTANCE_URL": "https://your-searxng-instance.example.com"
}
}
}
}You can also place a .env file next to the package/project with the same variables.
🔎 Search Providers
Serper — Google-style facts, news, shopping, local queries
Brave — general-purpose independent web index
Tavily — research and analysis
Exa — semantic discovery, similarity, deep/deep-reasoning synthesis
Querit — multilingual, real-time AI search
Linkup — source-backed grounding/citations
Firecrawl — web search plus scrape-ready content
Perplexity — direct synthesized answers
You.com — LLM-ready real-time snippets
SearXNG — privacy-first self-hosted meta-search
📄 Extract Providers
Linkup — recommended first choice for clean markdown and low cost
Firecrawl — robust scrape fallback, useful for JS-heavy/blocked pages
Tavily — extraction/content API
Exa — contents API
You.com — LLM-ready snippets/content where available
🛠 MCP Tool Reference
web_search
Parameters:
query— required search queryprovider—auto,serper,brave,tavily,exa,querit,linkup,firecrawl,perplexity,you,searxngcount— results to return, default5, max20depth— Exa depth:normal,deep,deep-reasoningtime_range—hour,day,week,month,yearinclude_domains/exclude_domains— domain allow/deny listsmode—normalorresearchquality_report— include routing/result diagnosticsresearch_time_budget— best-effort wall-clock budget for research mode
Example MCP arguments:
{
"query": "latest Hermes Agent release",
"provider": "linkup",
"count": 5,
"quality_report": true
}web_extract
Parameters:
urls— required list of URLsprovider—auto,firecrawl,linkup,tavily,exa,youformat—markdownorhtmlinclude_images— include image metadata when supportedinclude_raw_html— include raw HTML when supportedrender_js— render JavaScript before extraction when supported
Example MCP arguments:
{
"urls": ["https://example.com"],
"provider": "linkup",
"format": "markdown"
}🧠 Auto-Routing Examples
iPhone 16 Pro price→ Serper/Brave shopping-style searchhow does TCP/IP work→ Tavily research-style searchlatest multilingual EV market updates→ Querit/Linkup real-time/source-backed searchcompanies like Stripe→ Exa discovery searchwhat is quantum computing→ Perplexity/You.com direct-answer style searchprivacy focused search results→ SearXNG when configured
Credits
Built on the Web Search Plus routing logic originally developed for OpenClaw/Clawhub and later ported to Hermes as hermes-web-search-plus.
License
MIT © 2026 robbyczgw-cla
Maintenance
Tools
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/robbyczgw-cla/web-search-plus-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server