RustXNG
RustXNG 是用 Rust 编写、基于 SearXNG 的自托管元搜索与页面文本获取引擎,可聚合外部搜索提供商结果,并通过 JSON API 或 MCP 为 AI 代理获取页面文本。
访问 sahenjp/RustXNG项目简介
RustXNG 是用 Rust 编写、基于 SearXNG 的自托管元搜索引擎,可聚合外部搜索提供商的结果,并通过 JSON API 或 MCP 为 AI 代理获取页面文本。它不维护网络规模的搜索索引;可另行添加选定站点的本地索引和 Wikipedia 转储。
核心功能
- 采用 Rust 编写并基于 SearXNG 的自托管元搜索引擎。提供 JSON API 搜索端点,可选返回页面文本,并支持 language、engines、include_domains、exclude_domains、time_range 和 include_raw_content 等参数。内置 MCP 服务器提供 search 和 read_page 工具。提供商配置包括 standard、仅搜索本地索引的 clean,以及包含更多 HTML 提供商并在配置后使用计费 Exa Search 的 full。可通过 rustxng-index
适用场景
- 需要通过 MCP 或 JSON API 进行搜索和页面文本支撑的 AI 代理。使用本地索引对选定网站进行自托管搜索。需要仅搜索预构建本地爬取索引和 Wikipedia 转储索引的 clean 配置的部署。需要包含标题、URL、摘要和来源元数据的结构化搜索结果的自动化客户端。
快速开始
- 从发布页面安装或使用 Cargo 按 v0.30.0 的锁定命令安装。使用 rustxng --bind 127.0.0.1 --port 29483 启动本地服务器。使用 q、format=json 和 max_results 参数查询 /search JSON API。运行 rustxng mcp 启动内置 MCP 服务器。
部署与要求
- 从源码安装需要 Rust 1.88 或更高版本和 C 构建工具链。提供 Docker 镜像;服务默认绑定回环地址,暴露到其他网络需要适当的访问控制。PDF 文本提取需要 Poppler(pdftotext);扫描版 PDF 需要单独的 OCR 工具。JavaScript 渲染页面需要可选的 Firefox 渲染器,独立发布二进制不会自动启用 PDF 支持或 Firefox 渲染器。
采用前须知
- 许可证:AGPL-3.0。在使用、修改或分发项目前,请确认其具体条款。