SearXNG MCP 服务器
与 SearXNG 集成的 MCP 服务器实现,提供以隐私为中心的元搜索功能。
特征
- 元搜索:整合来自多个搜索引擎的结果
- 注重隐私:不跟踪,不进行用户分析
- 多种类别:支持一般、新闻、科学、文件、图像、视频等
- 语言支持:以特定语言或所有语言搜索
- 时间范围过滤:按日、周、月或年过滤结果
- 安全搜索:三级安全搜索过滤
- 后备支持:多个 SearXNG 实例以确保可靠性
安装
npm install -g @kevinwatt/mcp-server-searxng
用法
直接运行
- 在 Dive Desktop 中点击“+ 添加 MCP 服务器”
- 复制并粘贴此配置:
{
"mcpServers": {
"searxng": {
"command": "npx",
"args": [
"-y",
"@kevinwatt/mcp-server-searxng"
]
}
}
}
- 点击“保存”安装 MCP 服务器
工具文档
- 网络搜索
- 跨多个引擎执行元搜索
- 输入:
query
(字符串):搜索词page
(数字,可选):页码(默认值:1)language
(字符串,可选):语言代码(例如,“en”,“all”,默认值:“all”)categories
(数组,可选):搜索类别(默认值:['general'])- 可用:“一般”、“新闻”、“科学”、“文件”、“图像”、“视频”、“音乐”、“社交媒体”、“它”
time_range
(字符串,可选):时间过滤器(日/周/月/年)safesearch
(数字,可选):安全搜索级别(0:无,1:中等,2:严格,默认值:1)
发展
git clone https://github.com/kevinwatt/mcp-server-searxng.git
cd mcp-server-searxng
npm install
npm run build
npm start
执照
此 MCP 服务器采用 MIT 许可证��详情请参阅许可证文件。
先决条件
您需要运行一个本地 SearXNG 实例。设置方法如下:
使用 Docker 运行 SearXNG
快速入门
# Create config directory
mkdir -p searxng
# Create config file
tee searxng/settings.yml << EOF
use_default_settings: true
server:
bind_address: "0.0.0.0"
secret_key: "CHANGE_THIS_TO_SOMETHING_SECURE" # Generate a random key
port: 8080
search:
safe_search: 0
formats:
- html
- json
engines:
- name: google
engine: google
shortcut: g
- name: duckduckgo
engine: duckduckgo
shortcut: d
- name: bing
engine: bing
shortcut: b
server.limiter: false
EOF
# Start container
docker run -d \
--name searxng \
-p 8080:8080 \
-v "$(pwd)/searxng:/etc/searxng" \
searxng/searxng
测试搜索功能
# Test JSON API with curl
curl -v 'http://localhost:8080/search?q=test&format=json'
# Or visit in browser
http://localhost:8080/search?q=test
容器管理
# Stop container
docker stop searxng
# Remove container
docker rm searxng
# View container logs
docker logs searxng
# Enable auto-start on boot
docker update --restart always searxng
--restart always
标志可确保:
- Docker 守护进程启动时容器自动启动
- 如果容器崩溃,则会自动重启
- 容器停止后会自动重启,除非用户明确停止
自定义配置
编辑searxng/settings.yml
如下:
- 修改搜索引擎列表
- 调整安全设置
- 配置 UI 语言
- 更改 API 限制
有关详细配置选项,请参阅SearXNG 文档
环境变量
SEARXNG_INSTANCES
:以逗号分隔的 SearXNG 实例 URL 列表默认值: http://localhost:8080
SEARXNG_USER_AGENT
:请求的自定义 User-Agent 标头默认值: MCP-SearXNG/1.0
NODE_TLS_REJECT_UNAUTHORIZED
:设置为“0”以绕过 SSL 证书验证(用于使用自签名证书的开发)默认值:未定义(启用 SSL 验证)
包含所有选项的示例配置:
{
"mcpServers": {
"searxng": {
"name": "searxng",
"command": "npx",
"args": [
"-y",
"@kevinwatt/mcp-server-searxng"
],
"env": {
"SEARXNG_INSTANCES": "http://localhost:8080,https://searx.example.com",
"SEARXNG_USER_AGENT": "CustomBot/1.0",
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
}
}
}
}
⚠️ 警告:不建议在生产环境中禁用 SSL 证书验证。