
pranavms13/web-search-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
A Model Context Protocol (MCP) server that provides web search functionality using a headless Chrome browser to scrape Google, DuckDuckGo and Bing search results.
Обзор
A Model Context Protocol (MCP) server that provides web search functionality by scraping Google, DuckDuckGo, and Bing search results through a headless browser. - : Searches Google, DuckDuckGo, and Bing with automatic fallback when an engine is blocked or returns nothing - : Titles, URLs, domains, snippets, and rankings — with redirect URLs unwrapped to their real destinations - : Fetch and extract text content from any webpage - : Selenium + headless Chrome (default) or the lightweight Obscura headless browser, selected via an environment variable - : Fully compatible with Claude Desktop and other MCP clients Search the web across multiple engines (Google → DuckDuckGo → Bing) with automatic fallback and return structured results.
README
Показан фрагмент оригинального README. Открыть оригинал.
Web Search MCP
A Model Context Protocol (MCP) server that provides web search functionality by scraping Google, DuckDuckGo, and Bing search results through a headless browser.
Features
- Multi-Engine Search: Searches Google, DuckDuckGo, and Bing with automatic fallback when an engine is blocked or returns nothing
- Structured Results: Titles, URLs, domains, snippets, and rankings — with redirect URLs unwrapped to their real destinations
- Web Page Content: Fetch and extract text content from any webpage
- Pluggable Browser Backends: Selenium + headless Chrome (default) or the lightweight Obscura headless browser, selected via an environment variable
- MCP Compatible: Fully compatible with Claude Desktop and other MCP clients
Tools Available
search_web
Search the web across multiple engines (Google → DuckDuckGo → Bing) with automatic fallback and return structured results.
Parameters:
query(string): The search query stringmax_results(int, optional): Maximum number of results to return (default: 10, max: 100)include_snippets(bool, optional): Whether to include text snippets (default: true)
Returns:
- List of search results with:
title: Page titleurl: Full URL (redirect wrappers resolved to the real destination)domain: Domain namesnippet: Text snippet (if enabled)rank: Search result rankingsource_engine: Which engine produced the result (google,duckduckgo, orbing)
get_webpage_content
Fetch and return the text content of a webpage.
Parameters:
url(string): The URL of the webpage to fetchmax_length(int, optional): Maximum content length (default: 5000, max: 20000)
Returns:
- Dictionary with:
url: The requested URLtitle: Page titlecontent: Extracted text contentlength: Content length in characters
get_search_engine_status
Report the active browser backend and the availability of each search engine.
Returns:
- Dictionary with a
backendkey (seleniumorobscura) plus each engine name mapped toavailableorblocked.
reset_search_engines
Clear the list of engines marked as blocked during the session (useful if an engine recovers).
Returns:
- A status message string.
Installation
-
Install dependencies:
# Using uv (recommended) uv sync # Or using pip pip install -e . -
Install a browser backend (pick one):
- Selenium (default) — requires Chrome:
- On macOS:
brew install --cask google-chrome
- On macOS:
- Selenium (default) — requires Chrome:
Установка
uvx git+https://github.com/pranavms13/web-search-mcpКонфигурация
{
"mcpServers": {
"web-search-mcp": {
"command": "uvx",
"args": ["git+https://github.com/pranavms13/web-search-mcp"]
}
}
}