searxng-mcp
searxng-mcp
MCP-сервер для SearXNG, который делает вывод для моделей кратким, сохраняет полные результаты в скрытых метаданных и поддерживает как локальные клиенты stdio, так и развертывание через streamable-http.
Что вы получаете
searchдля краткого веб-поиска с полными необработанными данными в_metasearch_manyдля параллельного веерного поиска, дедупликации и объединенного ранжированияsearch_and_fetchдля поиска и извлечения источников за один вызовresearchдля поиска по нескольким запросам с пакетной загрузкой и объединенными источникамиfetch_urlдля извлечения читаемого контента страниц с цитатамиfetch_manyдля параллельного извлечения URL с кэшированиемhealthдля проверки состояния бэкенда, кэша и рендеринга
Сервер спроектирован как легковесный. SearXNG выполняет работу по поиску; searxng-mcp управляет инструментами, кэшированием, извлечением и транспортом.
Related MCP server: SearXNG MCP Bridge
Быстрый старт
Установка из репозитория
uv sync
uv run searxng-mcpУстановка с помощью uvx
searxng-mcp распространяется из этого репозитория (релиза в PyPI нет). Самый быстрый путь:
uvx --from git+https://github.com/88plug/searxng-mcp searxng-mcpРендеринг при извлечении включен в установку по умолчанию. Если в системе уже есть Chromium или Chrome, searxng-mcp будет использовать их. В противном случае первый рендеринг автоматически загрузит Playwright Chromium в кэш пользователя.
Запуск через Docker
docker build -t searxng-mcp .
docker run --rm -p 8811:8811 --add-host=host.docker.internal:host-gateway \
-e SEARXNG_MCP_BASE_URL=http://host.docker.internal:8890 \
searxng-mcpПример для Claude Desktop
{
"mcpServers": {
"searxng-mcp": {
"command": "uvx",
"args": ["--from", "git+https://github.com/88plug/searxng-mcp", "searxng-mcp"],
"env": {
"SEARXNG_MCP_BASE_URL": "http://127.0.0.1:8890",
"SEARXNG_MCP_TRANSPORT": "stdio"
}
}
}
}Режимы развертывания
Локальный stdio
Используйте этот режим для настольных клиентов и частных рабочих процессов. Это самый простой и безопасный вариант.
SEARXNG_MCP_TRANSPORT=stdio uv run searxng-mcpПотоковый HTTP
Используйте этот режим для частного сервиса, командного развертывания или внутреннего эндпоинта за обратным прокси-сервером.
SEARXNG_MCP_TRANSPORT=streamable-http uv run searxng-mcp --host 0.0.0.0 --port 8811Усиленный Docker и Compose
Для долгосрочного самохостинга используйте усиленный вариант контейнера и предоставленный стек Compose.
docker build -f Dockerfile.prod -t searxng-mcp:prod .
cp docker-compose.env.example .env
docker compose up --build -dБезопасность и доверие
Этот проект безопасен для локального использования и использования в доверенных сетях. Он не является готовым публичным интернет-сервисом.
fetch_urlиfetch_manyмогут извлекать произвольные URL, предоставленные клиентомрендеринг при извлечении может запускать Chromium для обработки ненадежных страниц
streamable-httpследует защитить аутентификацией или обратным прокси-сервером при любом совместном развертыванииSEARXNG_MCP_FETCH_VERIFY_TLS=0предназначен только для частных или самоподписанных настроек бэкенда
Если вы открываете HTTP-транспорт, относитесь к нему как к внутреннему сервису и добавьте средства контроля, ожидаемые для любого инструмента, способного к SSRF.
Зачем это нужно
компактный вывод для моделей с сохранением всех деталей в скрытых метаданных
ускорение исследовательских рабочих процессов за счет параллельного поиска и веерного извлечения
рендеринг для страниц с активным использованием JS без дополнительных флагов установки
возможность самохостинга для тех, кому нужен собственный MCP-сервер на базе SearXNG
Интерфейс MCP
searxng://configоткрывает текущие настройки, режим транспорта и поддержку рендерингаsearxng://guideсуммирует доступные инструменты и случаи их использованияquick_lookup,deep_researchиresearch_workflow— это опциональные подсказки совместимости для клиентов, поддерживающих поверхности промптов
Окружение
Ключевые переменные:
SEARXNG_MCP_BASE_URL: базовый URL SearXNG, по умолчаниюhttp://127.0.0.1:8890SEARXNG_MCP_FALLBACK_BASE_URLS: опциональные резервные экземпляры SearXNG, разделенные запятымиSEARXNG_MCP_TRANSPORT:stdio,streamable-httpилиsseSEARXNG_MCP_SEARCH_TIMEOUT: таймаут поиска на бэкенде в секундахSEARXNG_MCP_FETCH_TIMEOUT: таймаут извлечения в секундахSEARXNG_MCP_SEARCH_CACHE_TTL: TTL кэша поиска в секундахSEARXNG_MCP_FETCH_CACHE_TTL: TTL кэша извлечения в секундахSEARXNG_MCP_FETCH_VERIFY_TLS: установите0для пропуска проверки TLS при извлеченииSEARXNG_MCP_RENDER_TIMEOUT: таймаут навигации браузера для рендерингаSEARXNG_MCP_RENDER_WAIT_MS: дополнительное ожидание после загрузки DOM для рендерингаSEARXNG_MCP_RENDER_CONCURRENCY: лимит параллельного рендерингаSEARXNG_MCP_RENDER_HEADLESS: установите0для отображения браузераSEARXNG_MCP_RENDER_BROWSER_PATH: явный путь к бинарному файлу Chromium или ChromeSEARXNG_MCP_RENDER_SANDBOX: установите1для включения песочницы ChromiumSEARXNG_MCP_RENDER_BLOCK_RESOURCES: установите0для разрешения изображений, шрифтов, стилей и медиа при рендерингеSEARXNG_MCP_RENDER_AUTO_FALLBACK: установите0для отключения автоматического резервного рендерингаSEARXNG_MCP_RENDER_AUTO_MIN_WORDS: уменьшите для более агрессивного авто-рендерингаSEARXNG_MCP_RENDER_AUTO_MIN_CHARS: уменьшите для более агрессивного авто-рендерингаSEARXNG_MCP_CACHE_DIR: путь к директории кэша
Бенчмарки
uv run searxng-mcp-bench --rounds 3Отчеты бенчмарков включают:
задержку необработанного бэкенда SearXNG
размер вывода поиска, видимый для токенов
задержку объединенного поиска по нескольким запросам
задержку исследовательского поиска по нескольким запросам
задержку извлечения
задержку рендеринга при извлечении
задержку пакетного извлечения
задержку пакетного рендеринга при извлечении
Документация
Сборка и тестирование
uv sync --all-groups
uv run pytest -q
uv run python -m compileall src
uv run mkdocs build --strictПоддержка зависимостей
Ручные проверки:
uv lock --upgrade --dry-run
uvx --from pip-audit pip-auditАвтоматизированные проверки:
еженедельные PR от Dependabot для зависимостей
uvи GitHub Actionsеженедельный рабочий процесс
Dependency Healthдля сканирования уязвимостей и пробных запусков обновлений
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server for connecting agentic systems to search systems via searXNG.1128MIT
- AlicenseNot gradedqualityAmaintenanceAn MCP server that acts as a bridge to SearXNG instances, allowing AI models to perform web searches with privacy-focused search tools. It supports both STDIO and HTTP transports, featuring built-in rate limiting and session management.4627MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that integrates the SearXNG API to provide web search with pagination, filtering, and URL content extraction.28MIT
- FlicenseAqualityCmaintenanceMCP server that provides a search_web tool to query a self-hosted SearXNG instance and return structured web search results.1
Related MCP Connectors
Serper MCP — wraps the Serper Google Search API (serper.dev)
MCP server for Google search results via SERP API
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/88plug/searxng-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server