你是否曾经希望AI能够联网搜索,却不想付费购买昂贵的搜索API密钥?或者你需要从多个搜索引擎获取结果,但不想为每个引擎单独集成?今天要介绍的开源项目Open-WebSearch MCP服务器,正是为了解决这个痛点而设计的。它支持Bing、Baidu、DuckDuckGo、Brave、Exa、GitHub、掘金、CSDN等多个搜索引擎,完全免费,无需任何API密钥。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | Open-WebSearch MCP 服务器 |
| GitHub地址 | https://github.com/Aas-ee/open-web-search |
| 项目描述 | 基于多引擎搜索结果的模型上下文协议(MCP)服务器,支持免费网络搜索,无需API密钥.支持 Bing,Baidu,DuckDuckGo,Brave,Exa,Github,Juejin,and CSDN |
| 作者 | Aasee |
| 开源协议 | MIT License |
| 开源状态 | 公开状态 |
| Languages | TypeScript, JavaScript |
| 支持平台 | Windows / macOS / Linux |
| 最后更新 | 2026-04-23 |
一、项目介绍
Open-WebSearch MCP服务器是一个基于多引擎搜索结果的MCP工具,让AI能够进行免费的联网搜索。它通过抓取多个搜索引擎的公开结果,无需任何API密钥或身份验证,即可返回结构化的搜索结果。
这个项目提供了4个MCP工具:
search:多引擎搜索,返回标题、URL和描述fetchCsdnArticle:获取CSDN博客文章的完整内容fetchGithubReadme:获取GitHub仓库的README文件fetchJuejinArticle:获取掘金文章的完整内容
支持的搜索引擎包括:Bing、Baidu、DuckDuckGo、Brave、Exa、GitHub、掘金、CSDN。你可以组合使用多个引擎,获取更全面的搜索结果。
二、核心优势
完全免费
无需任何API密钥,无需付费,开箱即用。这对于个人开发者和开源项目来说非常友好。
多引擎支持
支持8个搜索引擎和内容平台:
- 通用搜索:Bing、Baidu、DuckDuckGo、Brave、Exa
- 技术社区:GitHub、掘金、CSDN
可组合搜索
可以在一次搜索中使用多个引擎,获取不同来源的结果,提高搜索的全面性。
内容获取
除了搜索,还支持获取CSDN文章、GitHub README和掘金文章的完整内容,方便AI进行深入阅读。
灵活部署
支持多种部署方式:
- NPX快速开始(推荐)
- 本地安装
- Docker部署
- 支持stdio、SSE、streamableHttp多种传输协议
代理支持
支持HTTP代理配置,可以访问受限资源,适应不同的网络环境。
三、适用场景
AI联网搜索
让AI助手能够获取最新的网络信息,回答需要实时数据的问题。
技术文档查询
从GitHub、CSDN、掘金等平台搜索技术文章和代码示例。
多源信息聚合
同时从多个搜索引擎获取结果,提高信息的全面性和准确性。
内容分析
获取文章完整内容后,让AI进行分析、总结或翻译。
四、安装教程
系统要求
| 工具 | 用途 | 下载/安装方式 |
|---|---|---|
| Node.js | JavaScript运行环境 | [https://nodejs.org/] (版本要求:18.0 或以上) |
| MCP客户端 | 如Claude Desktop、Cursor、Cherry Studio等 | 根据客户端官网下载 |
安装步骤
方式一:NPX快速开始(推荐)
这是最快的方式,无需克隆代码。
基本用法:
npx open-websearch@latest带环境变量(Linux/macOS):
DEFAULT_SEARCH_ENGINE=duckduckgo ENABLE_CORS=true npx open-websearch@latestWindows PowerShell:
$env:DEFAULT_SEARCH_ENGINE="duckduckgo"; $env:ENABLE_CORS="true"; npx open-websearch@latest方式二:Docker部署
# 使用Docker Compose
docker-compose up -d
# 或直接使用Docker
docker run -d --name web-search -p 3000:3000 -e ENABLE_CORS=true -e CORS_ORIGIN=* ghcr.io/aas-ee/open-web-search:latest方式三:MCP客户端配置
对于Claude Desktop:
在配置文件中添加:
{
"mcpServers": {
"web-search": {
"transport": {
"type": "streamableHttp",
"url": "http://localhost:3000/mcp"
}
}
}
}对于Cursor / VSCode Claude Dev Extension:
{
"mcpServers": {
"web-search": {
"transport": {
"type": "streamableHttp",
"url": "http://localhost:3000/mcp"
}
}
}
}对于Cherry Studio:
{
"mcpServers": {
"web-search": {
"name": "Web Search MCP",
"type": "streamableHttp",
"description": "多引擎网络搜索与文章获取",
"isActive": true,
"baseUrl": "http://localhost:3000/mcp"
}
}
}环境变量配置
| 变量 | 默认值 | 描述 |
|---|---|---|
| ENABLE_CORS | false | 启用CORS |
| CORS_ORIGIN | * | CORS来源配置 |
| DEFAULT_SEARCH_ENGINE | bing | 默认搜索引擎 |
| USE_PROXY | false | 启用HTTP代理 |
| PROXY_URL | http://127.0.0.1:7890 | 代理服务器URL |
| PORT | 3000 | 服务器端口 |
五、使用示例
配置完成后,你就可以在MCP客户端中使用自然语言来调用搜索功能了。
示例1:基础搜索
用户指令:“搜索‘MCP协议介绍’,返回3个结果”
AI会调用search工具:
{
"query": "MCP协议介绍",
"limit": 3,
"engines": ["bing"]
}示例2:多引擎组合搜索
用户指令:“同时从Bing、DuckDuckGo和CSDN搜索‘TypeScript教程’”
AI会调用:
{
"query": "TypeScript教程",
"limit": 5,
"engines": ["bing", "duckduckgo", "csdn"]
}示例3:获取CSDN文章内容
用户指令:“获取这篇CSDN文章的完整内容:[URL]”
AI会先使用search找到文章,然后调用fetchCsdnArticle:
{
"url": "https://blog.csdn.net/xxx/article/details/xxx"
}示例4:获取GitHub README
用户指令:“获取open-websearch项目的README”
AI会调用fetchGithubReadme:
{
"url": "https://github.com/Aas-ee/open-web-search"
}支持多种URL格式:
- HTTPS:
https://github.com/owner/repo - HTTPS with .git:
https://github.com/owner/repo.git - SSH:
git@github.com:owner/repo.git
示例5:获取掘金文章
用户指令:“获取这篇掘金文章的完整内容”
AI会调用fetchJuejinArticle:
{
"url": "https://juejin.cn/post/7520959840199360563"
}示例6:配置代理(受限区域)
如果某些搜索引擎在你的区域不可用,可以启用代理:
USE_PROXY=true PROXY_URL=http://127.0.0.1:7890 npx open-websearch@latest六、常见问题
问题1:搜索结果为空或不完整
解决方案:
- 尝试更换搜索引擎(如从bing改为duckduckgo)
- 检查网络连接,某些引擎可能需要代理
- 减少
limit参数值,避免触发速率限制
问题2:速率限制
解决方案:由于此工具通过抓取网页工作,短时间内过多搜索可能导致临时屏蔽。
- 保持合理的搜索频率
- 合理使用
limit参数 - 必要时在搜索之间添加延迟
问题3:某些搜索引擎无法使用
解决方案:
- 检查该引擎是否在支持列表中
- 某些引擎可能在特定区域不可用,配置代理试试
- 使用
DEFAULT_SEARCH_ENGINE切换到其他引擎
问题4:Docker容器无法访问
解决方案:
- 确认端口映射正确:
-p 3000:3000 - 检查防火墙设置
- 使用
docker logs查看容器日志
问题5:Windows上NPX命令无法运行
解决方案:
- 使用PowerShell的环境变量设置语法
- 或使用cross-env:
npx cross-env DEFAULT_SEARCH_ENGINE=duckduckgo open-websearch
七、总结
Open-WebSearch MCP服务器是MCP生态中第一个完全免费的多引擎搜索工具。它无需任何API密钥,开箱即用,支持8个搜索引擎和内容平台。
这个项目的最大价值在于:
- 完全免费:无需API密钥,适合个人开发者和开源项目
- 多引擎支持:一次搜索获取多个来源的结果
- 内容获取:支持获取CSDN、GitHub、掘金的完整文章
- 灵活部署:支持NPX、Docker、本地安装等多种方式
- 代理支持:可配置代理访问受限资源
如果你需要一个免费、开源的联网搜索MCP工具,Open-WebSearch MCP服务器是目前最好的选择。
总的来说,这是免费联网搜索的最佳MCP工具。
看完教程立刻去配置了,AI帮我搜索到了最新的技术资料。
感谢作者Aasee,让免费搜索成为可能。
期待未来能支持更多的搜索引擎,如Google和Yandex。