GitHub Actions MCP Server

by ko1ynnky

Integrations

  • Provides access to GitHub repository data, allowing interaction with repositories to manage GitHub Actions workflows and analyze their execution.

  • Enables complete workflow management including listing, viewing, triggering, canceling, and rerunning workflows, as well as analyzing workflow runs and their jobs in GitHub repositories.

GitHub Actions MCP-Server

MCP-Server für die GitHub Actions API, der KI-Assistenten die Verwaltung und Bedienung von GitHub Actions-Workflows ermöglicht. Kompatibel mit mehreren KI-Programmierassistenten, darunter Claude Desktop, Codeium und Windsurf.

Merkmale

  • Umfassendes Workflow-Management : Workflows auflisten, anzeigen, auslösen, abbrechen und erneut ausführen
  • Analyse der Workflow-Läufe : Erhalten Sie detaillierte Informationen zu Workflow-Läufen und deren Jobs
  • Umfassende Fehlerbehandlung : Klare Fehlermeldungen mit erweiterten Details
  • Flexible Typvalidierung : Robuste Typprüfung mit eleganter Handhabung von API-Variationen
  • Sicherheitsorientiertes Design : Timeout-Behandlung, Ratenbegrenzung und strenge URL-Validierung

Werkzeuge

  1. list_workflows
    • Auflisten von Workflows in einem GitHub-Repository
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • page (optionale Zahl): Seitenzahl für die Paginierung
      • perPage (optionale Zahl): Ergebnisse pro Seite (max. 100)
    • Rückgabe: Liste der Workflows im Repository
  2. get_workflow
    • Abrufen von Details zu einem bestimmten Workflow
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • workflowId (Zeichenfolge oder Zahl): Die ID des Workflows oder der Dateiname
    • Retouren: Detaillierte Informationen zum Workflow
  3. get_workflow_usage
    • Abrufen der Nutzungsstatistik eines Workflows
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • workflowId (Zeichenfolge oder Zahl): Die ID des Workflows oder der Dateiname
    • Rückgabe: Nutzungsstatistiken einschließlich abrechenbarer Minuten
  4. list_workflow_runs
    • Auflisten aller Workflow-Ausführungen für ein Repository oder einen bestimmten Workflow
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • workflowId (optionale Zeichenfolge oder Zahl): Die ID des Workflows oder der Dateiname
      • actor (optionale Zeichenfolge): Filtern nach Benutzer, der den Workflow ausgelöst hat
      • branch (optionale Zeichenfolge): Nach Zweig filtern
      • event (optionale Zeichenfolge): Filtern nach Ereignistyp
      • status (optionale Zeichenfolge): Nach Status filtern
      • created (optionale Zeichenfolge): Filtern nach Erstellungsdatum (JJJJ-MM-TT)
      • excludePullRequests (optionaler Boolescher Wert): PR-getriggerte Läufe ausschließen
      • checkSuiteId (optionale Zahl): Filtern nach Check-Suite-ID
      • page (optionale Zahl): Seitenzahl für die Paginierung
      • perPage (optionale Zahl): Ergebnisse pro Seite (max. 100)
    • Gibt zurück: Liste der Workflow-Läufe, die den Kriterien entsprechen
  5. get_workflow_run
    • Abrufen von Details zu einem bestimmten Workflow-Ausführungsvorgang
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • runId (Nummer): Die ID des Workflow-Laufs
    • Rückgabe: Detaillierte Informationen zum jeweiligen Workflow-Lauf
  6. get_workflow_run_jobs
    • Abrufen von Aufträgen für einen bestimmten Workflow-Lauf
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • runId (Nummer): Die ID des Workflow-Laufs
      • filter (optionale Zeichenfolge): Filtern Sie Jobs nach Abschlussstatus („neueste“, „alle“)
      • page (optionale Zahl): Seitenzahl für die Paginierung
      • perPage (optionale Zahl): Ergebnisse pro Seite (max. 100)
    • Gibt zurück: Liste der Jobs im Workflow-Lauf
  7. trigger_workflow
    • Auslösen eines Workflow-Laufs
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • workflowId (Zeichenfolge oder Zahl): Die ID des Workflows oder der Dateiname
      • ref (Zeichenfolge): Die Referenz, auf der der Workflow ausgeführt werden soll (Zweig, Tag oder SHA)
      • inputs (optionales Objekt): Eingabeparameter für den Workflow
    • Rückgabe: Informationen zum ausgelösten Workflow-Lauf
  8. cancel_workflow_run
    • Abbrechen einer Workflow-Ausführung
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • runId (Nummer): Die ID des Workflow-Laufs
    • Retouren: Status des Stornierungsvorgangs
  9. rerun_workflow
    • Einen Workflow-Lauf erneut ausführen
    • Eingänge:
      • owner (Zeichenfolge): Repository-Besitzer (Benutzername oder Organisation)
      • repo (Zeichenfolge): Repository-Name
      • runId (Nummer): Die ID des Workflow-Laufs
    • Rückgabe: Status des erneut ausgeführten Vorgangs

Verwendung mit KI-Codierungsassistenten

Dieser MCP-Server ist mit mehreren KI-Codierungsassistenten kompatibel, darunter Claude Desktop, Codeium und Windsurf.

Claude Desktop

Stellen Sie zunächst sicher, dass Sie das Projekt erstellt haben (siehe Abschnitt „Erstellen“ weiter unten). Fügen Sie anschließend Folgendes zu Ihrer claude_desktop_config.json hinzu:

{ "mcpServers": { "github-actions": { "command": "node", "args": [ "<path-to-mcp-server>/dist/index.js" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }
Codeium

Fügen Sie Ihrer Codeium MCP-Konfigurationsdatei die folgende Konfiguration hinzu (normalerweise unter ~/.codeium/windsurf/mcp_config.json auf Unix-basierten Systemen oder %USERPROFILE%\.codeium\windsurf\mcp_config.json unter Windows):

{ "mcpServers": { "github-actions": { "command": "node", "args": [ "<path-to-mcp-server>/dist/index.js" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }
Windsurf

Windsurf verwendet dasselbe Konfigurationsformat wie Codeium. Fügen Sie den Server Ihrer Windsurf MCP-Konfiguration hinzu, wie oben für Codeium gezeigt.

Bauen

Unix/Linux/macOS

Klonen Sie das Repository und erstellen Sie:

git clone https://github.com/ko1ynnky/github-actions-mcp-server.git cd github-actions-mcp-server npm install npm run build

Windows

Verwenden Sie für Windows-Systeme den Windows-spezifischen Build-Befehl:

git clone https://github.com/ko1ynnky/github-actions-mcp-server.git cd github-actions-mcp-server npm install npm run build:win

Alternativ können Sie die mitgelieferte Batchdatei verwenden:

run-server.bat [optional-github-token]

Dadurch werden die erforderlichen Dateien im Verzeichnis dist erstellt, die Sie zum Ausführen des MCP-Servers benötigen.

Windows-spezifische Anweisungen

Voraussetzungen

  • Node.js (v14 oder höher)
  • npm (v6 oder höher)

Ausführen des Servers unter Windows

  1. Mithilfe der Batchdatei (einfachste Methode):
    run-server.bat [optional-github-token]
    Dadurch wird überprüft, ob der Build vorhanden ist, bei Bedarf erstellt und der Server gestartet.
  2. Direkte Verwendung von npm:
    npm run start

Festlegen des persönlichen GitHub-Zugriffstokens unter Windows

Für die volle Funktionalität und um eine Ratenbegrenzung zu vermeiden, müssen Sie Ihr persönliches GitHub-Zugriffstoken festlegen.

Optionen:

  1. Übergeben Sie es als Parameter an die Batchdatei:
    run-server.bat your_github_token_here
  2. Legen Sie es als Umgebungsvariable fest:
    set GITHUB_PERSONAL_ACCESS_TOKEN=your_github_token_here npm run start

Beheben von Windows-Problemen

Wenn Probleme auftreten:

  1. Build-Fehler : Stellen Sie sicher, dass TypeScript korrekt installiert ist.
    npm install -g typescript
  2. Berechtigungsprobleme : Stellen Sie sicher, dass Sie die Befehle in einer Eingabeaufforderung mit entsprechenden Berechtigungen ausführen.
  3. Node.js-Fehler : Stellen Sie sicher, dass Sie eine kompatible Node.js-Version verwenden.
    node --version

Anwendungsbeispiele

Workflows in einem Repository auflisten:

const result = await listWorkflows({ owner: "your-username", repo: "your-repository" });

Lösen Sie einen Workflow aus:

const result = await triggerWorkflow({ owner: "your-username", repo: "your-repository", workflowId: "ci.yml", ref: "main", inputs: { environment: "production" } });

Fehlerbehebung

Häufige Probleme

  1. Authentifizierungsfehler :
    • Stellen Sie sicher, dass Ihr GitHub-Token über die richtigen Berechtigungen verfügt
    • Überprüfen Sie, ob das Token korrekt als Umgebungsvariable festgelegt ist
  2. Ratenbegrenzung :
    • Der Server implementiert eine Ratenbegrenzung, um das Erreichen der GitHub-API-Grenzen zu vermeiden
    • Wenn Sie auf Ratenbegrenzungsfehler stoßen, reduzieren Sie die Häufigkeit der Anfragen
  3. Typvalidierungsfehler :
    • GitHub-API-Antworten können manchmal von erwarteten Schemata abweichen
    • Der Server implementiert eine flexible Validierung, um die meisten Variationen zu verarbeiten
    • Wenn Sie auf anhaltende Fehler stoßen, öffnen Sie bitte ein Problem

Lizenz

Dieser MCP-Server ist unter der MIT-Lizenz lizenziert.

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
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 es KI-Assistenten ermöglicht, GitHub Actions-Workflows zu verwalten, indem er Tools zum Auflisten, Anzeigen, Auslösen, Abbrechen und erneuten Ausführen von Workflows über die GitHub-API bereitstellt.

  1. Merkmale
    1. Werkzeuge
      1. Verwendung mit KI-Codierungsassistenten
    2. Bauen
      1. Unix/Linux/macOS
      2. Windows
    3. Anwendungsbeispiele
      1. Fehlerbehebung
        1. Häufige Probleme
      2. Lizenz

        Related MCP Servers

        • A
          security
          F
          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
          4
          3
          TypeScript
          • Linux
          • Apple
        • A
          security
          F
          license
          A
          quality
          The Git MCP Server allows AI assistants to perform enhanced Git operations via the Model Context Protocol, supporting core Git functions, branch and tag management, GitHub integration, and more.
          Last updated -
          21
          55
          4
          TypeScript
        • -
          security
          A
          license
          -
          quality
          An MCP server that enables AI assistants like Claude to help users manage their GitHub notifications through natural language commands.
          Last updated -
          55
          11
          TypeScript
          MIT License
        • A
          security
          F
          license
          A
          quality
          An MCP server that enables integration with GitHub Enterprise API, allowing users to access repository information, manage issues, pull requests, workflows, and other GitHub features through Cursor.
          Last updated -
          16
          33
          13
          TypeScript
          • Linux
          • Apple

        View all related MCP servers

        ID: ydaumkc8kn