Ruiyu Ma

Official
by github
MIT License
13,959
  • Linux
  • Apple
Integrations
  • Provides seamless integration with GitHub APIs, enabling repository management (file operations, branches, commits), issue tracking (create, read, update, comment), pull request operations (create, merge, review), user management, and code security features like code scanning and secret scanning alerts.

  • Allows requesting GitHub Copilot reviews for pull requests, providing AI-assisted code review capabilities through the experimental Copilot review features.

GitHub MCP-Server

Der GitHub MCP Server ist ein Model Context Protocol (MCP) -Server, der eine nahtlose Integration mit GitHub-APIs bietet und erweiterte Automatisierungs- und Interaktionsfunktionen für Entwickler und Tools ermöglicht.

Anwendungsfälle

  • Automatisierung von GitHub-Workflows und -Prozessen.
  • Extrahieren und Analysieren von Daten aus GitHub-Repositories.
  • Erstellen von KI-gestützten Tools und Anwendungen, die mit dem Ökosystem von GitHub interagieren.

Voraussetzungen

  1. Um den Server in einem Container auszuführen, muss Docker installiert sein.
  2. Sobald Docker installiert ist, müssen Sie sicherstellen, dass es läuft. Das Image ist öffentlich. Sollten beim Abrufen Fehler auftreten, ist Ihr Token möglicherweise abgelaufen und Sie müssen sich bei docker logout ghcr.io abmelden.
  3. Zuletzt müssen Sie ein persönliches GitHub-Zugriffstoken erstellen . Der MCP-Server kann viele GitHub-APIs verwenden. Aktivieren Sie daher die Berechtigungen, die Sie Ihren KI-Tools gewähren möchten (weitere Informationen zu Zugriffstoken finden Sie in der Dokumentation ).

Installation

Verwendung mit VS Code

Für eine schnelle Installation verwenden Sie einen der Ein-Klick-Installationsbuttons oben in dieser README-Datei. Sobald Sie diesen Vorgang abgeschlossen haben, schalten Sie den Agentenmodus um (zu finden in der Texteingabe des Copilot-Chats), und der Server wird gestartet.

Für die manuelle Installation fügen Sie den folgenden JSON-Block zu Ihrer Benutzereinstellungsdatei (JSON) in VS Code hinzu. Drücken Sie dazu Ctrl + Shift + P und geben Sie Preferences: Open User Settings (JSON) ein.

{ "mcp": { "inputs": [ { "type": "promptString", "id": "github_token", "description": "GitHub Personal Access Token", "password": true } ], "servers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}" } } } } }

Optional können Sie ein ähnliches Beispiel (d. h. ohne den MCP-Schlüssel) zu einer Datei namens .vscode/mcp.json in Ihrem Arbeitsbereich hinzufügen. Dadurch können Sie die Konfiguration mit anderen teilen.

{ "inputs": [ { "type": "promptString", "id": "github_token", "description": "GitHub Personal Access Token", "password": true } ], "servers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}" } } } }

Weitere Informationen zur Verwendung von MCP-Servertools finden Sie in der Dokumentation zum Agentenmodus von VS Code.

Verwendung mit Claude Desktop

{ "mcpServers": { "github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }

Aus der Quelle erstellen

Wenn Sie Docker nicht verwenden, können Sie mit go build die Binärdatei im Verzeichnis cmd/github-mcp-server erstellen und den github-mcp-server stdio mit der Umgebungsvariable GITHUB_PERSONAL_ACCESS_TOKEN auf Ihren Token setzen. Um den Ausgabeort des Builds festzulegen, verwenden Sie das Flag -o . Konfigurieren Sie Ihren Server so, dass die erstellte ausführbare Datei als command verwendet wird. Beispiel:

{ "mcp": { "servers": { "github": { "command": "/path/to/github-mcp-server", "args": ["stdio"], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } } }

Werkzeugkonfiguration

Der GitHub MCP-Server unterstützt das Aktivieren oder Deaktivieren bestimmter Funktionsgruppen über das Flag --toolsets . So können Sie steuern, welche GitHub-API-Funktionen für Ihre KI-Tools verfügbar sind. Die Aktivierung nur der benötigten Toolsets erleichtert dem LLM die Toolauswahl und reduziert die Kontextgröße.

Verfügbare Toolsets

Die folgenden Werkzeugsätze sind verfügbar (alle sind standardmäßig aktiviert):

WerkzeugsatzBeschreibung
reposRepository-bezogene Tools (Dateioperationen, Branches, Commits)
issuesProblembezogene Tools (Erstellen, Lesen, Aktualisieren, Kommentieren)
usersAlles, was mit GitHub-Benutzern zu tun hat
pull_requestsPull-Request-Operationen (Erstellen, Zusammenführen, Überprüfen)
code_securityWarnungen und Sicherheitsfunktionen beim Code-Scannen
experimentsExperimentelle Funktionen (werden nicht als stabil angesehen)
Festlegen von Toolsets

Um die Toolsets anzugeben, die dem LLM zur Verfügung stehen sollen, können Sie eine Zulassungsliste auf zwei Arten übergeben:

  1. Verwenden des Befehlszeilenarguments :
    github-mcp-server --toolsets repos,issues,pull_requests,code_security
  2. Verwenden von Umgebungsvariablen :
    GITHUB_TOOLSETS="repos,issues,pull_requests,code_security" ./github-mcp-server

Die Umgebungsvariable GITHUB_TOOLSETS hat Vorrang vor dem Befehlszeilenargument, wenn beide angegeben sind.

Verwenden von Toolsets mit Docker

Wenn Sie Docker verwenden, können Sie die Toolsets als Umgebungsvariablen übergeben:

docker run -i --rm \ -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \ -e GITHUB_TOOLSETS="repos,issues,pull_requests,code_security,experiments" \ ghcr.io/github/github-mcp-server

Das „alles“-Toolset

Um alle verfügbaren Toolsets unabhängig von anderen Konfigurationen zu aktivieren, kann das spezielle Toolset all bereitgestellt werden:

./github-mcp-server --toolsets all

Oder mithilfe der Umgebungsvariable:

GITHUB_TOOLSETS="all" ./github-mcp-server

Dynamische Tool-Erkennung

Hinweis : Diese Funktion befindet sich derzeit in der Betaphase und ist möglicherweise nicht in allen Umgebungen verfügbar. Testen Sie sie bitte und informieren Sie uns, falls Probleme auftreten.

Anstatt mit allen aktivierten Tools zu beginnen, können Sie die dynamische Toolset-Erkennung aktivieren. Dynamische Toolsets ermöglichen es dem MCP-Host, Toolsets auf Benutzereingabe aufzulisten und zu aktivieren. Dies soll dazu beitragen, Situationen zu vermeiden, in denen das Modell durch die schiere Anzahl der verfügbaren Tools verwirrt wird.

Verwenden der dynamischen Toolerkennung

Wenn Sie die Binärdatei verwenden, können Sie das Flag --dynamic-toolsets übergeben.

./github-mcp-server --dynamic-toolsets

Wenn Sie Docker verwenden, können Sie die Toolsets als Umgebungsvariablen übergeben:

docker run -i --rm \ -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \ -e GITHUB_DYNAMIC_TOOLSETS=1 \ ghcr.io/github/github-mcp-server

GitHub Enterprise Server

Mit dem Flag --gh-host und der Umgebungsvariable GITHUB_HOST können Sie den Hostnamen von GitHub Enterprise Server festlegen. Stellen Sie dem Hostnamen das URI-Schema https:// voran, da er sonst standardmäßig auf http:// gesetzt wird, was von GitHub Enterprise Server nicht unterstützt wird.

"github": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "-e", "GITHUB_HOST", "ghcr.io/github/github-mcp-server" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}", "GITHUB_HOST": "https://<your GHES domain name>" } }

i18n / Überschreiben von Beschreibungen

Die Beschreibungen der Tools können überschrieben werden, indem eine Datei github-mcp-server-config.json im selben Verzeichnis wie die Binärdatei erstellt wird.

Die Datei sollte ein JSON-Objekt mit den Werkzeugnamen als Schlüssel und den neuen Beschreibungen als Werte enthalten. Beispiel:

{ "TOOL_ADD_ISSUE_COMMENT_DESCRIPTION": "an alternative description", "TOOL_CREATE_BRANCH_DESCRIPTION": "Create a new branch in a GitHub repository" }

Sie können einen Export der aktuellen Übersetzungen erstellen, indem Sie die Binärdatei mit dem Flag --export-translations ausführen.

Dieses Flag behält alle von Ihnen vorgenommenen Übersetzungen/Überschreibungen bei und fügt alle neuen Übersetzungen hinzu, die der Binärdatei seit dem letzten Export hinzugefügt wurden.

./github-mcp-server --export-translations cat github-mcp-server-config.json

Sie können die Beschreibungen auch mit ENV-Variablen überschreiben. Die Namen der Umgebungsvariablen entsprechen den Schlüsseln in der JSON-Datei, mit dem Präfix GITHUB_MCP_ und in Großbuchstaben.

Um beispielsweise das Tool TOOL_ADD_ISSUE_COMMENT_DESCRIPTION zu überschreiben, können Sie die folgende Umgebungsvariable festlegen:

export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="an alternative description"

Werkzeuge

Benutzer

  • get_me - Details des authentifizierten Benutzers abrufen
    • Keine Parameter erforderlich

Probleme

  • get_issue - Ruft den Inhalt eines Problems innerhalb eines Repositorys ab
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • issue_number : Ausgabenummer (Nummer, erforderlich)
  • get_issue_comments – Kommentare zu einem GitHub-Problem abrufen
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • issue_number : Ausgabenummer (Nummer, erforderlich)
  • create_issue – Erstellen Sie ein neues Problem in einem GitHub-Repository
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • title : Titel des Problems (Zeichenfolge, erforderlich)
    • body : Inhalt des Ausgabetexts (Zeichenfolge, optional)
    • assignees : Benutzernamen, die diesem Problem zugewiesen werden sollen (string[], optional)
    • labels : Auf dieses Problem anzuwendende Labels (string[], optional)
  • add_issue_comment – Einen Kommentar zu einem Problem hinzufügen
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • issue_number : Ausgabenummer (Nummer, erforderlich)
    • body : Kommentartext (Zeichenfolge, erforderlich)
  • list_issues – Repository-Probleme auflisten und filtern
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • state : Filtern nach Status („offen“, „geschlossen“, „alle“) (Zeichenfolge, optional)
    • labels : Zu filternde Labels (string[], optional)
    • sort : Sortieren nach ('erstellt', 'aktualisiert', 'Kommentare') (Zeichenfolge, optional)
    • direction : Sortierrichtung ('asc', 'desc') (Zeichenfolge, optional)
    • since : Filtern nach Datum (ISO 8601-Zeitstempel) (Zeichenfolge, optional)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)
  • update_issue – Aktualisieren Sie ein vorhandenes Problem in einem GitHub-Repository
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • issue_number : Zu aktualisierende Problemnummer (Nummer, erforderlich)
    • title : Neuer Titel (Zeichenfolge, optional)
    • body : Neue Beschreibung (Zeichenfolge, optional)
    • state : Neuer Status ('offen' oder 'geschlossen') (Zeichenfolge, optional)
    • labels : Neue Labels (string[], optional)
    • assignees : Neue Beauftragte (string[], optional)
    • milestone : Neue Meilensteinnummer (Nummer, optional)
  • search_issues – Suche nach Problemen und Pull Requests
    • query : Suchanfrage (Zeichenfolge, erforderlich)
    • sort : Sortierfeld (Zeichenfolge, optional)
    • order : Sortierreihenfolge (Zeichenfolge, optional)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)

Pull Requests

  • get_pull_request – Details zu einem bestimmten Pull Request abrufen
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
  • list_pull_requests – Repository-Pull-Requests auflisten und filtern
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • state : PR-Status (Zeichenfolge, optional)
    • sort : Sortierfeld (Zeichenfolge, optional)
    • direction : Sortierrichtung (Zeichenfolge, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)
    • page : Seitenzahl (Zahl, optional)
  • merge_pull_request – Pull Request zusammenführen
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
    • commit_title : Titel für den Merge-Commit (Zeichenfolge, optional)
    • commit_message : Nachricht für den Merge-Commit (Zeichenfolge, optional)
    • merge_method : Merge-Methode (Zeichenfolge, optional)
  • get_pull_request_files – Ruft die Liste der in einem Pull Request geänderten Dateien ab
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
  • get_pull_request_status – Ruft den kombinierten Status aller Statusprüfungen für einen Pull Request ab
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
  • update_pull_request_branch – Aktualisieren Sie einen Pull-Request-Zweig mit den neuesten Änderungen aus dem Basiszweig
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
    • expectedHeadSha : Der erwartete SHA des HEAD-Refs des Pull Requests (Zeichenfolge, optional)
  • get_pull_request_comments – Holen Sie sich die Review-Kommentare zu einem Pull Request
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
  • get_pull_request_reviews – Erhalten Sie die Bewertungen zu einer Pull-Anfrage
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
  • create_pull_request_review – Erstellen Sie eine Überprüfung für eine Pull-Request-Überprüfung.
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
    • body : Text des Bewertungskommentars (Zeichenfolge, optional)
    • event : Überprüfungsaktion ('APPROVE', 'REQUEST_CHANGES', 'COMMENT') (Zeichenfolge, erforderlich)
    • commitId : SHA des zu überprüfenden Commits (Zeichenfolge, optional)
    • comments : Zeilenspezifisches Kommentar-Array von Objekten zum Platzieren von Kommentaren zu Pull Request-Änderungen (Array, optional)
      • Für Inline-Kommentare: Geben Sie path , position (oder line ) und body
      • Für mehrzeilige Kommentare: Geben Sie path , start_line , line , optional side / start_side und body .
  • create_pull_request – Erstelle einen neuen Pull Request
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • title : PR-Titel (Zeichenfolge, erforderlich)
    • body : PR-Beschreibung (Zeichenfolge, optional)
    • head : Zweig mit Änderungen (Zeichenfolge, erforderlich)
    • base : Zweig, in den zusammengeführt werden soll (Zeichenfolge, erforderlich)
    • draft : Als PR-Entwurf erstellen (boolesch, optional)
    • maintainer_can_modify : Bearbeitungen durch den Betreuer zulassen (boolesch, optional)
  • add_pull_request_review_comment – Fügen Sie einem Pull Request einen Überprüfungskommentar hinzu oder antworten Sie auf einen vorhandenen Kommentar
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pull_number : Pull-Request-Nummer (Nummer, erforderlich)
    • body : Der Text des Bewertungskommentars (Zeichenfolge, erforderlich)
    • commit_id : Der SHA des Commits, der kommentiert werden soll (Zeichenfolge, erforderlich, sofern nicht in_reply_to verwendet wird)
    • path : Der relative Pfad zur Datei, die einen Kommentar erfordert (Zeichenfolge, erforderlich, sofern nicht in_reply_to verwendet wird)
    • line : Die Zeile des Blobs im Pull Request-Diff, auf die sich der Kommentar bezieht (Zahl, optional)
    • side : Die Seite des Diffs, die kommentiert werden soll (LINKS oder RECHTS) (Zeichenfolge, optional)
    • start_line : Bei mehrzeiligen Kommentaren die erste Zeile des Bereichs (Zahl, optional)
    • start_side : Bei mehrzeiligen Kommentaren die Startseite des Diffs (LINKS oder RECHTS) (Zeichenfolge, optional)
    • subject_type : Die Ebene, auf die sich der Kommentar bezieht (Zeile oder Datei) (Zeichenfolge, optional)
    • in_reply_to : Die ID des Review-Kommentars, auf den geantwortet werden soll (Nummer, optional). Wenn angegeben, ist nur der Text erforderlich, andere Parameter werden ignoriert.
  • update_pull_request – Aktualisieren Sie eine vorhandene Pull-Anfrage in einem GitHub-Repository
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Zu aktualisierende Pull-Request-Nummer (Nummer, erforderlich)
    • title : Neuer Titel (Zeichenfolge, optional)
    • body : Neue Beschreibung (Zeichenfolge, optional)
    • state : Neuer Status ('offen' oder 'geschlossen') (Zeichenfolge, optional)
    • base : Neuer Basiszweigname (Zeichenfolge, optional)
    • maintainer_can_modify : Bearbeitungen durch den Betreuer zulassen (boolesch, optional)
  • request_copilot_review – Fordern Sie eine GitHub Copilot-Überprüfung für eine Pull-Anfrage an (experimentell; vorbehaltlich der GitHub-API-Unterstützung)
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • pullNumber : Pull-Request-Nummer (Nummer, erforderlich)
    • Hinweis : Derzeit funktioniert dieses Tool nur für github.com

Repositorien

  • create_or_update_file - Erstellen oder aktualisieren Sie eine einzelne Datei in einem Repository
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • path : Dateipfad (Zeichenfolge, erforderlich)
    • message : Commit-Nachricht (Zeichenfolge, erforderlich)
    • content : Dateiinhalt (Zeichenfolge, erforderlich)
    • branch : Zweigstellenname (Zeichenfolge, optional)
    • sha : Datei-SHA beim Aktualisieren (Zeichenfolge, optional)
  • list_branches – Listet Zweige in einem GitHub-Repository auf
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)
  • push_files - Pushen Sie mehrere Dateien in einem einzigen Commit
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • branch : Zweig, zu dem gepusht werden soll (Zeichenfolge, erforderlich)
    • files : Zu übertragende Dateien, jeweils mit Pfad und Inhalt (Array, erforderlich)
    • message : Commit-Nachricht (Zeichenfolge, erforderlich)
  • search_repositories – Suche nach GitHub-Repositories
    • query : Suchanfrage (Zeichenfolge, erforderlich)
    • sort : Sortierfeld (Zeichenfolge, optional)
    • order : Sortierreihenfolge (Zeichenfolge, optional)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)
  • create_repository – Erstellt ein neues GitHub-Repository
    • name : Repository-Name (Zeichenfolge, erforderlich)
    • description : Repository-Beschreibung (Zeichenfolge, optional)
    • private : Ob das Repository privat ist (boolesch, optional)
    • autoInit : Automatische Initialisierung mit README (boolesch, optional)
  • get_file_contents - Inhalt einer Datei oder eines Verzeichnisses abrufen
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • path : Dateipfad (Zeichenfolge, erforderlich)
    • ref : Git-Referenz (Zeichenfolge, optional)
  • fork_repository - Forken Sie ein Repository
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • organization : Name der Zielorganisation (Zeichenfolge, optional)
  • create_branch - Erstelle einen neuen Zweig
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • branch : Neuer Zweigstellenname (Zeichenfolge, erforderlich)
    • sha : SHA zum Erstellen des Zweigs (Zeichenfolge, erforderlich)
  • list_commits - Ruft eine Liste der Commits eines Zweigs in einem Repository ab
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • sha : Branchname, Tag oder Commit-SHA (Zeichenfolge, optional)
    • path : Nur Commits, die diesen Dateipfad enthalten (Zeichenfolge, optional)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)
  • get_commit - Details zu einem Commit aus einem Repository abrufen
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • sha : Commit-SHA, Branch-Name oder Tag-Name (Zeichenfolge, erforderlich)
    • page : Seitenzahl für Dateien im Commit (Zahl, optional)
    • perPage : Ergebnisse pro Seite für Dateien im Commit (Anzahl, optional)
  • search_code – Suche nach Code in GitHub-Repositories
    • query : Suchanfrage (Zeichenfolge, erforderlich)
    • sort : Sortierfeld (Zeichenfolge, optional)
    • order : Sortierreihenfolge (Zeichenfolge, optional)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)

Benutzer

  • search_users – Suche nach GitHub-Benutzern
    • q : Suchanfrage (Zeichenfolge, erforderlich)
    • sort : Sortierfeld (Zeichenfolge, optional)
    • order : Sortierreihenfolge (Zeichenfolge, optional)
    • page : Seitenzahl (Zahl, optional)
    • perPage : Ergebnisse pro Seite (Anzahl, optional)

Code-Scanning

  • get_code_scanning_alarm - Erhalten Sie eine Code-Scan-Warnung
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • alertNumber : Alarmnummer (Nummer, erforderlich)
  • list_code_scanning_alerts – Listet Code-Scanning-Warnmeldungen für ein Repository auf
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • ref : Git-Referenz (Zeichenfolge, optional)
    • state : Alarmstatus (Zeichenfolge, optional)
    • severity : Schweregrad der Warnung (Zeichenfolge, optional)
    • tool_name : Der Name des Tools, das zum Scannen des Codes verwendet wird (Zeichenfolge, optional)

Geheimes Scannen

  • get_secret_scanning_alarm - Erhalten Sie eine geheime Scan-Warnung
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • alertNumber : Alarmnummer (Nummer, erforderlich)
  • list_secret_scanning_alerts – Liste geheimer Scan-Warnmeldungen für ein Repository
    • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
    • repo : Repository-Name (Zeichenfolge, erforderlich)
    • state : Alarmstatus (Zeichenfolge, optional)
    • secret_type : Die zu filternden Geheimnistypen in einer durch Kommas getrennten Liste (Zeichenfolge, optional)
    • resolution : Der Auflösungsstatus (Zeichenfolge, optional)

Ressourcen

Repository-Inhalt

  • Repository-Inhalt abrufen Ruft den Inhalt eines Repositorys unter einem bestimmten Pfad ab.
    • Vorlage : repo://{owner}/{repo}/contents{/path*}
    • Parameter :
      • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
      • repo : Repository-Name (Zeichenfolge, erforderlich)
      • path : Datei- oder Verzeichnispfad (Zeichenfolge, optional)
  • Repository-Inhalt für einen bestimmten Zweig abrufen Ruft den Inhalt eines Repositorys unter einem bestimmten Pfad für einen bestimmten Zweig ab.
    • Vorlage : repo://{owner}/{repo}/refs/heads/{branch}/contents{/path*}
    • Parameter :
      • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
      • repo : Repository-Name (Zeichenfolge, erforderlich)
      • branch : Zweigstellenname (Zeichenfolge, erforderlich)
      • path : Datei- oder Verzeichnispfad (Zeichenfolge, optional)
  • Repository-Inhalt für ein bestimmtes Commit abrufen: Ruft den Inhalt eines Repositorys unter einem bestimmten Pfad für ein bestimmtes Commit ab.
    • Vorlage : repo://{owner}/{repo}/sha/{sha}/contents{/path*}
    • Parameter :
      • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
      • repo : Repository-Name (Zeichenfolge, erforderlich)
      • sha : Commit SHA (Zeichenfolge, erforderlich)
      • path : Datei- oder Verzeichnispfad (Zeichenfolge, optional)
  • Repository-Inhalt für ein bestimmtes Tag abrufen Ruft den Inhalt eines Repositorys unter einem bestimmten Pfad für ein bestimmtes Tag ab.
    • Vorlage : repo://{owner}/{repo}/refs/tags/{tag}/contents{/path*}
    • Parameter :
      • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
      • repo : Repository-Name (Zeichenfolge, erforderlich)
      • tag : Tag-Name (Zeichenfolge, erforderlich)
      • path : Datei- oder Verzeichnispfad (Zeichenfolge, optional)
  • Repository-Inhalt für einen bestimmten Pull Request abrufen. Ruft den Inhalt eines Repositorys unter einem bestimmten Pfad für einen bestimmten Pull Request ab.
    • Vorlage : repo://{owner}/{repo}/refs/pull/{prNumber}/head/contents{/path*}
    • Parameter :
      • owner : Repository-Besitzer (Zeichenfolge, erforderlich)
      • repo : Repository-Name (Zeichenfolge, erforderlich)
      • prNumber : Pull-Request-Nummer (Zeichenfolge, erforderlich)
      • path : Datei- oder Verzeichnispfad (Zeichenfolge, optional)

Bibliotheksnutzung

Die exportierte Go-API dieses Moduls gilt derzeit als instabil und kann zu Funktionseinschränkungen führen. Zukünftig werden wir möglicherweise Stabilität bieten. Bitte melden Sie uns, wenn es einen Anwendungsfall gibt, bei dem dies hilfreich wäre.

Lizenz

Dieses Projekt unterliegt den Bedingungen der MIT Open Source-Lizenz. Die vollständigen Bedingungen finden Sie beim MIT .

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    An MCP server that implements a conversational AI 'waifu' character using a text generation service with Redis queuing and GPU acceleration.
    Last updated -
    1
    Python
    MIT No Attribution
  • -
    security
    A
    license
    -
    quality
    Algolia
    Last updated -
    18
    Go
    MIT License
    • Apple

View all related MCP servers

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/github/github-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server