Docs MCP Server

by buger

Integrations

  • Enables searching any Git repository, with support for specifying branches, tags, or commit hashes, and configurable automatic updates through periodic git pulls

  • Allows chatting with GitHub repositories by downloading or cloning them for search, supporting both public and private repositories, with options for automatic updates

Docs MCP Server

Dieses Projekt bietet einen flexiblen Model Context Protocol (MCP)-Server, der von Probe betrieben wird und dafür konzipiert ist, Dokumentationen oder Codebasen für KI-Assistenten durchsuchbar zu machen.

Sie können mit Code oder Ihren Dokumenten chatten, indem Sie einfach auf ein Git-Repo oder einen Ordner zeigen.

npx -y @buger/docs-mcp@latest --gitUrl https://github.com/buger/probe

Anwendungsfälle:

  • Chatten Sie mit jedem GitHub-Repository: Richten Sie den Server auf ein öffentliches oder privates Git-Repository, um Abfragen zu dessen Inhalten in natürlicher Sprache zu ermöglichen.
  • Durchsuchen Sie Ihre Dokumentation: Integrieren Sie die Dokumentation Ihres Projekts (aus einem lokalen Verzeichnis oder Git), um die Suche zu vereinfachen.
  • Erstellen Sie benutzerdefinierte MCP-Server: Verwenden Sie dieses Projekt als Vorlage, um Ihre eigenen offiziellen MCP-Server zu erstellen, die auf bestimmte Dokumentationssätze oder sogar Codebasen zugeschnitten sind.

Die Inhaltsquelle (Dokumentation oder Code) kann während des npm run build Schritts vorab in das Paket integriert oder zur Laufzeit dynamisch über lokale Verzeichnisse oder Git-Repositorys konfiguriert werden. Standardmäßig lädt der Server bei Verwendung einer gitUrl ohne Aktivierung automatischer Updates ein .tar.gz Archiv für einen schnelleren Start herunter. Vollständiges Git-Klonen wird nur verwendet, wenn autoUpdateInterval größer als 0 ist.

Merkmale

  • Powered by Probe: Nutzt die Suchmaschine Probe für effiziente und relevante Ergebnisse.
  • Flexible Inhaltsquellen: Fügen Sie ein bestimmtes lokales Verzeichnis ein oder klonen Sie ein Git-Repository.
  • Vorgefertigter Inhalt: Optional können Sie Dokumentations-/Codeinhalte direkt in das Paket bündeln.
  • Dynamische Konfiguration: Konfigurieren Sie Inhaltsquellen, Git-Einstellungen und MCP-Tooldetails über Konfigurationsdateien, CLI-Argumente oder Umgebungsvariablen.
  • Automatische Git-Updates: Halten Sie Inhalte aktuell, indem Sie Änderungen in einem konfigurierbaren Intervall automatisch aus einem Git-Repository abrufen.
  • Anpassbares MCP-Tool: Definieren Sie den Namen und die Beschreibung des Suchtools, das KI-Assistenten angezeigt wird.
  • KI-Integration: Nahtlose Integration mit KI-Assistenten, die das Model Context Protocol (MCP) unterstützen.

Verwendung

Die primäre Möglichkeit, diesen Server zu nutzen, ist über npx . Dadurch wird das Paket heruntergeladen und ausgeführt, ohne dass eine lokale Installation erforderlich ist. Dies erleichtert die Integration mit KI-Assistenten und MCP-Clients (wie IDE-Erweiterungen).

Installation über Smithery

So installieren Sie Docs MCP Server für Claude Desktop automatisch über Smithery :

npx -y @smithery/cli install @buger/docs-mcp --client claude

Integration mit MCP-Clients (z. B. IDEs)

Sie können Ihren MCP-Client so konfigurieren, dass dieser Server mit npx gestartet wird. Hier sind Beispiele für die Konfiguration eines Clients (die Syntax kann je nach Client variieren):

Beispiel 1: Dynamisches Durchsuchen eines Git-Repositorys (Tyk Docs)

Diese Konfiguration weist den Client an, das neueste @buger/docs-mcp -Paket mit npx auszuführen und es dynamisch auf das Tyk-Dokumentationsrepository zu verweisen. Das Argument -y bestätigt automatisch die npx Installationsaufforderung. Die Argumente --toolName und --toolDescription passen die Anzeige des Suchwerkzeugs für den KI-Assistenten an.

{ "mcpServers": { "tyk-docs-search": { "command": "npx", "args": [ "-y", "@buger/docs-mcp@latest", "--gitUrl", "https://github.com/TykTechnologies/tyk-docs", "--toolName", "search_tyk_docs", "--toolDescription", "Search Tyk API Management Documentation" ], "enabled": true } } }

Alternativ erlauben einige Clients die direkte Angabe des vollständigen Befehls. Sie können dasselbe wie in Beispiel 1 erreichen, indem Sie Folgendes verwenden:

npx -y @buger/docs-mcp@latest --gitUrl https://github.com/TykTechnologies/tyk-docs --toolName search_tyk_docs --toolDescription "Search Tyk API Management Documentation"

Beispiel 2: Verwendung eines vorgefertigten, gebrandeten MCP-Servers (z. B. Tyk-Paket)

Wenn ein Team ein vorgefertigtes Paket mit spezifischer Dokumentation veröffentlicht (z. B. @tyk-technologies/docs-mcp ), vereinfacht sich die Konfiguration, da die Inhaltsquelle und die Tooldetails in dieses Paket integriert sind. Das Argument -y wird weiterhin für npx empfohlen.

{ "mcpServers": { "tyk-official-docs": { "command": "npx", "args": [ "-y", "@tyk-technologies/docs-mcp@latest" ], "enabled": true } } }

Dieser Ansatz eignet sich ideal für die Bereitstellung standardisierter Suchfunktionen für offizielle Dokumentationen oder Codebasen. Weitere Informationen finden Sie weiter unten im Abschnitt „Erstellen eines eigenen vorgefertigten MCP-Servers“.

Hier ist ein Beispiel, wie das Tyk-Team einen eigenen MCP-Dokumentationsserver erstellt hat : https://github.com/TykTechnologies/docs-mcp .

Konfiguration

Erstellen Sie eine Datei docs-mcp.config.json im Stammverzeichnis, um die Standardinhaltsquelle und die MCP-Tooldetails zu definieren, die während des Builds und zur Laufzeit verwendet werden (sofern sie nicht durch CLI-Argumente oder Umgebungsvariablen überschrieben werden).

Beispiel 1: Verwenden eines lokalen Verzeichnisses

{ "includeDir": "/Users/username/projects/my-project/docs", "toolName": "search_my_project_docs", "toolDescription": "Search the documentation for My Project.", "ignorePatterns": [ "node_modules", ".git", "build", "*.log" ] }

Beispiel 2: Verwenden eines Git-Repositorys

{ "gitUrl": "https://github.com/your-org/your-codebase.git", "gitRef": "develop", "autoUpdateInterval": 15, "toolName": "search_codebase", "toolDescription": "Search the main company codebase.", "ignorePatterns": [ "*.test.js", "dist/", "__snapshots__" ] }

Konfigurationsoptionen

  • includeDir : (Build/Runtime) Absoluter Pfad zu einem lokalen Verzeichnis, dessen Inhalt während des Builds in das data kopiert oder zur Laufzeit direkt verwendet wird, wenn dataDir nicht angegeben ist. Verwenden Sie dies ODER gitUrl .
  • gitUrl : (Build/Runtime) URL des Git-Repositorys. Verwenden Sie diese oder includeDir .
    • Wenn autoUpdateInterval 0 (Standard) ist, versucht der Server, ein .tar.gz Archiv direkt herunterzuladen (aktuell wird die GitHub-URL-Struktur angenommen: https://github.com/{owner}/{repo}/archive/{ref}.tar.gz ). Dies ist schneller, unterstützt aber keine Updates.
    • Wenn autoUpdateInterval > 0, führt der Server einen git clone durch und aktiviert regelmäßige Updates.
  • gitRef : (Build/Runtime) Der zu verwendende Branch, Tag oder Commit-Hash aus der gitUrl (Standard: main ). Wird sowohl für den Tarball-Download als auch für Git-Clone/Pull verwendet.
  • autoUpdateInterval : (Laufzeit) Intervall in Minuten für die automatische Überprüfung auf Git-Updates (Standard: 0, deaktiviert). Ein Wert > 0 aktiviert Git-Klonen und regelmäßige git pull Operationen. Der git Befehl muss im Systempfad verfügbar sein.
  • dataDir : (Laufzeit) Pfad zum Verzeichnis mit dem zur Laufzeit zu durchsuchenden Inhalt. Überschreibt Inhalte aus includeDir oder gitUrl die in der Konfigurationsdatei definiert oder im Paket integriert sind. Nützlich, um den Server ohne Neuaufbau auf Live-Daten zu verweisen.
  • toolName : (Build/Runtime) Der Name des vom Server bereitgestellten MCP-Tools (Standard: search_docs ). Wählen Sie einen aussagekräftigen, zum Inhalt passenden Namen.
  • toolDescription : (Build/Runtime) Die Beschreibung des MCP-Tools, die den KI-Assistenten angezeigt wird (Standard: „Dokumentation mithilfe der Probe-Suchmaschine durchsuchen.“).
  • ignorePatterns : (Build/Runtime) Ein Array von Glob-Mustern.
  • enableBuildCleanup : (Build) Wenn „ true (Standard), werden nach dem Build-Schritt gängige Binär-/Mediendateien (Bilder, Videos, Archive usw.) sowie Dateien größer als 100 KB aus dem data entfernt. Auf false setzen, um diese Bereinigung zu deaktivieren.
    • Bei Verwendung von includeDir während des Builds: Dateien, die diesen Mustern entsprechen, werden beim Kopieren in data ausgeschlossen. .gitignore -Regeln werden ebenfalls beachtet.
    • Bei Verwendung gitUrl oder dataDir zur Laufzeit: Dateien, die diesen Mustern im data entsprechen, werden vom Suchindexer ignoriert.

Vorrang:

  1. Laufzeitkonfiguration (Höchste): CLI-Argumente ( --dataDir , --gitUrl usw.) und Umgebungsvariablen ( DATA_DIR , GIT_URL usw.) überschreiben alle anderen Einstellungen. CLI-Argumente haben Vorrang vor Umgebungsvariablen.
  2. Build-Time-Konfiguration: Einstellungen in docs-mcp.config.json ( includeDir , gitUrl , toolName usw.) definieren Standardwerte, die während npm run build verwendet werden und auch als Laufzeitstandardwerte dienen, wenn sie nicht überschrieben werden.
  3. Standardwerte (niedrigste): Wenn keine Konfiguration angegeben ist, werden interne Standardwerte verwendet (z. B. toolName: 'search_docs' , autoUpdateInterval: 5 ).

Hinweis: Wenn sowohl includeDir als auch gitUrl in derselben Konfigurationsquelle bereitgestellt werden (z. B. beide in der Konfigurationsdatei oder beide als CLI-Argumente), hat gitUrl Vorrang.

Erstellen Ihres eigenen vorgefertigten MCP-Servers

Sie können dieses Projekt als Vorlage verwenden, um Ihr eigenes npm-Paket mit vorinstallierter Dokumentation oder Code zu erstellen und zu veröffentlichen. Dies ermöglicht Benutzern eine konfigurationsfreie Erfahrung (wie im obigen Beispiel 2).

  1. Dieses Repository forken/klonen: Beginnen Sie mit dem Code dieses Projekts.
  2. Konfigurieren Sie docs-mcp.config.json : Definieren Sie das includeDir oder gitUrl das auf Ihre Inhaltsquelle verweist. Legen Sie den Standardwert toolName und toolDescription fest.
  3. Aktualisieren Sie package.json : Ändern Sie den name (z. B. @my-org/my-docs-mcp ), version , description usw.
  4. Erstellen: Führen Sie npm run build aus. Dadurch wird Ihr Inhalt in das data geklont/kopiert und das Paket bereitgestellt.
  5. Veröffentlichen: Führen Sie npm publish aus (Sie müssen die npm-Authentifizierung konfiguriert haben).

Jetzt können Benutzer Ihren spezifischen Dokumentationsserver einfach ausführen: npx @my-org/my-docs-mcp@latest .

(Die vorherigen Abschnitte „Ausführen“, „Dynamische Konfiguration zur Laufzeit“ und „Umgebungsvariablen“ wurden entfernt, da die Verwendung npx mit Argumenten innerhalb von Clientkonfigurationen jetzt die primäre dokumentierte Methode ist.)

Verwendung mit KI-Assistenten

Dieser MCP-Server stellt verbundenen KI-Assistenten über das Model Context Protocol ein Suchtool zur Verfügung. Name und Beschreibung des Tools sind konfigurierbar (siehe Abschnitt „Konfiguration“). Es durchsucht den Inhalt im aktuell aktiven data (bestimmt durch Build-Einstellungen, Konfigurationsdatei, CLI-Argumente oder Umgebungsvariablen).

Werkzeugparameter:

  • query : Eine Abfrage in natürlicher Sprache oder Schlüsselwörter, die beschreiben, wonach gesucht werden soll (z. B. „Gateway konfigurieren“, „Beispiel für eine Datenbankverbindung“, „Benutzerauthentifizierung“). Der Server nutzt die Suchfunktionen von Probe, um relevante Inhalte zu finden. (Erforderlich)
  • page : Die Seitenzahl der Ergebnisse bei vielen Treffern. Standardmäßig 1, falls nicht angegeben. (Optional)

Beispiel für einen Toolaufruf (unter Verwendung von search_tyk_docs aus Verwendungsbeispiel 1):

{ "tool_name": "search_tyk_docs", "arguments": { "query": "gateway rate limiting", "page": 1 // Requesting the first page } }

Beispiel für einen Tool-Aufruf (mit dem Tool aus dem Paket @tyk/docs-mcp ):

Angenommen, das vorgefertigte Paket @tyk/docs-mcp hat seinen Toolnamen als search_tyk_official_docs definiert:

{ "tool_name": "search_tyk_official_docs", "arguments": { "query": "dashboard api access", "page": 2 // Requesting the second page } }

(Der vorherige Abschnitt „Veröffentlichen als npm-Paket“ wurde durch den obigen Abschnitt „Erstellen Ihres eigenen vorgefertigten MCP-Servers“ ersetzt.)

Lizenz

MIT

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Ein flexibler Model Context Protocol-Server, der Dokumentationen oder Codebasen für KI-Assistenten durchsuchbar macht und es Benutzern ermöglicht, mit Code oder Dokumenten zu chatten, indem sie einfach auf ein Git-Repository oder einen Git-Ordner verweisen.

  1. Merkmale
    1. Verwendung
      1. Installation über Smithery
      2. Integration mit MCP-Clients (z. B. IDEs)
    2. Konfiguration
      1. Beispiel 1: Verwenden eines lokalen Verzeichnisses
      2. Beispiel 2: Verwenden eines Git-Repositorys
      3. Konfigurationsoptionen
    3. Erstellen Ihres eigenen vorgefertigten MCP-Servers
      1. Verwendung mit KI-Assistenten
        1. Lizenz

          Related MCP Servers

          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol server that enables AI agents to retrieve and understand entire codebases at once, providing tools to analyze local workspaces or remote GitHub repositories.
            Last updated -
            9
            TypeScript
            MIT License
            • Linux
            • Apple
          • A
            security
            F
            license
            A
            quality
            A Model Context Protocol server that enables AI models to interact with GitHub's API, allowing for repository creation and management with descriptions, topics, and website URLs through natural language commands.
            Last updated -
            1
            JavaScript
          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol server that connects Claude and other MCP clients to Aider, enabling AI assistants to efficiently edit files, create new files, and interact with git repositories through natural language.
            Last updated -
            9
            Python
            The Unlicense
            • Linux
            • Apple
          • -
            security
            F
            license
            -
            quality
            A Model Context Protocol server that enables AI assistants like Claude to interact with GitHub repositories, issues, and pull requests.
            Last updated -
            129
            Python

          View all related MCP servers

          ID: pach0m58mr