modelscope·@OvertliDS/mcp-searxng-enhanced
暂无描述。
一个用于分类感知的网络搜索、网站抓取和日期/时间工具的模型上下文协议(MCP)服务器。专为与 SearXNG 和现代 MCP 客户端无缝集成而设计。
构建 Docker 镜像: bash docker build -t overtlids/mcp-searxng-enhanced:latest .
使用您的 SearXNG 实例运行(手动 Docker 运行): bash docker run -i --rm --network=host -e SEARXNG_ENGINE_API_BASE_URL="http://127.0.0.1:8080/search" -e DESIRED_TIMEZONE="America/New_York" overtlids/mcp-searxng-enhanced:latest
在此示例中,SEARXNG_ENGINE_API_BASE_URL 明确设置。DESIRED_TIMEZONE 也明确设置为 America/New_York,这与其默认值匹配。如果在 docker run 命令期间未通过 -e 标志提供环境变量,则服务器将自动使用其 Dockerfile 中定义的默认值(请参阅下面的环境变量表)。因此,如果您打算使用 DESIRED_TIMEZONE 的默认值,可以省略 -e DESIRED_TIMEZONE="America/New_York" 标志。但是,SEARXNG_ENGINE_API_BASE_URL 是关键性的,通常需要设置为与您的特定 SearXNG 实例地址相匹配,如果 Dockerfile 默认值 (http://host.docker.internal:8080/search) 不合适的话。
关于手动 Docker 运行的注意事项: 此命令独立运行 Docker 容器。如果您使用的是 MCP 客户端(如 VS Code 中的 Cline)来管理此服务器,客户端将根据 其自己的配置 启动容器实例。为了让 MCP 客户端使用特定的环境变量,它们 必须 在客户端为此服务器设置的配置中进行配置(见下文)。
配置您的 MCP 客户端(例如,VS Code 中的 Cline):
为了使您的 MCP 客户端能够正确管理和运行此服务器,您 必须 在客户端针对 overtlids/mcp-searxng-enhanced 服务器的设置中定义所有必要的环境变量。MCP 客户端将使用这些设置来构造 docker run 命令。
以下是在您的 MCP 客户端 JSON 设置(例如 cline_mcp_settings.json)中推荐的此服务器的 默认配置。此示例明确列出了所有设置为其 Dockerfile 中定义的默认值的环境变量。您可以直接复制粘贴此内容,然后根据需要自定义任何值。
json { "mcpServers": { "overtlids/mcp-searxng-enhanced": { "command": "docker", "args": [ "run", "-i", "--rm", "--network=host", "-e", "SEARXNG_ENGINE_API_BASE_URL=http://host.docker.internal:8080/search", "-e", "DESIRED_TIMEZONE=America/New_York", "-e", "ODS_CONFIG_PATH=/config/ods_config.json", "-e", "RETURNED_SCRAPPED_PAGES_NO=3", "-e", "SCRAPPED_PAGES_NO=5", "-e", "PAGE_CONTENT_WORDS_LIMIT=5000", "-e", "CITATION_LINKS=True", "-e", "MAX_IMAGE_RESULTS=10", "-e", "MAX_VIDEO_RESULTS=10", "-e", "MAX_FILE_RESULTS=5", "-e", "MAX_MAP_RESULTS=5", "-e", "MAX_SOCIAL_RESULTS=5", "-e", "TRAFILATURA_TIMEOUT=15", "-e", "SCRAPING_TIMEOUT=20", "-e", "CACHE_MAXSIZE=100", "-e", "CACHE_TTL_MINUTES=5", "-e", "CACHE_MAX_AGE_MINUTES=30", "-e", "RATE_LIMIT_REQUESTS_PER_MINUTE=10", "-e", "RATE_LIMIT_TIMEOUT_SECONDS=60", "-e", "IGNORED_WEBSITES=", "overtlids/mcp-searxng-enhanced:latest" ], "timeout": 60 } } }MCP 客户端配置的关键点:
args 数组内相应的 -e "VARIABLE_NAME=value" 行的值即可。例如,要更改 SEARXNG_ENGINE_API_BASE_URL 和 DESIRED_TIMEZONE,则调整它们各自的行。ods_config.json 文件也可以影响设置(请参见配置管理),但通过 MCP 客户端传递的环境变量优先。如果您希望不使用 Docker 而直接使用 Python 运行服务器,请按照以下步骤操作:
1. Python 安装:
2. 克隆仓库:
3. 创建并激活虚拟环境(推荐):
使用虚拟环境有助于管理依赖项,并避免与其他 Python 项目发生冲突。 bash
python3 -m venv .venv source .venv/bin/activate
python -m venv .venv ..venvScriptsactivate.bat
python -m venv .venv ..venvScriptsActivate.ps1
4. 安装依赖项:
安装所需的 Python 包: bash pip install -r requirements.txt
关键依赖项包括 httpx、BeautifulSoup4、pydantic、trafilatura、python-dateutil、cachetools 和 zoneinfo。
5. 确保 SearXNG 可访问:
http://127.0.0.1:8080/search)。6. 设置环境变量:
服务器通过环境变量进行配置。至少,您可能需要设置 SEARXNG_ENGINE_API_BASE_URL。
Linux/macOS (bash/zsh): bash export SEARXNG_ENGINE_API_BASE_URL="http://your-searxng-instance:port/search" export DESIRED_TIMEZONE="America/Los_Angeles"
Windows(命令提示符): bash set SEARXNG_ENGINE_API_BASE_URL="http://your-searxng-instance:port/search" set DESIRED_TIMEZONE="America/Los_Angeles"
Windows(PowerShell): bash $env:SEARXNG_ENGINE_API_BASE_URL="http://your-searxng-instance:port/search" $env:DESIRED_TIMEZONE="America/Los_Angeles"
有关所有可用选项,请参阅下面的“环境变量”表。如果未设置,则将使用脚本中的默认值或 ods_config.json 文件(如果在根目录或 ODS_CONFIG_PATH 指定的路径中存在)中的值。
7. 运行服务器:
执行 Python 脚本: bash python mcp_server.py
服务器将启动并通过 stdin/stdout 监听来自 MCP 客户端的连接。
8. 配置文件 (ods_config.json):
ODS_CONFIG_PATH 环境变量指定的路径)中的 ods_config.json 文件。环境变量始终优先于该文件中的值。示例:
json
{
"searxng_engine_api_base_url": "http://127.0.0.1:8080/search",
"desired_timezone": "America/New_York"
}| 变量 | 描述 | 默认值(来自Dockerfile) | 备注 |
|---|---|---|---|
SEARXNG_ENGINE_API_BASE_URL | SearXNG搜索端点 | http://host.docker.internal:8080/search | 对服务器操作至关重要 |
DESIRED_TIMEZONE | 日期/时间工具的时区 | America/New_York | 例如,America/Los_Angeles。时区数据库列表:https://en.wikipedia.org/wiki/List_of_tz_… |
一个为大型语言模型(LLM)设计的、高可用的12306余票查询工具服务,现已搭载智能会话管理引擎。 12306-MCP-Server 将复杂的12306余票查询接口封装为符合 Model Context Protocol (MCP) 规范的工具集,允许AI Agent通过自然语言无缝查询实时火车票、中转换乘和经停站信息。 从 v1.0.0 版本开始,项目引入了全新的智能会话管理系统,通过会话池、动态User-Agent轮换和自动错误恢复机制,将服务的稳定性与反屏蔽能力提升至全新高度。
一个MCP服务器,它在本地git仓库上提供语义搜索功能,使用户能够克隆仓库、处理分支并通过矢量化代码块搜索代码。
一种模型上下文协议(MCP)服务器,可以帮助大型语言模型以最少的设置来索引、搜索和分析代码库。
通过向量嵌入技术,为项目提供记忆库和RAG上下文支持,以增强代码理解和管理,并与RooCode和Cline集成。
VariFlight航班信息服务的模型上下文协议(MCP)服务器实现方案。该服务器提供了多种工具,支持查询航班信息、天气数据及航班舒适度指标。
基于GTFS数据的Caltrain火车时刻查询服务,提供实时火车时刻表、站点查询和时间特定查询功能。