Self-Hosting

Sifthound bietet eine selbst gehostete, austauschbare Alternative zur Tavily-Such-API

Der GitHub-Nutzer khsarvar hat Sifthound veröffentlicht, eine Open-Source-Alternative zu Tavily, die auf Ihrer eigenen Infrastruktur läuft, SearXNG nutzt und MCP unterstützt.

Illustration eines selbst gehosteten Suchservers, der mit einer Entwickler-Workstation verbunden ist
Für diesen Artikel erstellte Illustration

Automatisch aus dem englischen Original übersetzt.

Am 25. September 2026 veröffentlichte der GitHub-Nutzer khsarvar Sifthound, ein Open-Source-Projekt, das als selbst gehostete Alternative zur Tavily-Websuche-API konzipiert ist. Diese Veröffentlichung richtet sich an Entwicklungsteams, die KI-Agenten und Anwendungen mit großen Sprachmodellen (LLMs) erstellen und ihre eigene Infrastruktur verwalten möchten, anstatt sich auf externe Software-as-a-Service-Anbieter zu verlassen. Das Tool repliziert die Kernfunktionalität von Tavily, läuft jedoch vollständig auf lokalen oder privaten Servern.

Was passiert ist

Sifthound wurde entwickelt, um die Struktur der Tavily-API nachzubilden, und bietet Endpunkte für Suche, Inhaltsextraktion, Crawling und Site-Mapping. Durch die Übereinstimmung mit den Anfrage- und Antwortformaten des ursprünglichen Dienstes können Entwickler mit minimalen Codeänderungen von der gehosteten Tavily-Plattform zu ihrer eigenen Instanz wechseln. Das Projekt basiert auf SearXNG, einer datenschutzfreundlichen Metasuchmaschine, die Ergebnisse von öffentlichen Suchanbietern wie DuckDuckGo und Brave sammelt. Für die Inhaltsverarbeitung wird trafilatura verwendet, um sauberen Text und Markdown aus Webseiten zu extrahieren, sowie BM25-Algorithmen für das Relevanz-Ranking anstelle von neuronalem Reranking.

Die Veröffentlichung umfasst Unterstützung für das Model Context Protocol (MCP), was eine direkte Integration mit KI-Coding-Assistenten wie Claude Desktop und Cursor ermöglicht. Entwickler können Sifthound über Docker Compose ausführen, das die erforderliche SearXNG-Instanz bündelt, oder es direkt über pip installieren. Das Projekt steht unter der MIT-Lizenz, die kostenlose Nutzung und Modifikation erlaubt, wobei der Name selbst durch eine separate Markenrichtlinie geschützt ist, die Forks zwingt, andere Brandings zu verwenden.

Wichtige Details

  • Drop-in-Kompatibilität: Die API akzeptiert dieselben Parameter wie Tavily für die Endpunkte /search, /extract, /crawl und /map. Sie funktioniert mit offiziellen Python-SDKs und LangChain-Integrationen, indem einfach die Basis-URL geändert wird.
  • Keine Such-API-Schlüssel erforderlich: Suchabfragen werden über SearXNG geleitet, wodurch individuelle API-Schlüssel von Suchmaschinen entfallen, obwohl ein Anthropic-Schlüssel optional für die Generierung direkter Antworten ist.
  • Sicherheitsmaßnahmen: Das System blockiert Anfragen an private, Loopback- und Link-Local-Adressen, um Server-Side Request Forgery (SSRF) zu verhindern, einschließlich Prüfungen gegen DNS-Rebinding-Angriffe bei Weiterleitungen.
  • MCP-Unterstützung: Es stellt einen MCP-Server über HTTP unter /mcp bereit und unterstützt stdio-Ausführung für lokale Clients, sodass KI-Agenten Suchtools direkt in ihrem Workflow nutzen können.
  • Unterschiede im Ranking: Relevanzwerte werden unter Verwendung von BM25-Blending berechnet, nicht durch Tavllys neuronales Reranker-Modell. Funktionen wie include_image_descriptions werden akzeptiert, derzeit aber ignoriert.
  • Fehlerbehandlung: Wenn alle Upstream-Suchmaschinen die Server-IP drosseln oder CAPTCHAs anzeigen, gibt Sifthound einen 502-Fehler mit spezifischen Gründen zurück, anstatt eines leeren Ergebnisses. Dies hilft Agenten, zwischen „keine Ergebnisse“ und temporären Ausfällen zu unterscheiden.

Hintergrund

Tavily ist bei KI-Entwicklern beliebt geworden, da es die komplexe Aufgabe vereinfacht, Echtzeit-Webdaten für große Sprachmodelle abzurufen. Normalerweise müsste ein Agent mehrere Suchmaschinen abfragen, unordentliches HTML parsen, Werbung und Navigationselemente entfernen und die Ergebnisse nach Relevanz ordnen. Tavily übernimmt diese Pipeline als verwalteter Dienst. Die Abhängigkeit von einer Drittanbieter-API führt jedoch zu Abhängigkeiten von externer Verfügbarkeit, Preismodellen und Datenschutzrichtlinien. Selbst gehostete Lösungen zielen darauf ab, Teams die Kontrolle über diese Datenpipeline zu geben, sensible Abfrageprotokolle intern zu halten und Kosten pro Anfrage zu vermeiden.

SearXNG bildet das Rückgrat für die Suchfunktionen von Sifthound. Es ist eine Open-Source-Metasuchmaschine, die Ergebnisse verschiedener Anbieter aggregiert, ohne Benutzer zu tracken. Durch die Kombination von SearXNG mit Extraktionstools wie trafilatura recreates Sifthound das Wertversprechen von Tavily: Bereitstellung sauberer, strukturierter Daten für KI-Modelle. Die Einbeziehung der MCP-Unterstützung spiegelt einen wachsenden Trend in der KI-Entwicklung wider, bei dem Tools standardisiert werden, um nahtlose Interaktionen zwischen verschiedenen KI-Clients und lokalen Ressourcen zu ermöglichen.

Warum es wichtig ist

Für Teams, die ihre eigene Software betreiben, reduziert die Kontrolle der Suchschicht eines KI-Agenten das operative Risiko und die Kosten. Wenn Sie Sifthound selbst hosten, unterliegen Sie nicht den Rate Limits oder Preiserhöhungen kommerzieller API-Anbieter. Dies ist besonders wichtig für Anwendungen, die hohe Volumina an Suchen durchführen, wo Gebühren pro Aufruf schnell akkumulieren können. Darüber hinaus stellt die On-Premise-Haltung der Suchabfragen sicher, dass proprietäre Recherchen oder interne Datenreferenzen Ihr Netzwerk nicht verlassen, was Compliance-Anforderungen vieler Unternehmen erfüllt.

Die Drop-in-Natur der API bedeutet, dass Engineering-Teams ihre bestehenden Codebasen nicht refactorn müssen, um von Self-Hosting zu profitieren. Wenn ein Projekt bereits langchain-tavily oder den offiziellen Tavily Python Client verwendet, erfordert der Wechsel zu Sifthound nur eine Konfigurationsänderung. Dies senkt die Einstiegshürde für Organisationen, die sich von SaaS-Abhängigkeiten lösen möchten, ohne erhebliche technische Schulden anzuhäufen. Es bietet auch eine Fallback-Option, falls externe Dienste Ausfälle erleben, und gewährleistet so die Geschäftskontinuität für kritische KI-Workflows.

Self-Hosting bringt jedoch Kompromisse mit sich. Sifthound bietet kein JavaScript-Rendering an, was bedeutet, dass es Inhalte aus Single-Page-Anwendungen, die stark auf clientseitiges Scripting angewiesen sind, nicht extrahieren kann. Teams, die diese Funktion benötigen, sind möglicherweise weiterhin auf Tools wie Firecrawl angewiesen. Da Sifthound zudem auf öffentliche Suchmaschinen über SearXNG setzt, ist es denselben CAPTCHA- und Rate-Limiting-Problemen ausgesetzt, die jeden automatisierten Scraper betreffen. Das Verständnis dieser Einschränkungen hilft Teams, zu entscheiden, ob der Kompromiss zwischen Kontrolle und Bequemlichkeit für ihren spezifischen Anwendungsfall geeignet ist.

Was Sie tun können

  • API lokal testen: Klonen Sie das Repository und führen Sie docker compose up aus, um eine lokale Instanz zu starten. Verwenden Sie anschließend curl oder das Python SDK, um Such- und Extraktionsfähigkeiten gegen Ihren aktuellen Workflow zu überprüfen.
  • API-Schlüssel konfigurieren: Setzen Sie die Umgebungsvariable API_KEYS, um den Zugriff auf Ihre Sifthound-Instanz einzuschränken und sicherzustellen, dass nur autorisierte Anwendungen Such- oder Crawl-Vorgänge auslösen können.
  • SearXNG-Einstellungen anpassen: Bearbeiten Sie die Datei docker/searxng/settings.yml, um weitere Suchmaschinen zu aktivieren. Dies hilft, Rate-Limiting-Probleme zu mildern, wenn ein Anbieter Ihre IP-Adresse vorübergehend blockiert.
  • Mit MCP-Clients integrieren: Fügen Sie Sifthound Ihrer Claude Desktop- oder Cursor-Konfiguration hinzu, indem Sie das bereitgestellte JSON-Snippet verwenden, um die natürliche Sprachsuche direkt in Ihrer Coding-Umgebung zu aktivieren.
  • Fehlerprotokolle überwachen: Achten Sie auf 502-Fehler, die auf fehlgeschlagene Engines hinweisen, und implementieren Sie Retry-Logik in Ihrer Anwendung, um temporäre Blockaden von Upstream-Suchanbietern elegant zu behandeln.
  • Rendering-Bedarf evaluieren: Bewerten Sie, ob Ihre Zielwebseiten JavaScript-Rendering erfordern. Falls ja, planen Sie die Integration eines separaten Rendering-Dienstes neben Sifthound für diese spezifischen Domains.

Weitere News

Alle News