A Model Context Protocol (MCP) server implementation that integrates with Searxng/Firecrawl/Tavily for web search and scraping capabilities.
- Web Search, scrape, crawl and extract content from websites.
- Support multiple search engines and web scrapers: SearXNG, Firecrawl, Tavily, etc.
- Support for self-hosted: SearXNG, Firecrawl, etc. (see Deploy)
- Enabled tools:
one_search
,one_scrape
# Manually install (Optional)
npm install -g one-search-mcp
# using npx
env SEARCH_API_URL=http://127.0.0.1:8080 FIRECRAWL_API_URL=http://127.0.0.1:3002 npx -y one-search-mcp
Search:
- SEARCH_PROVIDER (Optional): The search provider to use, either
searxng
ortavily
, default issearxng
. - SEARCH_API_URL (Optional): The URL of the SearxNG API, required for
searxng
. - SEARCH_API_KEY (Optional): The API key for the search provider, required for
tavily
.
Firecrawl:
- FIRECRAWL_API_URL (Optional): The URL of the Firecrawl API, required for
firecrawl
. - FIRECRAWL_API_KEY (Optional): The API key for the Firecrawl API, required for
firecrawl
if using cloud service.
Your mcp.json
file will look like this:
{
"mcpServers": {
"one-search-mcp": {
"command": "npx",
"args": ["-y", "one-search-mcp"],
"env": {
"SEARCH_PROVIDER": "searxng",
"SEARCH_API_URL": "http://127.0.0.1:8080",
"SEARCH_API_KEY": "YOUR_API_KEY",
"FIRECRAWL_API_URL": "http://127.0.0.1:3002",
"FIRECRAWL_API_KEY": "YOUR_API_KEY"
}
}
}
}
Add this to your ./codeium/windsurf/model_config.json
file:
{
"mcpServers": {
"one-search-mcp": {
"command": "npx",
"args": ["-y", "one-search-mcp"],
"env": {
"SEARCH_PROVIDER": "searxng",
"SEARCH_API_URL": "http://127.0.0.1:8080",
"SEARCH_API_KEY": "YOUR_API_KEY",
"FIRECRAWL_API_URL": "http://127.0.0.1:3002",
"FIRECRAWL_API_KEY": "YOUR_API_KEY"
}
}
}
}
Local deployment of SearXNG and Firecrawl, please refer to Deploy
MIT License - see LICENSE file for details.