
GitHub Enterprise MCP Server
Ein MCP-Server (Model Context Protocol) zur Integration mit der GitHub Enterprise API. Dieser Server bietet eine MCP-Schnittstelle für den einfachen Zugriff auf Repository-Informationen, Probleme, PRs und mehr von GitHub Enterprise in Cursor.
Kompatibilität
Dieses Projekt ist in erster Linie für GitHub Enterprise Server-Umgebungen konzipiert, funktioniert aber auch mit:
GitHub.com
GitHub Enterprise Cloud
Hinweis : Einige unternehmensspezifische Funktionen (wie Lizenzinformationen und Unternehmensstatistiken) funktionieren nicht mit GitHub.com oder GitHub Enterprise Cloud.
Hauptmerkmale
Abrufen der Repository-Liste von GitHub Enterprise-Instanzen
Erhalten Sie detaillierte Repository-Informationen
Repository-Zweige auflisten
Datei- und Verzeichnisinhalte anzeigen
Probleme und Pull Requests verwalten
Repository-Verwaltung (Erstellen, Aktualisieren, Löschen)
Verwaltung von GitHub Actions-Workflows
Benutzerverwaltung (Benutzer auflisten, erstellen, aktualisieren, löschen, sperren/entsperren)
Zugriff auf Unternehmensstatistiken
Verbesserte Fehlerbehandlung und benutzerfreundliche Antwortformatierung
Erste Schritte
Voraussetzungen
Node.js 18 oder höher
Zugriff auf eine GitHub Enterprise-Instanz
Persönlicher Zugriffstoken (PAT)
Docker-Installation und -Einrichtung
Option 1: Ausführen mit Docker
Erstellen Sie das Docker-Image:
docker build -t github-enterprise-mcp .Führen Sie den Docker-Container mit Umgebungsvariablen aus:
docker run -p 3000:3000 \ -e GITHUB_TOKEN="your_github_token" \ -e GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" \ -e DEBUG=true \ github-enterprise-mcp
Hinweis : Das Dockerfile ist standardmäßig für die Ausführung mit
--transport httpkonfiguriert. Falls Sie dies ändern möchten, können Sie den folgenden Befehl überschreiben:
Option 2: Verwenden von Docker Compose
Erstellen Sie im Projektstammverzeichnis eine
.envDatei mit den erforderlichen Umgebungsvariablen:GITHUB_ENTERPRISE_URL=https://github.your-company.com/api/v3 GITHUB_TOKEN=your_github_token DEBUG=trueStarten Sie den Container mit Docker Compose:
docker-compose up -dÜberprüfen Sie die Protokolle:
docker-compose logs -fStoppen Sie den Container:
docker-compose down
Installation und Einrichtung
Lokale Entwicklung (unter Verwendung des Parallelmodus)
Diese Methode wird für die aktive Entwicklung mit automatischer Neukompilierung und Serverneustarts empfohlen:
Klonen Sie das Repository und installieren Sie die erforderlichen Pakete:
git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp npm installFühren Sie den Entwicklungsserver aus:
export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" npm run devDies wird:
TypeScript-Code automatisch kompilieren, wenn sich Dateien ändern
Starten Sie den Server neu, wenn kompilierte Dateien aktualisiert werden
Führen Sie den Server im HTTP-Modus für URL-basierte Verbindungen aus
Stellen Sie im URL-Modus eine Verbindung zum Cursor her, wie unten beschrieben
Installation und Einrichtung für die Produktion
Option 1: Verwenden des URL-Modus (empfohlen für die lokale Entwicklung)
Diese Methode ist die stabilste und wird für die lokale Entwicklung oder Tests empfohlen:
Klonen Sie das Repository und installieren Sie die erforderlichen Pakete:
git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp npm installErstellen Sie das Projekt:
npm run build chmod +x dist/index.jsFühren Sie den Server aus:
export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" node dist/index.js --transport http --debugStellen Sie im URL-Modus eine Verbindung zum Cursor her:
Fügen Sie der Datei
.cursor/mcp.jsonIhres Cursors Folgendes hinzu:
{ "mcpServers": { "github-enterprise": { "url": "http://localhost:3000/sse" } } }
Option 2: Als globalen Befehl installieren (npm-Link)
Diese Methode ist für die lokale Entwicklung nützlich:
Option 3: Verwenden von npx (wenn das Paket veröffentlicht ist)
Wenn das Paket im öffentlichen npm-Register veröffentlicht wird:
Integration mit KI-Tools
Claude Desktop
Fügen Sie Ihrer claude_desktop_config.json Folgendes hinzu:
Ersetzen Sie YOUR_GITHUB_TOKEN und YOUR_GITHUB_ENTERPRISE_URL durch Ihre tatsächlichen Werte.
Cursor
Empfohlen: URL-Modus (am stabilsten)
Für den zuverlässigsten Betrieb im Cursor wird die Verwendung des URL-Modus empfohlen:
Starten Sie den Server in einem separaten Terminalfenster:
cd /path/to/github-enterprise-mcp GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" GITHUB_TOKEN="your_github_token" node dist/index.js --transport httpKonfigurieren Sie die MCP-Einstellungen des Cursors:
Öffnen Sie Cursor und gehen Sie zu Einstellungen
Navigieren Sie zu AI > MCP-Server
Bearbeiten Sie Ihre
.cursor/mcp.json-Datei:
{ "mcpServers": { "github-enterprise": { "url": "http://localhost:3000/sse" } } }Starten Sie den Cursor neu, um die Änderungen zu übernehmen
Alternative: Befehlsmodus
Alternativ können Sie Cursor für die Verwendung des Befehlsmodus konfigurieren, obwohl der URL-Modus zuverlässiger ist:
Öffnen Sie Cursor und gehen Sie zu Einstellungen
Navigieren Sie zu AI > MCP-Server
Klicken Sie auf MCP-Server hinzufügen
Geben Sie die folgenden Details ein:
Name : GitHub Enterprise
Befehl :
npxArgumente :
@ddukbg/github-enterprise-mcpUmgebungsvariablen :
GITHUB_ENTERPRISE_URL: Ihre GitHub Enterprise API-URLGITHUB_TOKEN: Ihr persönlicher GitHub-Zugriffstoken
Alternativ können Sie Ihre .cursor/mcp.json Datei manuell bearbeiten, um Folgendes einzuschließen:
Sprachkonfiguration
Dieser MCP-Server unterstützt sowohl Englisch als auch Koreanisch. Sie können die Sprache wie folgt konfigurieren:
Umgebungsvariablen
Befehlszeilenargumente
Die Standardsprache ist Englisch, wenn nicht anders angegeben.
Zusätzliche Optionen im HTTP-Modus
--debug: Debug-Protokollierung aktivieren--github-enterprise-url <URL>: URL der GitHub Enterprise API festlegen--token <TOKEN>: Persönliches GitHub-Zugriffstoken festlegen--language <LANG>: Sprache festlegen (en oder ko, Standard: en)
Verfügbare MCP-Tools
Dieser MCP-Server bietet die folgenden Tools:
Werkzeugname | Beschreibung | Parameter | Erforderliche PAT-Berechtigungen |
| Abrufen der Repository-Liste für einen Benutzer oder eine Organisation |
: Benutzername/Organisationsname.
: Ob es sich um eine Organisation handelt.
: Repository-Typ.
: Sortierkriterien.
: Seitenzahl.
: Elemente pro Seite. |
|
| Erhalten Sie detaillierte Repository-Informationen |
: Repository-Besitzer
: Repository-Name |
|
| Auflisten von Zweigen eines Repositorys |
: Repository-Eigentümer
: Repository-Name
: Ob nur geschützte Zweige angezeigt werden sollen
: Seitenzahl
: Elemente pro Seite |
|
| Abrufen von Datei- oder Verzeichnisinhalten |
: Repository-Besitzer
: Repository-Name
: Datei-/Verzeichnispfad
: Branch/Commit (optional) |
|
| Auflisten von Pull Requests in einem Repository |
: Repository-Besitzer
: Repository-Name
: PR-Status Filter
: Sortierkriterien
: Sortierrichtung
:
pro Seite: Elemente pro Seite |
|
| Abrufen von Pull-Request-Details |
: Repository-Besitzer
: Repository-Name
: Pull-Request-Nummer |
|
| Erstellen einer neuen Pull-Anfrage |
: Repository-Besitzer
: Repository-Name
: PR-Titel
: Kopfzweig
: Basiszweig
: PR-Beschreibung
: Als PR-Entwurf erstellen |
|
| Zusammenführen einer Pull-Anfrage |
: Repository-Eigentümer
: Repository-Name
: Pull-Request-Nummer
: Merge-Methode
: Commit-Titel
: Commit-Nachricht |
|
| Auflisten von Problemen in einem Repository |
: Repository-Besitzer
: Repository-Name
: Problemstatus Filter
: Sortierkriterien
: Sortierrichtung
:
pro Seite: Elemente pro Seite |
|
| Abrufen von Problemdetails |
: Repository-Besitzer
: Repository-Name
: Problemnummer |
|
| Auflisten von Kommentaren zu einem Problem oder Pull Request |
: Repository-Eigentümer
: Repository-Name
: Ausgabe-/PR-Nummer
: Seitenzahl
: Elemente pro Seite |
|
| Neues Problem erstellen |
: Repository-Besitzer
: Repository-Name
: Problemtitel
: Inhalt des Problemtexts
: Array von Beschriftungsnamen
: Array von Benutzeranmeldungen
: Meilenstein-ID |
|
| Erstellen eines neuen Repositorys |
: Repository-Name
: Repository-Beschreibung
: Ob privat
: Mit README initialisieren
: .gitignore hinzufügen
: Lizenz hinzufügen
: Name der Organisation |
|
| Aktualisieren der Repository-Einstellungen |
: Repository-Eigentümer
: Repository-Name
: Neue Beschreibung
: Datenschutz ändern
: Standardzweig ändern
: Probleme aktivieren/deaktivieren
: Projekte aktivieren/deaktivieren
: Wiki aktivieren/deaktivieren
: Archivieren/Dearchivieren |
|
| Löschen eines Repositorys |
: Repository-Besitzer
: Repository-Name
: Bestätigung (muss wahr sein) |
|
| GitHub Actions-Workflows auflisten |
: Repository-Besitzer
: Repository-Name
: Seitenzahl
: Elemente pro Seite |
|
| Auflisten von Workflow-Ausführungen |
: Repository-Besitzer
: Repository-Name
-ID: Workflow-ID/Dateiname
: Nach Zweig filtern
: Nach Status filtern
: Seitenzahl pro
: Elemente pro Seite |
|
| Auslösen eines Workflows |
: Repository-Eigentümer
: Repository-Name
: Workflow-ID/Dateiname
: Git-Referenz
: Workflow-Eingaben |
|
| Informationen zur GitHub Enterprise-Lizenz erhalten | - | Erfordert ein Site_Admin-Konto (Administrator) |
| Holen Sie sich GitHub Enterprise-Systemstatistiken | - | Erfordert ein Site_Admin-Konto (Administrator) |
Hinweis : Für unternehmensspezifische Tools (
get-license-infoundget-enterprise-stats) ist ein Benutzer mit Site-Administratorrechten erforderlich. Ein klassischer persönlicher Zugriffstoken wird empfohlen, da feinkörnige Token diese Berechtigungen auf Unternehmensebene möglicherweise nicht unterstützen.
Verwenden der Werkzeuge im Cursor
Sobald Sie den MCP-Server eingerichtet und Cursor für die Verbindung konfiguriert haben, können Sie die GitHub Enterprise-Tools direkt im KI-Chat von Cursor verwenden. Hier sind einige Beispiele:
Auflisten von Repositories
Abrufen von Repository-Informationen
Auflisten von Pull Requests
Probleme verwalten
Arbeiten mit Repository-Inhalten
Repository-Verwaltung
Benutzerverwaltung (nur Enterprise)
Diese Funktionen sind speziell für GitHub Enterprise Server-Umgebungen konzipiert und erfordern Administratorberechtigungen:
API-Verbesserungen
Flexible API-URL-Konfiguration (unterstützt verschiedene Umgebungsvariablen und Befehlszeilenargumente)
Verbesserte Fehlerbehandlung und Timeout-Verwaltung
Benutzerfreundliche Antwortformatierung und Nachrichten
Beitragen
Beiträge sind willkommen! Senden Sie gerne einen Pull Request.
Lizenz
ISC
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Ein MCP-Server, der die Integration mit der GitHub Enterprise API ermöglicht und Benutzern den Zugriff auf Repository-Informationen sowie die Verwaltung von Problemen, Pull-Anfragen, Workflows und anderen GitHub-Funktionen über Cursor ermöglicht.
Related MCP Servers
- Asecurity-licenseAqualityMCP Server for the GitHub API, enabling file operations, repository management, search functionality, and more.Last updated -22,57371,962MIT License
- Asecurity-licenseAqualityMCP Server for the GitHub API, providing features for file operations, repository management, and advanced search, with automatic branch creation and comprehensive error handling.Last updated -1804
- Asecurity-licenseAqualityA MCP server that provides access to GitHub trending repositories and developers data through a simple API interface.Last updated -235MIT License
- -security-license-qualityAn MCP server that wraps around the GitHub CLI tool, allowing AI assistants to interact with GitHub repositories through commands for pull requests, issues, and repository operations.Last updated -2MIT License