
WebSearch MCP Server
io.github.daidaiJ由 GitHub 账号 daidaiJ 发布v3.10.3更新于 Oct 31, 2026
Zero-API-key MCP search server: multi-engine web/academic search, PDF parsing, secure web fetch
概览
本地运行的 Go 版 MCP 服务器,无需 API Key 即可为助手提供多引擎网页与学术搜索、网页抓取和 PDF 解析。
- 可以做什么
- 在百度、Bing、DuckDuckGo 等多个通用引擎上搜索,并在本地完成融合排序、评分与缓存
- 并行检索九个学术引擎,按 DOI 跨引擎去重
- 抓取并清洗网页正文,内置 SSRF 防护,失败时回退 Jina Reader
- 本地解析 PDF,扫描件可回退 OCR,长结果可分段读回
- 可选通过 OpenAI 兼容接口生成摘要,并可借助 Everything 索引检索本地文件
- 适用场景
- 适合需要网页或学术调研、网页抓取与 PDF 阅读,又不想购买搜索 API Key 的场景,尤其在国内访问厂商搜索服务不稳定时。也适合希望搜索、评分与缓存都留在本机的用户。
- 运行要求
- 以本地进程方式运行,需下载对应平台(macOS、Linux、Windows)的二进制包;未声明需要 API Key 或环境变量。可选功能需额外准备:付费引擎的 API Key、用于摘要的 OpenAI 兼容接口、用于 OCR 的 MinerU,以及用于本地文件检索的 Everything HTTP Server。需要网络访问。
安装
在 SourceWeft 中
- 打开 控制台中的 WebSearch MCP Server,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
websearch-mcpserver
轻量级 Web Search MCP Server — 零 API Key 即可运行
[Go] [Release] [MCP] [Zero API Key] [MIT]
[多引擎搜索融合示意:百度 / Bing / DuckDuckGo / API 引擎 / 9 大学术源汇入本地编排,输出搜索结果、论文、网页 PDF 与本地文件]
用 Go 编写的 MCP 搜索服务。内置百度网页、Bing、DuckDuckGo 等通用引擎、Parallel / AnySearch / Exa / Firecrawl 四个零 Key 托管 MCP 上游和 9 个学术引擎,搜索、评分、缓存全部在本地完成。可作为 MCP 工具接入 Claude Code、Qwen Code、Cursor,也可作为 Go 模块嵌入自有服务。
免费、国内可用、结果可直接给 LLM 消费。 无 Key 也能搜;有 Key 才用 Key。
架构一览
分层设计:客户端最多面对 5 个 MCP 工具;引擎组由 mode 组装;评分、缓存、代理、抓取都在本进程内完成,查询不会经过第三方聚合服务。
[系统组成架构:接入层、检索协议层与 dashboard、编排层、9 个通用引擎与 9 个学术引擎、支撑组件]
更完整的回退链、代理检测与嵌入方式见 docs/architecture.md。
面向 LLM 的工具链
五个检索工具互相衔接;已保存的长搜索、网页/PDF 正文通过 cleanfetch 分段读回,无需客户端访问容器文件。读取从 offset=0 开始,按 next_offset 续读到 eof=true。
[smartsearch → academicsearch → cleanfetch → pdf_parser 工具链,以及 file_search 本地文件检索]
核心特性
搜索与评分管线
结果不是原始聚合。多引擎回传后在本地做去重、融合排名和多样性重排,再可选生成摘要:
[查询经 factory/mode、并发检索、去重、RRF、Boost、阈值、MMR 后返回]
设计背景与目标
现成的 MCP 搜索方案各有短板:厂商服务(Tavily / Exa 等)要 Key、按量付费、数据过第三方、国内访问不稳;自建 SearXNG 要维护 Python 服务,结果是未优化的原始聚合。本项目把这些能力收回本地:单二进制自带多引擎融合、9 大学术源、抓取与 PDF 解析,让搜索成为 LLM 的免费、国内可用、结果可直接消费的基础能力。
完整的立项动机、与现成方案的逐维度对比、以及设计原则(本地优先隐私默认 / 零成本起步 / 丰简由人 / 解耦可组合 / 面向 LLM 的完整工具链 / 场景化优化)见 docs/design.md。
快速开始
「零配置」= 首次启动自动生成与
config.example.yaml相同的预设config.yaml,改端口 / Key / 模式都改这一份文件。默认只监听127.0.0.1;开放网卡(host: 0.0.0.0)时建议配置auth_token保护业务端点。想用零 Key 托管 MCP 级联,把该文件的
mode改为mcphub即可(mcp_hub.enabled默认为开)。
或通过 MCP Hooks 实现会话自动启停(Qwen Code 示例,完整说明见 docs/installation.md):
搜索模式速览
mode 一个字段决定引擎组合:零 Key 推荐 mcphub(托管 MCP 级联,失败冷却 + 本地引擎/Bing 降级);有 API Key 推荐 apipool(多供应商 Key 池轮转,失败自动切换,网页引擎兜底)。engine 适合只依赖本地网页引擎、不需要 MCP 的场景;baidu / tavily / exa / anysearch / doubao / yuanbao 为单供应商直连(有 Key 才参与,主引擎失败自动回退);hybrid 全引擎并发;mcphub 支持 rotation_engines 把本地引擎加入轮转、按代理可用性自动启用/跳过需代理上游。无 Key 时单供应商模式自动降级为 engine。
各模式的参与引擎、获取 Key 入口、sk_list 多 Key 轮询与逐引擎限流口径见 docs/search.md。
mcphub 的四个内置 preset:
- 级联顺序默认
parallel → anysearch → exa → firecrawl,单次请求命中一个;失败冷却 60s 后切换,这是路由与降级,多家的结果不会合并返回。 - 全部失败后按
fallback_engines(默认bing → so360,未启用的引擎自动跳过,so360 默认关闭)降级,最终仍由smartsearch回退 Bing。 - 每个上游可配
api_key/sk_list,留空走匿名档;鉴权失败自动换下一把 Key,连接/超时则冷却该 server 并级联;exa/firecrawl仅在检测到代理时参与轮转,代理恢复后自动回归。 rotation_engines可把本地引擎(如so360)加入主轮转,分摊匿名限流。fetch_mode: off / fallback / prefer让cleanfetch复用同一批 MCP 抓取(mode=mcphub时共用搜索 Hub 的冷却与 Key 池);PDF 仍走本地解析,SSRF / HEAD 预检不跳过。
本机控制中心(可选,默认关闭)
dashboard.enabled: true 后,本机浏览器访问 http://127.0.0.1:8338/dashboard/。四个页面:总览 KPI 与客户端用量归组、搜索源健康与失败构成、请求级调用链(可筛选、可导出 CSV)、备份后写入白名单配置;全程被动观测,失败分类只报告,不干预调用。
启用即把 dashboard.example.yaml 复制为 config.yaml 同目录的 dashboard.yaml(首次 start / install 自动生成并默认启用,含随机本机管理员口令);删除该文件并重启即完整回退,运行时零遥测开销。隐私默认:查询只存哈希 + 主题等脱敏元数据,密钥与查询原文永不落库、接口永不回显;默认仅本机 loopback 可读,写操作需 admin_password。另提供 GET /metrics(Prometheus/OpenMetrics 文本,只读、只含脱敏聚合),需 dashboard.enabled: true,未启用返回 503。
页面明细、全部配置键、快捷方式落位、安全模型与调用归属见 docs/dashboard.md。
文档导航
各文档均为中文默认,同名
.en.md为英文版。
相关项目
- web-researcher — 配套 Qwen Code 扩展,将网络调研卸载到子智能体,保持主模型上下文干净(详见 docs/architecture.md)
来源:README.MD,提交 f792e04
工具
0版本历史
10- v3.10.3最新Oct 31, 2026
- v3.10.2Oct 25, 2026
- v3.10.1Oct 25, 2026
- v3.10.0Oct 24, 2026
- v3.9.0Oct 22, 2026
- v3.8.1Oct 15, 2026
- v3.8.0Oct 14, 2026
- v3.7.0Oct 10, 2026
- v3.6.0Sep 23, 2026
- v3.5.0Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
