使用说明
SearXNG MCP服务器
一种模型上下文协议(MCP)服务器,使用本地SearXNG实例提供web搜索和抓取功能。专为与LM Studio和其他兼容MCP的AI客户端集成而设计。
特性
- 网页搜索:通过SearXNG在多个引擎(DuckDuckGo、谷歌、必应、Brave)上搜索
- 内容刮擦:自动从搜索结果中抓取和格式化内容
- 直接URL抓取:从特定URL提取内容
- Tor支持:可选通过Tor网络进行匿名抓取
- MCP协议:全面实施MCP HTTP协议,实现无缝AI助手集成
- 纯文本提取:删除表情符号、规范格式和限制字数
先决条件
- Python 3.8+
- 正在运行的SearXNG实例(默认值:
http://localhost:8080)
安装
-
克隆或下载此存储库
-
安装依赖项:
pip install -r requirements.txt
- 确保SearXNG在本地运行
http://localhost:8080
配置
编辑 searxng_mcp_server.py 自定义:
SEARXNG_BASE_URL = "http://localhost:8080/search" # Your SearXNG instance
DEFAULT_MAX_RESULTS = 5 # Default search results
DEFAULT_MAX_WORDS = 5000 # Max words per page
REQUEST_TIMEOUT = 20 # Request timeout (seconds)
SERVER_PORT = 8765 # Server port
USE_TOR = False # Route scraping through Tor (requires Tor on 127.0.0.1:9050)
Tor支持
要通过Tor启用匿名抓取:
- 安装并启动Tor服务(必须在上运行
127.0.0.1:9050) - 集
USE_TOR = True在配置中 - 重新启动服务器
启用后,所有网络抓取请求都将通过Tor网络路由。
用法
启动服务器
python searxng_mcp_server.py
服务器将在上运行 http://localhost:8765
使用LM Studio进行配置
添加到LM Studio MCP设置中:
{
"mcpServers": {
"searxng": {
"url": "http://localhost:8765",
"transport": "http"
}
}
}
可用工具
1.搜索_网站
搜索网络并抓取结果页面。
参数:
query(必填):搜索查询字符串max_results(可选):要抓取的结果数(默认值:5)
例子:
Search for "latest AI developments" and show me the top 3 results
2.获取_网站
从特定URL中抓取内容。
参数:
url(必填):要抓取的URL
例子:
Get the content from https://example.com
API终点
POST /-MCP协议端点GET /health-健康检查端点GET /-服务器信息(或SSE回退)
运作原理
- 接收来自AI助手的MCP工具调用
- 使用指定的搜索词查询SearXNG
- 以JSON格式检索搜索结果
- 从每个结果URL中删除内容
- 清理和格式化文本(删除HTML、表情符号、规范间距)
- 将内容截断到字数限制
- 将格式化结果返回给AI助手
许可证
麻省理工学院
