🚀 OneSearch MCP Server: Web Search & Crawl & Scraper & Extract
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.
Features
- Web Search, scrape, crawl and extract content from websites.
- Support multiple search engines and web scrapers: SearXNG, Firecrawl, Tavily, DuckDuckGo, Bing, etc.
- Local web search (browser search), support multiple search engines: Bing, Google, Baidu, Sogou, etc.
- Use
puppeteer-coreto scrape content from websites. - You should have a local browser installed, such as
Chromium,Google Chrome,Google Chrome Canary, etc. - Free, no keys required.
- Use
- Enabled tools:
one_search,one_scrape,one_map - Support for self-hosted: SearXNG, Firecrawl, etc. (see Deploy)
Installation
Installing via Smithery
To install OneSearch for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @yokingma/one-search --client claude
Manual Installation
# 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
Environment Variables
Search Engine:
- SEARCH_PROVIDER (Optional): The search provider to use, supports
searxng,duckduckgo,bing,tavily,local, default islocal. - 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,bing.
// supported search providers
export type SearchProvider = 'searxng' | 'duckduckgo' | 'bing' | 'tavily' | 'local';
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
firecrawlif using cloud service.
Running on Cursor
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"
}
}
}
}
Running on Windsurf
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"
}
}
}
}
Self-host
Local deployment of SearXNG and Firecrawl, please refer to Deploy
Troubleshooting
- [ReferenceError]: __name is not defined: This is because Puppeteer has problems with
tsx, esbuild#1031
License
MIT License - see LICENSE file for details.
OneSearch
Project Details
- yokingma/one-search-mcp
- one-search-mcp
- MIT License
- Last Updated: 4/18/2025
Categories
Recomended MCP Servers
MCP Server for send text/markdown message via dingding (aka dingtalk) group custom robot
An MCP (Model Context Protocol) server that enables AI assistants to execute terminal commands securely.
Web search using free google search (NO API KEYS REQUIRED)
Helps AI assistants access text content from bot-protected websites. MCP server that fetches HTML/markdown from sites with anti-automation...
solana mcp sever to enable solana rpc methods
基于MCP function call的飞书全场景AI Agent
It's like v0 but in your Cursor/WindSurf/Cline. 21st dev Magic MCP server for working with your frontend like...
Connect to an EHR and make clinical data available via MCP
MCP server that interacts with Obsidian via the Obsidian rest API community plugin





