Skip to main content
Glama

searxng-mcp

CI Release Pages

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

  • search für prägnante Websuche mit vollständigen Roh-Payloads in _meta

  • search_many für paralleles Fan-out, Deduplizierung und zusammengeführtes Ranking

  • search_and_fetch für Suche plus Quell-Extraktion in einem Aufruf

  • research für Multi-Query-Suche mit Batch-Abrufen und zusammengeführten Quellen

  • fetch_url für lesbare Seitenextraktion mit Zitaten

  • fetch_many für parallele URL-Extraktion mit Caching

  • health fü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-mcp

Installation 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-mcp

Gerendertes 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-mcp

Beispiel 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-mcp

Streamfä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 8811

Gehä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 -d

Sicherheit und Vertrauen

Dieses Projekt ist sicher für den Einsatz in lokalen und vertrauenswürdigen Netzwerken. Es ist kein öffentlicher Internetdienst.

  • fetch_url und fetch_many können beliebige vom Client bereitgestellte URLs abrufen

  • gerenderte Extraktion kann Chromium gegen nicht vertrauenswürdige Seiten starten

  • streamable-http sollte bei jeder geteilten Bereitstellung hinter einer Authentifizierung oder einem Reverse-Proxy platziert werden

  • SEARXNG_MCP_FETCH_VERIFY_TLS=0 ist 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://config legt aktuelle Einstellungen, Transportmodus und Render-Unterstützung offen

  • searxng://guide fasst die verfügbaren Tools zusammen und wann diese zu verwenden sind

  • quick_lookup, deep_research und research_workflow sind optionale Kompatibilitäts-Prompts für Clients, die Prompt-Oberflächen unterstützen

Umgebung

Schlüsselvariablen:

  • SEARXNG_MCP_BASE_URL: SearXNG-Basis-URL, Standard http://127.0.0.1:8890

  • SEARXNG_MCP_FALLBACK_BASE_URLS: optionale, durch Kommas getrennte Fallback-SearXNG-Instanzen

  • SEARXNG_MCP_TRANSPORT: stdio, streamable-http oder sse

  • SEARXNG_MCP_SEARCH_TIMEOUT: Backend-Such-Timeout in Sekunden

  • SEARXNG_MCP_FETCH_TIMEOUT: Fetch-Timeout in Sekunden

  • SEARXNG_MCP_SEARCH_CACHE_TTL: Such-Cache-TTL in Sekunden

  • SEARXNG_MCP_FETCH_CACHE_TTL: Fetch-Cache-TTL in Sekunden

  • SEARXNG_MCP_FETCH_VERIFY_TLS: auf 0 setzen, um die TLS-Verifizierung bei Abrufen zu überspringen

  • SEARXNG_MCP_RENDER_TIMEOUT: Browser-Navigations-Timeout für gerenderte Abrufe

  • SEARXNG_MCP_RENDER_WAIT_MS: zusätzliche Wartezeit nach dem Laden des DOM-Inhalts für gerenderte Abrufe

  • SEARXNG_MCP_RENDER_CONCURRENCY: Limit für gleichzeitige gerenderte Abrufe

  • SEARXNG_MCP_RENDER_HEADLESS: auf 0 setzen, um den Browser anzuzeigen

  • SEARXNG_MCP_RENDER_BROWSER_PATH: expliziter Pfad zur Chromium- oder Chrome-Binary

  • SEARXNG_MCP_RENDER_SANDBOX: auf 1 setzen, um das Chromium-Sandboxing aktiviert zu lassen

  • SEARXNG_MCP_RENDER_BLOCK_RESOURCES: auf 0 setzen, um Bilder, Schriftarten, Stylesheets und Medien während des Renderns zuzulassen

  • SEARXNG_MCP_RENDER_AUTO_FALLBACK: auf 0 setzen, um das automatische gerenderte Fallback zu deaktivieren

  • SEARXNG_MCP_RENDER_AUTO_MIN_WORDS: verringern Sie diesen Wert, um das automatische Rendern aggressiver zu machen

  • SEARXNG_MCP_RENDER_AUTO_MIN_CHARS: verringern Sie diesen Wert, um das automatische Rendern aggressiver zu machen

  • SEARXNG_MCP_CACHE_DIR: Pfad zum Cache-Verzeichnis

Benchmarks

uv run searxng-mcp-bench --rounds 3

Die 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 --strict

Abhängigkeitswartung

Manuelle Prüfungen:

uv lock --upgrade --dry-run
uvx --from pip-audit pip-audit

Automatisierte Prüfungen:

  • wöchentliche Dependabot-PRs für uv-Abhängigkeiten und GitHub Actions

  • wöchentlicher Dependency Health-Workflow für Schwachstellen-Scans und Testläufe für Upgrades

Install Server
F
license - not found
A
quality
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    A
    maintenance
    An 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.
    462
    7
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    MCP server that provides a search_web tool to query a self-hosted SearXNG instance and return structured web search results.
    1

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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