Skip to main content
Glama

GitHub Enterprise MCP Server

MseeP.ai-Sicherheitsbewertungsabzeichen

GitHub Enterprise MCP Server

Bild

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

  1. Erstellen Sie das Docker-Image:

    docker build -t github-enterprise-mcp .
  2. 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 http konfiguriert. Falls Sie dies ändern möchten, können Sie den folgenden Befehl überschreiben:

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 node dist/index.js --transport http --debug

Option 2: Verwenden von Docker Compose

  1. Erstellen Sie im Projektstammverzeichnis eine .env Datei mit den erforderlichen Umgebungsvariablen:

    GITHUB_ENTERPRISE_URL=https://github.your-company.com/api/v3 GITHUB_TOKEN=your_github_token DEBUG=true
  2. Starten Sie den Container mit Docker Compose:

    docker-compose up -d
  3. Überprüfen Sie die Protokolle:

    docker-compose logs -f
  4. Stoppen 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:

  1. 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 install
  2. Führen Sie den Entwicklungsserver aus:

    export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" npm run dev

    Dies 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

  3. 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:

  1. 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 install
  2. Erstellen Sie das Projekt:

    npm run build chmod +x dist/index.js
  3. Fü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 --debug
  4. Stellen Sie im URL-Modus eine Verbindung zum Cursor her:

    • Fügen Sie der Datei .cursor/mcp.json Ihres 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:

# After cloning the repository git clone https://github.com/ddukbg/github-enterprise-mcp.git cd github-enterprise-mcp # Install required packages npm install # Build npm run build chmod +x dist/index.js # Link globally npm link # Run as a global command export GITHUB_TOKEN="your_github_token" export GITHUB_ENTERPRISE_URL="https://github.your-company.com/api/v3" github-enterprise-mcp --transport=http --debug

Option 3: Verwenden von npx (wenn das Paket veröffentlicht ist)

Wenn das Paket im öffentlichen npm-Register veröffentlicht wird:

npx @ddukbg/github-enterprise-mcp --token=your_github_token --github-enterprise-url=https://github.your-company.com/api/v3

Integration mit KI-Tools

Claude Desktop

Fügen Sie Ihrer claude_desktop_config.json Folgendes hinzu:

{ "mcpServers": { "github-enterprise": { "command": "npx", "args": ["-y", "@ddukbg/github-enterprise-mcp", "--token=YOUR_GITHUB_TOKEN", "--github-enterprise-url=YOUR_GITHUB_ENTERPRISE_URL"] } } }

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:

  1. 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 http
  2. Konfigurieren 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" } } }
  3. 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:

  1. Öffnen Sie Cursor und gehen Sie zu Einstellungen

  2. Navigieren Sie zu AI > MCP-Server

  3. Klicken Sie auf MCP-Server hinzufügen

  4. Geben Sie die folgenden Details ein:

    • Name : GitHub Enterprise

    • Befehl : npx

    • Argumente : @ddukbg/github-enterprise-mcp

    • Umgebungsvariablen :

      • GITHUB_ENTERPRISE_URL : Ihre GitHub Enterprise API-URL

      • GITHUB_TOKEN : Ihr persönlicher GitHub-Zugriffstoken

Alternativ können Sie Ihre .cursor/mcp.json Datei manuell bearbeiten, um Folgendes einzuschließen:

{ "mcpServers": { "github-enterprise": { "command": "npx", "args": [ "@ddukbg/github-enterprise-mcp" ], "env": { "GITHUB_ENTERPRISE_URL": "https://github.your-company.com/api/v3", "GITHUB_TOKEN": "your_github_token" } } } }

Sprachkonfiguration

Dieser MCP-Server unterstützt sowohl Englisch als auch Koreanisch. Sie können die Sprache wie folgt konfigurieren:

Umgebungsvariablen

# Set language to Korean export LANGUAGE=ko # Or in .env file LANGUAGE=ko

Befehlszeilenargumente

# Set language to Korean node dist/index.js --language ko

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

list-repositories

Abrufen der Repository-Liste für einen Benutzer oder eine Organisation

owner

: Benutzername/Organisationsname.

isOrg

: Ob es sich um eine Organisation handelt.

type

: Repository-Typ.

sort

: Sortierkriterien.

page

: Seitenzahl.

perPage

: Elemente pro Seite.

repo

get-repository

Erhalten Sie detaillierte Repository-Informationen

owner

: Repository-Besitzer

repo

: Repository-Name

repo

list-branches

Auflisten von Zweigen eines Repositorys

owner

: Repository-Eigentümer

repo

: Repository-Name

protected_only

: Ob nur geschützte Zweige angezeigt werden sollen

page

: Seitenzahl

perPage

: Elemente pro Seite

repo

get-content

Abrufen von Datei- oder Verzeichnisinhalten

owner

: Repository-Besitzer

repo

: Repository-Name

path

: Datei-/Verzeichnispfad

ref

: Branch/Commit (optional)

repo

list-pull-requests

Auflisten von Pull Requests in einem Repository

owner

: Repository-Besitzer

repo

: Repository-Name

state

: PR-Status Filter

sort

: Sortierkriterien

direction

: Sortierrichtung

page

:

per_page

pro Seite: Elemente pro Seite

repo

get-pull-request

Abrufen von Pull-Request-Details

owner

: Repository-Besitzer

repo

: Repository-Name

pull_number

: Pull-Request-Nummer

repo

create-pull-request

Erstellen einer neuen Pull-Anfrage

owner

: Repository-Besitzer

repo

: Repository-Name

title

: PR-Titel

head

: Kopfzweig

base

: Basiszweig

body

: PR-Beschreibung

draft

: Als PR-Entwurf erstellen

repo

merge-pull-request

Zusammenführen einer Pull-Anfrage

owner

: Repository-Eigentümer

repo

: Repository-Name

pull_number

: Pull-Request-Nummer

merge_method

: Merge-Methode

commit_title

: Commit-Titel

commit_message

: Commit-Nachricht

repo

list-issues

Auflisten von Problemen in einem Repository

owner

: Repository-Besitzer

repo

: Repository-Name

state

: Problemstatus Filter

sort

: Sortierkriterien

direction

: Sortierrichtung

page

:

per_page

pro Seite: Elemente pro Seite

repo

get-issue

Abrufen von Problemdetails

owner

: Repository-Besitzer

repo

: Repository-Name

issue_number

: Problemnummer

repo

list-issue-comments

Auflisten von Kommentaren zu einem Problem oder Pull Request

owner

: Repository-Eigentümer

repo

: Repository-Name

issue_number

: Ausgabe-/PR-Nummer

page

: Seitenzahl

per_page

: Elemente pro Seite

repo

create-issue

Neues Problem erstellen

owner

: Repository-Besitzer

repo

: Repository-Name

title

: Problemtitel

body

: Inhalt des Problemtexts

labels

: Array von Beschriftungsnamen

assignees

: Array von Benutzeranmeldungen

milestone

: Meilenstein-ID

repo

create-repository

Erstellen eines neuen Repositorys

name

: Repository-Name

description

: Repository-Beschreibung

private

: Ob privat

auto_init

: Mit README initialisieren

gitignore_template

: .gitignore hinzufügen

license_template

: Lizenz hinzufügen

org

: Name der Organisation

repo

update-repository

Aktualisieren der Repository-Einstellungen

owner

: Repository-Eigentümer

repo

: Repository-Name

description

: Neue Beschreibung

private

: Datenschutz ändern

default_branch

: Standardzweig ändern

has_issues

: Probleme aktivieren/deaktivieren

has_projects

: Projekte aktivieren/deaktivieren

has_wiki

: Wiki aktivieren/deaktivieren

archived

: Archivieren/Dearchivieren

repo

delete-repository

Löschen eines Repositorys

owner

: Repository-Besitzer

repo

: Repository-Name

confirm

: Bestätigung (muss wahr sein)

delete_repo

list-workflows

GitHub Actions-Workflows auflisten

owner

: Repository-Besitzer

repo

: Repository-Name

page

: Seitenzahl

perPage

: Elemente pro Seite

actions:read

list-workflow-runs

Auflisten von Workflow-Ausführungen

owner

: Repository-Besitzer

repo

: Repository-Name

workflow_id

-ID: Workflow-ID/Dateiname

branch

: Nach Zweig filtern

status

: Nach Status filtern

page

: Seitenzahl pro

perPage

: Elemente pro Seite

actions:read

trigger-workflow

Auslösen eines Workflows

owner

: Repository-Eigentümer

repo

: Repository-Name

workflow_id

: Workflow-ID/Dateiname

ref

: Git-Referenz

inputs

: Workflow-Eingaben

actions:write

get-license-info

Informationen zur GitHub Enterprise-Lizenz erhalten

-

Erfordert ein Site_Admin-Konto (Administrator)

get-enterprise-stats

Holen Sie sich GitHub Enterprise-Systemstatistiken

-

Erfordert ein Site_Admin-Konto (Administrator)

Hinweis : Für unternehmensspezifische Tools ( get-license-info und get-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

mcp_github_enterprise_list_repositories(owner="octocat")

Abrufen von Repository-Informationen

mcp_github_enterprise_get_repository(owner="octocat", repo="hello-world")

Auflisten von Pull Requests

mcp_github_enterprise_list_pull_requests(owner="octocat", repo="hello-world", state="open")

Probleme verwalten

# List issues mcp_github_enterprise_list_issues(owner="octocat", repo="hello-world", state="all") # Get issue details mcp_github_enterprise_get_issue(owner="octocat", repo="hello-world", issue_number=1) # Get issue/PR comments mcp_github_enterprise_list_issue_comments(owner="octocat", repo="hello-world", issue_number=1) # Create a new issue mcp_github_enterprise_create_issue( owner="octocat", repo="hello-world", title="Found a bug", body="Here is a description of the bug", labels=["bug", "important"] )

Arbeiten mit Repository-Inhalten

mcp_github_enterprise_get_content(owner="octocat", repo="hello-world", path="README.md")

Repository-Verwaltung

# Create a new repository mcp_github_enterprise_create_repository( name="new-project", description="This is a new project", private=true, auto_init=true ) # Update repository settings mcp_github_enterprise_update_repository( owner="octocat", repo="hello-world", description="Updated description", has_issues=true )

Benutzerverwaltung (nur Enterprise)

Diese Funktionen sind speziell für GitHub Enterprise Server-Umgebungen konzipiert und erfordern Administratorberechtigungen:

# List all users in the GitHub Enterprise instance mcp_github_enterprise_list_users(filter="active", per_page=100) # Get a specific user's details mcp_github_enterprise_get_user(username="octocat") # Create a new user (Enterprise only) mcp_github_enterprise_create_user( login="newuser", email="newuser@example.com", name="New User", company="ACME Inc." ) # Update a user's information (Enterprise only) mcp_github_enterprise_update_user( username="octocat", email="updated-email@example.com", location="San Francisco" ) # Suspend a user (Enterprise only) mcp_github_enterprise_suspend_user( username="octocat", reason="Violation of terms of service" ) # Unsuspend a user (Enterprise only) mcp_github_enterprise_unsuspend_user(username="octocat") # List organizations a user belongs to mcp_github_enterprise_list_user_orgs(username="octocat")

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

Deploy Server
A
security – no known vulnerabilities
-
license - not tested
A
quality - confirmed to work

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.

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.

  1. Kompatibilität
    1. Hauptmerkmale
      1. Erste Schritte
        1. Voraussetzungen
        2. Docker-Installation und -Einrichtung
        3. Installation und Einrichtung
        4. Installation und Einrichtung für die Produktion
      2. Integration mit KI-Tools
        1. Claude Desktop
        2. Cursor
      3. Sprachkonfiguration
        1. Umgebungsvariablen
        2. Befehlszeilenargumente
      4. Zusätzliche Optionen im HTTP-Modus
        1. Verfügbare MCP-Tools
          1. Verwenden der Werkzeuge im Cursor
            1. Auflisten von Repositories
            2. Abrufen von Repository-Informationen
            3. Auflisten von Pull Requests
            4. Probleme verwalten
            5. Arbeiten mit Repository-Inhalten
            6. Repository-Verwaltung
            7. Benutzerverwaltung (nur Enterprise)
          2. API-Verbesserungen
            1. Beitragen
              1. Lizenz

                Related MCP Servers

                • A
                  security
                  -
                  license
                  A
                  quality
                  MCP Server for the GitHub API, enabling file operations, repository management, search functionality, and more.
                  Last updated -
                  22,573
                  71,962
                  MIT License
                • A
                  security
                  -
                  license
                  A
                  quality
                  MCP 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 -
                  18
                  0
                  4
                  • Linux
                  • Apple
                • A
                  security
                  -
                  license
                  A
                  quality
                  A MCP server that provides access to GitHub trending repositories and developers data through a simple API interface.
                  Last updated -
                  2
                  35
                  MIT License
                  • Apple
                • -
                  security
                  -
                  license
                  -
                  quality
                  An 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 -
                  2
                  MIT License
                  • Linux
                  • 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/ddukbg/github-enterprise-mcp'

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