loading…
Search for a command to run...
loading…
A smart MCP server for multi-engine web search with AI-powered results, supporting 6 search engines and web content extraction.
A smart MCP server for multi-engine web search with AI-powered results, supporting 6 search engines and web content extraction.
A smart MCP (Model Context Protocol) server for multi-engine web search with AI-powered results.
# For users
pip install mcp-smart-searcher
# For development
pip install -e ".[dev]"
# Direct command (after pip install)
mcp-smart-searcher
# Or via Python module
python -m mcp_smart_searcher
# Or via uvx (no install required)
uvx mcp-smart-searcher
Add to your MCP client config (e.g., Claude Desktop):
{
"mcpServers": {
"smart-searcher": {
"command": "mcp-smart-searcher"
}
}
}
Or with uvx (no install required):
{
"mcpServers": {
"smart-searcher": {
"command": "uvx",
"args": ["mcp-smart-searcher"]
}
}
}
# Run with MCP inspector
mcp dev src/mcp_smart_searcher/server.py
# Run tests
PYTHONPATH=src pytest
# Build
python -m build
All settings are configured via environment variables:
| Variable | Description | Default |
|---|---|---|
DEFAULT_SEARCH_ENGINE |
Default engine when none specified | duckduckgo |
ALLOWED_SEARCH_ENGINES |
Comma-separated allowlist; unset = all allowed | (all) |
TAVILY_API_KEY |
Tavily AI Search API key | (none) |
GITHUB_TOKEN |
GitHub API token (for github/github_code engines) | (none) |
USE_PROXY |
Enable proxy for engines that need it | true |
PROXY_URL |
Proxy address | http://127.0.0.1:10809 |
PROXY_ENGINES |
Override: comma-separated engines that use proxy | (auto) |
MAX_CONCURRENT_SEARCH |
Max parallel search requests | 5 |
LOG_LEVEL |
Logging level (DEBUG/INFO/WARNING/ERROR) |
INFO |
By default, domestic engines (baidu, juejin) skip proxy, while all others use proxy. You can override this with PROXY_ENGINES:
# Only use proxy for DuckDuckGo and GitHub
PROXY_ENGINES=duckduckgo,github,github_code
# Disable proxy entirely
USE_PROXY=false
{
"mcpServers": {
"smart-searcher": {
"command": "mcp-smart-searcher",
"env": {
"TAVILY_API_KEY": "tvly-xxx",
"GITHUB_TOKEN": "ghp_xxx",
"PROXY_URL": "http://127.0.0.1:10809",
"LOG_LEVEL": "INFO"
}
}
}
}
Or with uvx (no install required):
{
"mcpServers": {
"smart-searcher": {
"command": "uvx",
"args": ["mcp-smart-searcher"],
"env": {
"TAVILY_API_KEY": "tvly-xxx",
"GITHUB_TOKEN": "ghp_xxx"
}
}
}
}
pip install mcp-smart-searcher
Create a .env file or set environment variables:
# .env
TAVILY_API_KEY=tvly-your-key-here
GITHUB_TOKEN=ghp_your-token-here
PROXY_URL=http://127.0.0.1:10809
LOG_LEVEL=INFO
{
"mcpServers": {
"smart-searcher": {
"command": "mcp-smart-searcher"
}
}
}
Your AI agent can now search the web and fetch web pages.
Apache-2.0
Add this to claude_desktop_config.json and restart Claude Desktop.
{
"mcpServers": {
"mcp-smart-searcher": {
"command": "npx",
"args": []
}
}
}