searxng-mcp
searxng-mcp
Ein MCP-Server für SearXNG, der die für Modelle sichtbare Ausgabe kurz hält, vollständige Ergebnis-Payloads in versteckten Metadaten bewahrt und sowohl lokale stdio-Clients als auch den Einsatz von streamable-http unterstützt.
Was Sie erhalten
searchfür prägnante Websuche mit vollständigen Roh-Payloads in_metasearch_manyfür paralleles Fan-out, Deduplizierung und zusammengeführtes Rankingsearch_and_fetchfür Suche plus Quell-Extraktion in einem Aufrufresearchfür Multi-Query-Suche mit Batch-Abrufen und zusammengeführten Quellenfetch_urlfür lesbare Seitenextraktion mit Zitatenfetch_manyfür parallele URL-Extraktion mit Cachinghealthfür Backend-, Cache- und Render-Status
Der Server ist schlank konzipiert. SearXNG übernimmt die Sucharbeit; searxng-mcp kümmert sich um die Tool-Gestaltung, das Caching, die Extraktion und den Transport.
Related MCP server: SearXNG MCP Bridge
Schnellstart
Installation aus einem Checkout
uv sync
uv run searxng-mcpInstallation mit uvx
searxng-mcp wird aus diesem Repository verteilt (kein PyPI-Release). Der kürzeste Weg ist:
uvx --from git+https://github.com/88plug/searxng-mcp searxng-mcpGerendertes Abrufen ist in der Standardinstallation enthalten. Wenn der Host bereits Chromium oder Chrome hat, verwendet searxng-mcp dieses. Andernfalls lädt der erste gerenderte Abruf Playwright Chromium automatisch in den Benutzer-Cache.
Ausführung mit 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-mcpBeispiel für 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"
}
}
}
}Bereitstellungsmodi
Lokales stdio
Verwenden Sie dies für Desktop-Clients und private Workflows. Es ist der einfachste und sicherste Modus.
SEARXNG_MCP_TRANSPORT=stdio uv run searxng-mcpStreamfähiges HTTP
Verwenden Sie dies für einen privaten Dienst, eine Team-Bereitstellung oder einen per Reverse-Proxy geschützten internen Endpunkt.
SEARXNG_MCP_TRANSPORT=streamable-http uv run searxng-mcp --host 0.0.0.0 --port 8811Gehärtetes Docker und Compose
Für einen länger laufenden, selbst gehosteten Dienst verwenden Sie die gehärtete Container-Variante und den bereitgestellten Compose-Stack.
docker build -f Dockerfile.prod -t searxng-mcp:prod .
cp docker-compose.env.example .env
docker compose up --build -dSicherheit und Vertrauen
Dieses Projekt ist sicher für den Einsatz in lokalen und vertrauenswürdigen Netzwerken. Es ist kein öffentlicher Internetdienst.
fetch_urlundfetch_manykönnen beliebige vom Client bereitgestellte URLs abrufengerenderte Extraktion kann Chromium gegen nicht vertrauenswürdige Seiten starten
streamable-httpsollte bei jeder geteilten Bereitstellung hinter einer Authentifizierung oder einem Reverse-Proxy platziert werdenSEARXNG_MCP_FETCH_VERIFY_TLS=0ist nur für private oder selbstsignierte Backend-Setups gedacht
Wenn Sie den HTTP-Transport freigeben, behandeln Sie ihn wie einen internen Dienst und fügen Sie die Kontrollen hinzu, die Sie für jedes SSRF-fähige Tool erwarten würden.
Warum existiert dieses Projekt?
kompakte, für Modelle sichtbare Ausgabe, wobei vollständige Details in versteckten Metadaten erhalten bleiben
schnellere Recherche-Workflows durch parallele Suche und Fetch-Fan-out
gerenderte Extraktion für JS-lastige Seiten ohne zusätzliche Installations-Flags
selbst hostbare Bereitstellung für Benutzer, die ihren eigenen SearXNG-basierten MCP-Server wünschen
MCP-Oberfläche
searxng://configlegt aktuelle Einstellungen, Transportmodus und Render-Unterstützung offensearxng://guidefasst die verfügbaren Tools zusammen und wann diese zu verwenden sindquick_lookup,deep_researchundresearch_workflowsind optionale Kompatibilitäts-Prompts für Clients, die Prompt-Oberflächen unterstützen
Umgebung
Schlüsselvariablen:
SEARXNG_MCP_BASE_URL: SearXNG-Basis-URL, Standardhttp://127.0.0.1:8890SEARXNG_MCP_FALLBACK_BASE_URLS: optionale, durch Kommas getrennte Fallback-SearXNG-InstanzenSEARXNG_MCP_TRANSPORT:stdio,streamable-httpodersseSEARXNG_MCP_SEARCH_TIMEOUT: Backend-Such-Timeout in SekundenSEARXNG_MCP_FETCH_TIMEOUT: Fetch-Timeout in SekundenSEARXNG_MCP_SEARCH_CACHE_TTL: Such-Cache-TTL in SekundenSEARXNG_MCP_FETCH_CACHE_TTL: Fetch-Cache-TTL in SekundenSEARXNG_MCP_FETCH_VERIFY_TLS: auf0setzen, um die TLS-Verifizierung bei Abrufen zu überspringenSEARXNG_MCP_RENDER_TIMEOUT: Browser-Navigations-Timeout für gerenderte AbrufeSEARXNG_MCP_RENDER_WAIT_MS: zusätzliche Wartezeit nach dem Laden des DOM-Inhalts für gerenderte AbrufeSEARXNG_MCP_RENDER_CONCURRENCY: Limit für gleichzeitige gerenderte AbrufeSEARXNG_MCP_RENDER_HEADLESS: auf0setzen, um den Browser anzuzeigenSEARXNG_MCP_RENDER_BROWSER_PATH: expliziter Pfad zur Chromium- oder Chrome-BinarySEARXNG_MCP_RENDER_SANDBOX: auf1setzen, um das Chromium-Sandboxing aktiviert zu lassenSEARXNG_MCP_RENDER_BLOCK_RESOURCES: auf0setzen, um Bilder, Schriftarten, Stylesheets und Medien während des Renderns zuzulassenSEARXNG_MCP_RENDER_AUTO_FALLBACK: auf0setzen, um das automatische gerenderte Fallback zu deaktivierenSEARXNG_MCP_RENDER_AUTO_MIN_WORDS: verringern Sie diesen Wert, um das automatische Rendern aggressiver zu machenSEARXNG_MCP_RENDER_AUTO_MIN_CHARS: verringern Sie diesen Wert, um das automatische Rendern aggressiver zu machenSEARXNG_MCP_CACHE_DIR: Pfad zum Cache-Verzeichnis
Benchmarks
uv run searxng-mcp-bench --rounds 3Die Benchmark-Berichte enthalten:
rohe SearXNG-Backend-Latenz
Token-sichtbare Suchausgabegröße
zusammengeführte Multi-Query-Suchlatenz
Multi-Query-Recherche-Latenz
Fetch-Extraktionslatenz
gerenderte Fetch-Latenz
Batch-Fetch-Extraktionslatenz
gerenderte Batch-Fetch-Latenz
Dokumentation
Erstellen und Testen
uv sync --all-groups
uv run pytest -q
uv run python -m compileall src
uv run mkdocs build --strictAbhängigkeitswartung
Manuelle Prüfungen:
uv lock --upgrade --dry-run
uvx --from pip-audit pip-auditAutomatisierte Prüfungen:
wöchentliche Dependabot-PRs für
uv-Abhängigkeiten und GitHub Actionswöchentlicher
Dependency Health-Workflow für Schwachstellen-Scans und Testläufe für Upgrades
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