Skip to main content
Glama

GitLab MCP Server

MCP-Server für die GitLab-API, der Projektmanagement, Dateivorgänge und mehr ermöglicht.

Merkmale

  • Automatische Zweigerstellung : Beim Erstellen/Aktualisieren von Dateien oder beim Übertragen von Änderungen werden Zweige automatisch erstellt, wenn sie nicht vorhanden sind

  • Umfassende Fehlerbehandlung : Klare Fehlermeldungen bei häufigen Problemen

  • Erhaltung des Git-Verlaufs : Operationen bewahren den ordnungsgemäßen Git-Verlauf auf, ohne dass ein Force-Push erforderlich ist.

  • Stapelverarbeitung : Unterstützung für Einzeldatei- und Mehrdateioperationen

Werkzeuge

  1. create_or_update_file

    • Erstellen oder Aktualisieren einer einzelnen Datei in einem Projekt

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • file_path (Zeichenfolge): Pfad, in dem die Datei erstellt/aktualisiert werden soll

      • content (string): Inhalt der Datei

      • commit_message (Zeichenfolge): Commit-Nachricht

      • branch (Zeichenfolge): Branch zum Erstellen/Aktualisieren der Datei in

      • previous_path (optionale Zeichenfolge): Pfad der zu verschiebenden/umzubenennenden Datei

    • Gibt zurück: Dateiinhalt und Commit-Details

  2. push_files

    • Pushen Sie mehrere Dateien in einem einzigen Commit

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • branch (Zeichenfolge): Zweig, zu dem gepusht werden soll

      • files (Array): Zu pushende Dateien, jeweils mit file_path und content

      • commit_message (Zeichenfolge): Commit-Nachricht

    • Rückgabe: Aktualisierte Zweigstellenreferenz

  3. search_repositories

    • Suche nach GitLab-Projekten

    • Eingänge:

      • search (Zeichenfolge): Suchanfrage

      • page (optionale Zahl): Seitenzahl für die Paginierung

      • per_page (optionale Zahl): Ergebnisse pro Seite (Standard 20)

    • Rückgabe: Projektsuchergebnisse

  4. create_repository

    • Erstellen Sie ein neues GitLab-Projekt

    • Eingänge:

      • name (Zeichenfolge): Projektname

      • description (optionale Zeichenfolge): Projektbeschreibung

      • visibility (optionale Zeichenfolge): „privat“, „intern“ oder „öffentlich“

      • initialize_with_readme (optionaler Boolescher Wert): Initialisieren mit README

    • Rückgabe: Erstellte Projektdetails

  5. get_file_contents

    • Inhalte einer Datei oder eines Verzeichnisses abrufen

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • file_path (Zeichenfolge): Pfad zur Datei/zum Verzeichnis

      • ref (optionale Zeichenfolge): Branch/Tag/Commit, aus dem Inhalte abgerufen werden sollen

    • Rückgabe: Datei-/Verzeichnisinhalt

  6. create_issue

    • Neues Problem erstellen

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • title (Zeichenfolge): Titel der Ausgabe

      • description (optionale Zeichenfolge): Problembeschreibung

      • assignee_ids (optional number[]): Zuzuweisende Benutzer-IDs

      • labels (optional string[]): Hinzuzufügende Labels

      • milestone_id (optionale Zahl): Meilenstein-ID

    • Retouren: Details zum erstellten Problem

  7. create_merge_request

    • Erstellen einer neuen Zusammenführungsanforderung

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • title (Zeichenfolge): MR-Titel

      • description (optionale Zeichenfolge): MR-Beschreibung

      • source_branch (Zeichenfolge): Zweig mit Änderungen

      • target_branch (Zeichenfolge): Zweig, in den zusammengeführt werden soll

      • draft (optionaler Boolescher Wert): Als MR-Entwurf erstellen

      • allow_collaboration (optionaler Boolescher Wert): Erlaube Commits von Upstream-Mitgliedern

    • Rückgabe: Details der erstellten Zusammenführungsanforderung

  8. fork_repository

    • Ein Projekt forken

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • namespace (optionale Zeichenfolge): Namespace, in den verzweigt werden soll

    • Rückgabe: Details zum gegabelten Projekt

  9. create_branch

    • Erstellen Sie einen neuen Zweig

    • Eingänge:

      • project_id (Zeichenfolge): Projekt-ID oder URL-codierter Pfad

      • branch (Zeichenfolge): Name für neuen Zweig

      • ref (optionale Zeichenfolge): Quellzweig/Commit für neuen Zweig

    • Rückgabe: Erstellte Zweigreferenz

Related MCP server: GitHub MCP Server Plus

Aufstellen

Persönlicher Zugriffstoken

Erstellen Sie ein persönliches GitLab-Zugriffstoken mit entsprechenden Berechtigungen:

  • Gehen Sie in GitLab zu Benutzereinstellungen > Zugriffstoken

  • Wählen Sie die erforderlichen Bereiche aus:

    • api für vollständigen API-Zugriff

    • read_api für schreibgeschützten Zugriff

    • read_repository und write_repository für Repository-Operationen

  • Erstellen Sie das Token und speichern Sie es sicher

Verwendung mit Claude Desktop

Fügen Sie Ihrer claude_desktop_config.json Folgendes hinzu:

Docker

{ "mcpServers": { "gitlab": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "GITLAB_PERSONAL_ACCESS_TOKEN", "-e", "GITLAB_API_URL", "mcp/gitlab" ], "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>", "GITLAB_API_URL": "https://gitlab.com/api/v4" // Optional, for self-hosted instances } } } }

NPX

{ "mcpServers": { "gitlab": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-gitlab" ], "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>", "GITLAB_API_URL": "https://gitlab.com/api/v4" // Optional, for self-hosted instances } } } }

Verwendung mit VS Code

Verwenden Sie für eine schnelle Installation eine der folgenden Ein-Klick-Installationsschaltflächen ...

Mit NPX in VS Code installieren Installation mit NPX in VS Code Insiders

Mit Docker in VS Code installieren Installation mit Docker in VS Code Insiders

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.

Optional können Sie es einer Datei namens .vscode/mcp.json in Ihrem Arbeitsbereich hinzufügen. Dadurch können Sie die Konfiguration mit anderen teilen.

Beachten Sie, dass der mcp Schlüssel in der Datei .vscode/mcp.json nicht benötigt wird.

Docker

{ "mcp": { "inputs": [ { "type": "promptString", "id": "gitlab_token", "description": "GitLab Personal Access Token", "password": true }, { "type": "promptString", "id": "gitlab_url", "description": "GitLab API URL (optional)", "default": "https://gitlab.com/api/v4" } ], "servers": { "gitlab": { "command": "docker", "args": [ "run", "--rm", "-i", "mcp/gitlab" ], "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "${input:gitlab_token}", "GITLAB_API_URL": "${input:gitlab_url}" } } } } }

NPX

{ "mcp": { "inputs": [ { "type": "promptString", "id": "gitlab_token", "description": "GitLab Personal Access Token", "password": true }, { "type": "promptString", "id": "gitlab_url", "description": "GitLab API URL (optional)", "default": "https://gitlab.com/api/v4" } ], "servers": { "gitlab": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-gitlab" ], "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "${input:gitlab_token}", "GITLAB_API_URL": "${input:gitlab_url}" } } } } }

Bauen

Docker-Build:

docker build -t vonwig/gitlab:mcp -f src/gitlab/Dockerfile .

Umgebungsvariablen

  • GITLAB_PERSONAL_ACCESS_TOKEN : Ihr persönlicher GitLab-Zugriffstoken (erforderlich)

  • GITLAB_API_URL : Basis-URL für die GitLab-API (optional, standardmäßig https://gitlab.com/api/v4 )

Lizenz

Dieser MCP-Server ist unter der MIT-Lizenz lizenziert. Das bedeutet, dass Sie die Software unter den Bedingungen der MIT-Lizenz frei verwenden, ändern und verbreiten dürfen. Weitere Informationen finden Sie in der LICENSE-Datei im Projekt-Repository.

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

Latest Blog Posts

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/modelcontextprotocol/gitlab'

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