one-search-mcp
一个模型上下文协议(MCP)服务器,集成了多种搜索引擎和网页抓取工具,用于网络搜索、本地浏览器搜索和网页内容抓取。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"one-search-mcp": {
"args": [
"-y",
"one-search-mcp"
],
"command": "npx",
"env": {
"FIRECRAWL_API_KEY": "YOUR_API_KEY",
"FIRECRAWL_API_URL": "http://127.0.0.1:3002",
"SEARCH_API_KEY": "YOUR_API_KEY",
"SEARCH_API_URL": "http://127.0.0.1:8080",
"SEARCH_PROVIDER": "searxng"
}
}
}
}
该服务需要配置环境变量:FIRECRAWL_API_KEY、FIRECRAWL_API_URL、SEARCH_API_KEY、SEARCH_API_URL、SEARCH_PROVIDER
可用工具 (4 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
one_search 5 个参数 需填 1 项
Search and retrieve content from web pages. Returns SERP results by default (url, title, description).
必填参数:query
one_extract 7 个参数 需填 1 项
Extract structured information from web pages using LLM. Supports both cloud AI and self-hosted LLM extraction.
必填参数:urls
one_scrape 13 个参数 需填 1 项
Scrape a single webpage with advanced options for content extraction. Supports various formats including markdown, HTML, and screenshots. Can execute custom actions like clicking or scrolling before scraping.
必填参数:url
one_map 6 个参数 需填 1 项
Discover URLs from a starting point. Can use both sitemap.xml and HTML link discovery.
必填参数:url
服务介绍
🚀 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.