OneSearch
STDIOWeb search, scrape, crawl and extract content from websites using multiple engines.
Web search, scrape, crawl and extract content from websites using multiple engines.
A Model Context Protocol (MCP) server implementation that integrates with Searxng/Tavily/DuckDuckGo/Bing for web search, local browser search, and scraping capabilities with Firecrawl.
puppeteer-core to scrape content from websites.Chromium, Google Chrome, Google Chrome Canary, etc.one_search, one_scrape, one_mapTo install OneSearch for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @yokingma/one-search --client claude
# 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 Engine:
searxng, duckduckgo, bing, tavily, local, default is local.searxng.tavily, bing.// supported search providers export type SearchProvider = 'searxng' | 'duckduckgo' | 'bing' | 'tavily' | 'local';
Firecrawl:
firecrawl.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
tsx, esbuild#1031MIT License - see LICENSE file for details.