SearXNG MCP服务器
一种使用SearXNG提供网络搜索功能的模型上下文协议(MCP)服务器。
特性
- 🔍 使用SearXNG实例进行Web搜索
- 🎯 类别过滤(一般、新闻、图像、视频、科学等)
- 🌍 多语言支持
- ⏰ 时间范围过滤
- 🛡️ 安全搜索选项
- 📊 带有标题、URL、片段和元数据的格式化结果
快速开始
先决条件
- Node.js 18或更高版本
- 正在运行的SearXNG实例
- ngrok(供公众分享)
安装
npm install配置
服务器在以下位置使用SearXNG实例 http://192.168.1.44:55001 默认情况下。你可以用以下命令覆盖它 SEARXNG_URL 环境变量:
export SEARXNG_URL=http://your-searxng-instance:port本地运行
npm start与ngrok公开分享
- 如果您还没有安装ngrok:
npm install -g ngrok- 启动MCP服务器:
npm start- 在另一个终端中,通过ngrok暴露它:
ngrok http 3000- 在MCP客户端配置中使用ngrok URL
LM Studio中的用法
供本地使用
将此添加到LM Studio MCP设置中:
{
"mcpServers": {
"searxng": {
"command": "node",
"args": ["C:\\Users\\claym\\Desktop\\public mcp\\index.js"],
"env": {
"SEARXNG_URL": "http://192.168.1.44:55001"
}
}
}
}供公众/共享使用(通过ngrok)
与他人共享时,他们可以使用此配置:
{
"mcpServers": {
"searxng": {
"command": "npx",
"args": ["-y", "searxng-mcp-server@latest"]
}
}
}注: 为了使npx版本正常工作,您需要先将其发布到npm。
可用工具
web_search
使用SearXNG搜索网络。
参数:
query(必填):搜索查询categories(可选):搜索类别-“一般”、“新闻”、“图片”、“视频”、“科学”等。默认值:“常规”language(可选):语言代码,如“en”、“es”、“fr”。默认值:“en”time_range(可选):按时间筛选-“天”、“周”、“月”、“年”。默认值:所有时间safesearch(可选):安全搜索级别-0(关闭),1(中等),2(严格)。默认值:0
例子:
Search for "latest AI news" in the news category from the past week发展
项目结构
.
├── index.js # Main MCP server implementation
├── package.json # Dependencies and scripts
└── README.md # This file测试
您可以使用任何兼容MCP的客户端测试服务器,例如:
- LM工作室
- 克劳德桌面版
- 其他MCP客户端
故障排除
连接问题
如果您无法连接到SearXNG:
- 验证您的SearXNG实例是否正在运行:
curl http://192.168.1.44:55001 - 检查防火墙设置
- 确保配置中的URL正确
没有结果
如果搜索未返回结果:
- 直接在SearXNG web界面中测试相同的查询
- 尝试不同的类别或删除筛选器
- 检查SearXNG日志是否有错误
许可证
麻省理工学院
