
SearXNG
io.github.danchev由 GitHub 账号 danchev 发布v0.1.2更新于 Oct 24, 2026
Privacy-friendly web search through a configurable SearXNG instance.
概览
让助手通过 SearXNG 元搜索引擎实例进行注重隐私的网页搜索,可按引擎、类别、语言、时间范围和结果数量筛选。
- 可以做什么
- 提供单个 web_search 工具,向配置的 SearXNG 元搜索实例发起查询并返回结果。该工具需要 query 参数,可选参数包括 categories、engines、language、max_results(1-100)和 time_range。实例不可达、被限流或响应格式错误时会返回错误结果,而不是空列表。每个进程最多同时处理八个搜索请求。
- 适用场景
- 适合助手需要通用网页搜索、又不想依赖商业搜索 API 的场景,也适合需要控制查询引擎、类别和语言的场景。如果你已经运行或信任某个 SearXNG 实例,或希望搜索请求不经过托管搜索服务,可以考虑使用。
- 运行要求
- 以 stdio 方式在本地运行,可用 uvx(Python)或 Docker 启动,也可通过 Streamable HTTP 提供服务。需要能访问 SearXNG 实例的网络;默认实例为 --instance-url 修改。未声明账号、API 密钥或环境变量。可选参数包括 --timeout、--log-level、--transport、--host、--port 以及可重复的 --header。
安装
在 SourceWeft 中
- 打开 控制台中的 SearXNG,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[PyPI Version] [License] [PyPI Downloads]
SearXNG MCP Server
A Model Context Protocol (MCP) server that equips AI agents with privacy-friendly web search capabilities using the SearXNG metasearch engine.
Features
This server provides the following main features:
- Web search via multiple search engines
- Supports various search categories (general, images, news, etc.)
- Customizable search engine selection
- Language filtering
- Time range filtering
- Control over the number of search results
Available Tools
web_search- Perform web search using SearXNG- Required parameters:
query(string): The search query
- Optional parameters:
categories(array): Search categories, e.g. ['general', 'images', 'news']engines(array): Search engines, e.g. ['google', 'bing', 'duckduckgo']language(string): Language code for search, default is "en"max_results(integer): Maximum number of results, default is 10 (1-100)time_range(string): Time range filter ('day', 'week', 'month', 'year')
- Required parameters:
If a search cannot be completed (the instance is unreachable, rate-limits the request, or returns a malformed response), the tool returns an error result describing the failure rather than an empty result list.
Search Limits
Each server process admits up to eight concurrent searches. Further calls return
an error immediately and can be retried later. --timeout bounds the complete
network operation, including streaming the response; cancellation closes the
active request. Responses are limited to 2 MiB before JSON parsing.
The configured instance must serve /search directly: redirects are rejected.
The client requests Accept-Encoding: identity and rejects compressed responses
to prevent unbounded decompression. Result fields are also truncated to their
existing limits. Missing or non-list results and upstream error objects are
reported as failures, while a valid empty list remains a successful search.
Application logs omit search queries and upstream exception text. The CLI keeps
HTTP dependency logging at WARNING even when --log-level=DEBUG is selected.
Privacy Policy
This software does not operate a hosted search service and does not send search queries to its maintainer. It runs on the user's device or infrastructure and sends each query, selected engines, categories, language, time range, and safe search setting directly to the configured SearXNG instance. Search results are returned to the connected MCP client.
The software does not persist queries or results, use analytics or advertising trackers, create user profiles, or share data with the maintainer. Operational logs record result counts and errors but omit query text and upstream exception details. In-memory request and result data is discarded after the request.
The selected SearXNG instance and the search engines it contacts are independent
third parties. Their collection, use, sharing, and retention practices are
governed by their own privacy policies. Before sending sensitive queries, users
should review the selected instance's privacy notice or operate an instance they
trust. The default CLI instance is https://searx.party; its policy is at
https://searx.party/info/en/privacy.
Privacy questions and requests can be filed at https://github.com/danchev/searXNG/issues.
Command Line Options
Docker / Kubernetes
You can run the server easily using the official container image published to the GitHub Container Registry:
Transports
By default the server speaks stdio, which is what local MCP clients
(Claude Desktop, IDE integrations, uvx) launch it with.
For remote access, --transport http serves the Streamable HTTP
transport at /mcp:
The legacy SSE transport is intentionally not implemented. It was superseded by Streamable HTTP in the 2025-03-26 MCP protocol revision and should not be used for new deployments.
Security: the server performs no authentication, so it binds to
127.0.0.1 by default. Only pass --host 0.0.0.0 on a trusted network,
or put an authenticating reverse proxy in front of it.
Binding to a non-loopback host also disables the MCP SDK's DNS-rebinding
protection, which it can only enable automatically for 127.0.0.1,
localhost, and ::1. On a loopback bind a forged Host header is
rejected with 421 Misdirected Request; on a public bind any Host is
accepted. The server logs a warning at startup when this applies.
Usage Example
Configure as an MCP Service
To set up SearXNG as an MCP server, add one of the following to your MCP configuration file:
UVX setup:
Docker setup (Local stdio):
This launches the server over stdio, which is the right choice for a local client.
Remote setup (Streamable HTTP):
Start the server as a long-running process:
Then point the client at its /mcp endpoint:
Note the --host 0.0.0.0 needed to accept connections from other
machines, and the security caveat above: the server is unauthenticated,
so restrict it to a trusted network or front it with an authenticating
reverse proxy.
Example Invocation
Debugging
You can use the MCP inspector to debug the server:
License
AGPLv3+ License - see LICENSE for details.
来源:README.md,提交 136bce7
工具
0版本历史
1- v0.1.2最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分