
searxNcrawl
io.github.DasDigitaleMomentum由 GitHub 账号 DasDigitaleMomentum 发布v0.33.1更新于 Oct 29, 2026
Web search via SearXNG and/or You.com, plus clean Markdown crawling via Crawl4AI. Self-hosted.
概览
自托管的 MCP 服务器,让助手通过 SearXNG 和/或 You.com 进行网页搜索,并把网页与整站抓取为干净的 Markdown。
- 可以做什么
- 并行调用已配置的搜索提供方检索网页,合并去重并标注每条结果的来源,可按语言、时间范围、安全搜索和分页筛选
- 用 Chromium 渲染一个或多个网址,返回带元数据和引用的 Markdown 或 JSON
- 从种子网址按深度、页数和超时限制抓取整站,针对文档站点优化
- 借助已保存的浏览器会话状态抓取需要登录的页面
- 同时提供命令行工具和 Python API
- 适用场景
- 适合希望助手获取最新网页结果和可读正文、又不想为托管搜索或抓取 API 付费的场景,例如查文档、总结文章或收集站点页面。适合已经运行或愿意自建 SearXNG 实例,或持有 You.com 密钥的用户。
- 运行要求
- 通过 uvx 以 STDIO 在本地运行,需要 uv。搜索至少需要一个提供方:启用 JSON 输出的 SearXNG 实例(通过 SEARXNG_URL 配置)和/或 YDC_API_KEY 中的 You.com 密钥;抓取无需任何搜索提供方。首次抓取会下载 Playwright 的 Chromium(约 550 MB)。可选基本认证使用 SEARXNG_USERNAME 与 SEARXNG_PASSWORD;SEARXNG_EXTRA_HEADERS 可添加自定义请求头。
安装
在 SourceWeft 中
- 打开 控制台中的 searxNcrawl,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[PyPI] [Python 3.10+] [CI] [MIT licence] [MCP server]
Website · Quick start · Docs · Developers · Changelog
[An MCP client starts uvx searxncrawl, calls search for crawl4ai quick start, then crawls the top result and receives clean Markdown]
A real MCP client session (fastmcp) against uvx searxncrawl 0.31.0 and a local SearXNG: search, then crawl the top hit into Markdown. Output is shortened for display. Reproduce it with docs/assets/demo/.
searxNcrawl is an open-source MCP server and CLI toolkit that gives AI agents web search and clean Markdown crawling, built on Crawl4AI. Search queries the configured providers, SearXNG and/or You.com, in parallel and merges the results. It runs on your own hardware, needs no API key with SearXNG and succeeds searxng-mcp.
Quick start
Connect your MCP client directly to searxNcrawl over STDIO or its HTTP endpoint.
You need uv and, for the search tool, at least one search provider: a SearXNG instance with JSON output enabled and/or a You.com API key (YDC_API_KEY). No SearXNG yet? Start one with Docker. Crawling works without either.
Add it to your agent
One step for every agent on your machine
setup detects Claude Code, Codex, Gemini CLI, Cursor, VS Code and Claude Desktop, asks for your SearXNG URL and, optionally, a You.com API key (hidden input, never printed), shows each config change and applies it only after you confirm. Every file it touches is backed up first, and setup --remove undoes it. More options are in MCP server.
Or per agent
[Add searxNcrawl to Cursor] [Install searxNcrawl in VS Code]
The buttons and commands below assume SearXNG at http://localhost:8888; change SEARXNG_URL if yours runs elsewhere, or add YDC_API_KEY for You.com.
Claude Code
Codex
VS Code
Cursor (~/.cursor/mcp.json), Claude Desktop and other clients that use the mcpServers format
The first crawl downloads Playwright's Chromium once (about 550 MB). For Docker, HTTP transport and other setups see Installation and MCP server.
- Claude Desktop bundle: download
searxncrawl-<version>.mcpbfrom GitHub Releases and open it in Claude Desktop. - Smithery users: use the direct installation above or the native bundle; see the Smithery transition.
Ask your agent
Your agent calls search, picks a result and calls crawl. It gets back clean Markdown instead of raw HTML.
Use the terminal
Choose how to connect
- Standard installations and releases do not require Arcade.
- For shared HTTP access, use an authenticated TLS proxy. Enable Host/Origin checks with
FASTMCP_HTTP_HOST_ORIGIN_PROTECTION=truebefore startup; allowlists alone do not enable checks or authenticate callers.
How it works
Results return to the agent as the tool response. Search and crawling are also available as the search and crawl CLI commands, crawling also as a Python API.
searxNcrawl exposes three MCP tools:
Both crawl tools drop sections that repeat within a page's Markdown (dedup_mode="exact"), can strip links for a smaller context (remove_links), and accept a Playwright storage_state for pages behind a login. Full parameters are in the MCP tools reference.
Private SearXNG instances
SEARXNG_EXTRA_HEADERSadds headers to SearXNG requests in both CLI and MCP, including access-gateway credentials and a custom User-Agent.- Values such as
@~/.config/searxncrawl/cf_secretload secrets from files; absolute and~/paths are supported. - Invalid header configuration disables SearXNG with a value-free warning; a configured You.com provider remains available.
- Setup and JSON examples: SearXNG configuration.
Why searxNcrawl
Hosted search and crawl APIs are quick to start with, but every call goes through someone else's service and is billed per request or credit. searxNcrawl runs on your own machine or server.
Self-hosted Firecrawl can search through SearXNG too; it runs as a multi-service stack (API, Playwright service, Redis, RabbitMQ, PostgreSQL and more), while searxNcrawl is a single Python process with Chromium, plus your SearXNG instance if you use one.
Where the others are a better fit: if you do not want to run a search provider and a browser yourself, a hosted API is less work, and Exa's semantic search index or Firecrawl's extraction features go beyond what searxNcrawl does today. Comparison based on each project's public repository and documentation in October 2026; corrections are welcome. Firecrawl is a trademark of its owner; searxNcrawl is not affiliated with it.
FAQ
Do I need SearXNG?
Only for the search tool, and only if you do not use You.com (YDC_API_KEY). crawl and crawl_site work without any search provider. SearXNG serves HTML only by default, so JSON output must be enabled (search.formats in settings.yml). Public instances may not enable it and often rate-limit automated requests, so run your own. Installation has a Docker one-liner.
Does it handle JavaScript-heavy pages?
Yes. Pages are rendered in Playwright's Chromium through Crawl4AI before they are converted to Markdown, so client-side content is captured.
Can it crawl pages behind a login?
Yes. Capture a session once with crawl-capture, then pass the saved storage_state file to crawl or crawl_site. See Session capture.
Can I run it remotely or share it with a team?
- Start with
--transport http(port 8000 by default) or Docker Compose (port 9555). - Put shared access behind an authenticated TLS proxy and connect clients to its
/mcpendpoint. - Enable header protection and configure the externally visible Host and Origin allowlists.
Why is the first crawl slow?
The first crawl downloads Playwright's Chromium (about 550 MB on disk). Later runs reuse it. Set PLAYWRIGHT_AUTO_INSTALL=false where browsers are provisioned separately.
I used searxng-mcp. What changed?
searxng-mcp is deprecated in favour of searxNcrawl. It only searched SearXNG and could pick a random public instance; searxNcrawl adds page and site crawling but needs your own SEARXNG_URL (or a You.com key), as random public-instance selection is not included.
Do I need Arcade?
- No. Connect directly over STDIO or HTTP for the standard setup.
- The optional adapter connects a separately hosted worker to Arcade's authentication and gateway.
- Arcade Cloud's current runner cannot install Playwright; the worker needs a compatible host.
Documentation
Contributing
Bug reports, feature ideas and pull requests are welcome. Read the contributing guide and open an issue first for larger changes. Coding agents find project conventions in AGENTS.md. Report vulnerabilities privately as described in the security policy.
License
MIT — © 2026 DDM – Das Digitale Momentum GmbH & Co KG
Maintained by DDM – Das Digitale Momentum GmbH & Co. KG, Much, Germany · www.searxncrawl.io · All our open-source projects
来源:README.md,提交 d4d5d6c
工具
0版本历史
2- v0.33.1最新Oct 29, 2026
- v0.32.0Oct 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分