websearch
Allows performing web searches using Brave as a search source, with failover across multiple providers and the ability to list available sources via the MCP server.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@websearchsearch for the latest news on OpenAI"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
webSearch 多源聚合搜索引擎
一个前后端一体、单端口部署的多源搜索引擎:内置多个搜索源(Tavily / 豆包 / Brave / Exa / Browserbase), 按优先级故障转移,谁先成功返回谁。对外提供 REST API 与 MCP server,均用生成的访问密钥鉴权。
后端:NestJS(Node),failover 搜索引擎 + API/MCP
前端:Vue 3 + Element Plus 管理页
单进程单端口:由后端直接托管前端构建产物,
前端 + API + MCP都在一个端口上
快速部署(供人复制即跑)
要求:Node.js ≥ 18。推荐在项目根目录用一条命令装依赖:
git clone <你的仓库地址> && cd websearch
npm install # 自动安装 backend + frontend 依赖(通过 postinstall)
cp backend/.env.example backend/.env # 复制配置文件,按需修改(见下)
npm run build # 构建前端 + 后端
npm start # 启动,单端口提供整个服务打开浏览器访问 http://localhost:3000(端口在 backend/.env 的 PORT 改)。
部署到服务器时:
npm start默认监听0.0.0.0,改.env的PORT即可换端口; 建议用 pm2 / systemd 守护进程(如pm2 start "npm start" --name websearch)。
Related MCP server: Search Toolkit
配置文件 backend/.env
所有部署相关的配置都在这一个文件里(复制自 .env.example):
变量 | 作用 |
| 整个服务(前端+后端)的访问端口,默认 |
| 可选。设置后,管理接口(/api/providers 等)需带该 Key 才能访问;留空则放开 |
| 各搜索源 Key(也可在后端「搜索源管理」页面里填) |
⚠️
.env已被.gitignore忽略,不会提交;要共享模板请改.env.example。
使用:生成访问密钥,接入 API / MCP
打开管理页 → 顶部「访问密钥」→ 点「生成访问密钥」,选作用域(api / mcp / 都要), 一次显示出明文并以 REST / MCP 两段示例一键复制(地址自动按当前访问的域名生成)。
REST API:
curl -X POST http://localhost:3000/api/v1/search \
-H "Authorization: Bearer <你的KEY>" \
-H "Content-Type: application/json" \
-d '{"query":"claude"}'MCP server(streamable HTTP): 端点 http://localhost:3000/mcp,带上 Authorization: Bearer 请求头。
支持 Claude Desktop / Cursor 等可配置 HTTP 头的客户端,示例(claude_desktop_config.json 的 mcpServers):
{
"mcpServers": {
"websearch": {
"type": "http",
"url": "http://localhost:3000/mcp",
"headers": { "Authorization": "Bearer <你的KEY>" }
}
}
}密钥安全:明文只在生成时显示一次,backend/data/keys.json 只存 SHA-256 哈希;可随时启用/停用/吊销。
常用 API
方法 / 路径 | 说明 | 鉴权 |
| 对外搜索 REST(后端逻辑同 /api/search) | 访问密钥(scope=api) |
| 管理端搜索(failover) | ADMIN_KEY(未设则放开) |
| MCP server(工具: | 访问密钥(scope=mcp) |
| 生成 / 列表 / 吊销访问密钥 | ADMIN_KEY(未设则放开) |
| 源 / 代理管理 | ADMIN_KEY(未设则放开) |
| 健康检查 | 无 |
开发模式
npm run dev:web # 前端 Vite dev(http://localhost:5173,/api 已代理到 3000)
# 另开一个终端:
npm run dev:api # 后端热重载(http://localhost:3000)运行时数据
backend/data/sources.json— 搜索源配置(页面里也能改)backend/data/proxies.json— 代理配置backend/data/keys.json— 访问密钥(仅哈希)
backend/data/ 已被 .gitignore 忽略,部署时建议挂到持久化目录(docker volume / 软链)。
This server cannot be deployed
Maintenance
Related MCP Connectors
Multi-engine search for AI agents. Trust scoring, local corpus, MCP-native. Self-hostable, BYOK.
Search the agentic web. 4,100+ sites, 11 tools incl. check_url + verify_mcp for probe-before-use.
Agent-driven search: build, import, tune, search, and score result quality — all over MCP.
Verified business OSS MCP for search, RSS, crawling, documents, browser, media and transcription.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenancePrivacy-focused web search MCP server using SearXNG with Streamable HTTP transport, supporting authentication and advanced search parameters.-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform web search, extraction, and research across multiple provider backends with persistent multi-key rotation and auditable routing. Supports MCP, CLI, and Agent Skill entry points.MIT
- AlicenseAqualityBmaintenanceProvides an MCP server that enables web search and page extraction across multiple providers with automatic failover and quota rotation, plus a local dashboard for managing keys, engine order, and request history.4MIT
- FlicenseAqualityBmaintenanceEnables web search and anonymous public-page retrieval through MCP, with provider-neutral selection, bounded plain-text results, and built-in auditing.2-