Connector-Anleitung12 Minuten Lesezeit39 MCP-Tools7 Sprachen

GitLab MCP mit Microsoft Copilot verbinden

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

HCVom HelpCode-TeamAktualisiert 12 Min. Lesezeit Open Source auf GitHub

Keine Kreditkarte · 7 Tage Test · Self-Hosting-Alternative verfügbar

GitLab

GitLab

Let your AI work in GitLab: find projects, triage and update issues, review merge requests with their diffs and comments, check pipelines and read failing job logs, and read branches, commits and files. GitLab.com or your own GitLab instance, with a personal access token.

Tools

39

Region

INTL

Kategorie

Infrastruktur

Authentifizierung

Bearer Token

Benötigte Env-Vars

GITLAB_URLGITLAB_TOKEN
Mit einem Klick in der Cloud installieren

7 Tage kostenlos testen · Keine Kreditkarte

  • 7 Tage kostenlos
    Keine Kreditkarte nötig
  • DSGVO & SOC 2 ready
    EU-Datenhaltung, Audit-Logs
  • Open Source auf GitHub
    Open-Source · AGPL-3.0
  • Funktioniert mit ChatGPT, Claude, Gemini
    Jeder MCP-kompatible Client

Installation überspringen. In unter 2 Minuten einsatzbereit.

Starte eine kostenlose Testphase auf cloud.anythingmcp.com, füge GitLab mit einem Klick hinzu und richte deinen KI-Client (Claude, ChatGPT, Copilot oder Cursor) auf den erzeugten MCP-Endpoint. Kein Docker, kein git clone, keinerlei Entwicklungserfahrung nötig.

Kostenlos testen

Zusammenfassung

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Frag einfach

Beispiel-Prompts für GitLab

Klick auf einen Prompt, um ihn zu kopieren. In Claude, ChatGPT, Cursor, Gemini, Copilot oder OpenClaw einfügen — und gegen diesen Connector laufen lassen.

GitLab · live via MCP
Teilen
Opus 4.7

Claude ist KI und kann Fehler machen. Bitte Antworten gegenprüfen.

💡 Keine Installation? Nutze cloud.anythingmcp.com direkt. Einloggen, Connectors → GitLab klicken, Zugangsdaten einfügen, MCP-API-Key erzeugen, fertig. Kein Docker, kein git clone, kein lokaler Server.

GitLab + Microsoft Copilot

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Voraussetzungen

Die vollständige Setup-Anleitung ist in den Connector eingebaut (im Store sichtbar, wenn du den Connector auswählst). Benötigte Umgebungsvariablen für diesen Connector:

GITLAB_URL, GITLAB_TOKEN

Schritt 1 — Zugangsdaten holen

  1. Klicke in GitLab auf deinen Avatar → Edit profile → Access → Personal access tokens → Generate token. Auf GitLab.com findest du die Seite unter gitlab.com/-/user_settings/personal_access_tokens.
  2. Gib dem Token einen Namen (zum Beispiel „AnythingMCP“), setze ein Ablaufdatum (auf GitLab.com höchstens 365 Tage) und wähle den Scope api. Für eine Einrichtung nur zum Lesen wähle stattdessen read_api.
  3. Kopiere das Token sofort: GitLab zeigt es nur einmal an. Es beginnt mit glpat-.
  4. Trage das Token ohne das Wort Bearer in GITLAB_TOKEN ein. Setze GITLAB_URL auf https://gitlab.com für GitLab.com oder auf die Adresse deiner Self-Managed- oder Dedicated-Instanz, so wie du sie im Browser öffnest (zum Beispiel https://gitlab.example.com), ohne /api/v4 und ohne abschließenden Schrägstrich. Dann installiere den Connector.
  5. Beginne mit gitlab_get_current_user: Das Tool zeigt, zu welchem GitLab-Nutzer das Token gehört, und bestätigt, dass die Adresse stimmt. Nenne der KI dann ein Projekt mit seinem Pfad, etwa my-group/my-project, oder lass sie es mit gitlab_list_projects suchen.

Ablauf und Reichweite des Tokens: Auf GitLab.com gilt ein Token höchstens 365 Tage. Läuft deins ab, erstelle ein neues mit demselben Scope und trage es erneut in GITLAB_TOKEN ein. Der Connector handelt als Nutzer des Tokens: Die KI sieht und ändert genau das, was dieser Nutzer darf. Ein Fine-grained Personal Access Token (ab GitLab 19.2) funktioniert genauso: Gib ihm Lese- und Schreibrechte auf Issues, Merge Requests, Repository, Pipelines und Jobs der betroffenen Projekte. Manche Gruppen auf GitLab.com verlangen Fine-grained Tokens; ein klassisches Token scheitert dann an ihren Projekten mit „Access denied: This operation requires a fine-grained personal access token“. Project und Group Access Tokens funktionieren auch, brauchen auf GitLab.com aber Premium oder Ultimate.

Nur lesen: Nutze ein Token mit read_api und schalte gitlab_create_issue, gitlab_update_issue, gitlab_add_issue_note, gitlab_create_merge_request, gitlab_update_merge_request, gitlab_add_merge_request_note und gitlab_create_branch aus.

Bei der Installation ausgeschaltet: gitlab_delete_issue, das ein Issue endgültig löscht (das dürfen nur Projekt-Owner und Administratoren, und meist willst du es eigentlich mit gitlab_update_issue schließen), und gitlab_delete_branch. Schalte sie nur ein, wenn die KI Issues oder Branches löschen soll.

Projekte, Issues und Merge Requests: Die Tools nehmen ein Projekt über seine numerische ID oder seinen vollen Pfad, etwa my-group/my-project. Issues und Merge Requests werden über die Nummer angesprochen, die GitLab anzeigt (#42, !17), nicht über ihre globale ID. gitlab_list_project_members liefert die Nutzer-IDs für Assignees und Reviewer. gitlab_list_my_issues und gitlab_list_my_merge_requests arbeiten projektübergreifend und zeigen standardmäßig die eigenen Einträge des Token-Nutzers, auch Merge Requests, die auf sein Review warten.

Reviews, Pipelines und Code: Für ein Review liest die KI gitlab_get_merge_request (Merge-Status und Konflikte), dann gitlab_get_merge_request_diffs Seite für Seite, gitlab_list_merge_request_commits und gitlab_list_merge_request_notes. Eine Datei mit zu großem Diff kommt ohne Text zurück; die KI liest sie dann mit gitlab_get_file_content auf dem Quell-Branch. Bei einer fehlgeschlagenen Pipeline geht sie von gitlab_list_pipelines über gitlab_list_pipeline_jobs (nur fehlgeschlagene Jobs) zu gitlab_get_job_log. Dateien und Job-Logs werden bei 200 KB abgeschnitten, der Anfang bleibt erhalten: Ein längeres Log öffnest du in GitLab. gitlab_search_project durchsucht Code innerhalb eines Projekts in jedem Tarif; die Codesuche über die ganze Instanz mit gitlab_search braucht Advanced Search, eine Premium-Funktion.

Schreibzugriffe erst bestätigen: Issues, Kommentare, Merge Requests und Branches entstehen unter dem Namen des Token-Nutzers. Die KI zeigt dir vorher Titel, Text oder Branch und wartet auf deine Bestätigung. Quick Actions in einem Kommentar wie /label, /assign, /close, /approve oder /merge führt GitLab aus, deshalb nimmt die KI sie nur auf, wenn du darum bittest. Um einen Branch anzulegen, braucht der Nutzer Developer-Zugriff.

Rate Limits: GitLab.com erlaubt etwa 2.000 API-Anfragen pro Minute und Nutzer, 200 neue Issues und 60 neue Kommentare pro Minute sowie 100 Suchen pro Minute. Auf einer Self-Managed-Instanz legt der Administrator die Limits fest. Über einem Limit antwortet GitLab mit 429: Warte und versuche es erneut.

Häufige Fehler: 401 heißt, dass das Token falsch, abgelaufen oder widerrufen ist oder dass GITLAB_URL auf eine andere Instanz zeigt als die, die es ausgestellt hat. 403 heißt, dass ein Scope fehlt (zum Beispiel ein read_api-Token bei einem Schreibzugriff) oder die Rolle für die Aktion nicht reicht. 404 heißt, dass es das Projekt, das Issue oder die Datei nicht gibt oder der Nutzer sie nicht sehen kann: GitLab versteckt private Ressourcen hinter 404. 400 nennt das fehlende oder ungültige Feld. 409 bei einem neuen Merge Request heißt, dass für diese Branches schon einer offen ist. Ein umbenanntes Projekt beantwortet Lesezugriffe noch unter dem alten Pfad, Schreibzugriffe dort scheitern aber mit 405: Nimm den neuen Pfad oder die numerische ID.

Der Connector hat keine Tools, um Merge Requests zu mergen oder zu genehmigen, Commits zu pushen, Dateien zu bearbeiten oder Pipelines zu starten, zu wiederholen oder abzubrechen, und er deckt weder CI/CD-Variablen noch Releases, Wikis, Packages, die Container Registry oder die Administration ab.

Schritt 2 — Adapter installieren

curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d

Schritt 3 — Connector in Microsoft Copilot hinzufügen

Deine Server-URL: Öffne in AnythingMCP MCP Servers → den Server, auf dem dieser Connector liegt, und kopiere seine URL (https://cloud.anythingmcp.com/mcp/…). Setze sie überall ein, wo diese Anleitung YOUR_SERVER_ID zeigt.

Microsoft Copilot nutzt MCP-Server über Agents, die du in Copilot Studio baust: Du fügst AnythingMCP einem Agent als Tool hinzu und veröffentlichst den Agent dann in Microsoft 365 Copilot und Teams. Copilot Studio verbindet sich aus der Cloud von Microsoft per Streamable HTTP, das AnythingMCP unterstützt.

  1. Öffne in Copilot Studio deinen Agent (oder leg einen an), geh zu Tools und wähle Add a tool → New tool → Model Context Protocol.
  2. Trag einen Server name ein (zum Beispiel AnythingMCP), eine Server description, die sagt, was der Connector kann, und die Server URL https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Anhand der Beschreibung entscheidet Copilot Studio, wann es den Server aufruft.
  3. Wähle bei der Authentifizierung API key, setze Type auf Header und den Header-Namen auf X-API-Key und klicke auf Create.
  4. Wähle in Add tool die Option Create a new connection, füge einen MCP-API-Key aus AnythingMCP ein (MCP Servers → dein Server → API keys) und klicke auf Add to agent.
  5. Probier es im Test-Bereich des Agents aus: Bitte um etwas, wofür er die GitLab-Tools braucht.
  6. Klicke auf Publish, dann auf Channels → Microsoft 365 and Microsoft Teams, lass Make agent available in Microsoft Copilot aktiviert und wähle Add channel. See agent in Teams installiert den Agent für dich; in Microsoft 365 Copilot tippst du @ und wählst den Agent aus.

Lieber eine Anmeldung pro Person? Wähle statt API key OAuth 2.0 → Dynamic discovery: Dann meldet sich jede Person beim ersten Aufruf des Agents bei AnythingMCP an.

Du hostest selbst? Nimm statt https://cloud.anythingmcp.com die öffentliche HTTPS-Adresse deiner Instanz. Copilot Studio verbindet sich aus der Cloud von Microsoft, localhost funktioniert deshalb nicht.

Verfügbare Tools

ToolWhat it does
gitlab_get_current_userGet the GitLab user the token belongs to: id, username, name, state, web_url and, for admins, is_admin
gitlab_list_projectsList projects the token can see, newest activity first by default: id, path_with_namespace, default_branch, web_url, visibility and…
gitlab_get_projectGet one project by id or path: default_branch, visibility, description, web_url, open_issues_count, permissions of the token's user, and…
gitlab_list_project_membersList the members of a project, including those inherited from its groups: user id, username, name and access_level (10 Guest, 15 Planner…
gitlab_list_labelsList a project's labels (including group labels): name, color, description and open issue and merge request counts
gitlab_list_issuesList a project's issues with filters: iid, title, state, labels, assignees, author, milestone, due_date, web_url
gitlab_list_my_issuesList issues across all projects: by default the ones assigned to the token's user, or the ones they created, or every issue they can see
gitlab_get_issueGet one issue by its iid: title, description (Markdown), state, labels, assignees, author, milestone, due_date, time stats, related merge…
gitlab_create_issueCreate an issue in a project
gitlab_update_issueChange an issue: title, description, labels (replace, add or remove), assignees, milestone, due date, or close or reopen it with state_event
gitlab_delete_issueDelete an issue for good
gitlab_list_issue_notesList the comments on an issue, newest first by default, including system notes (label and status changes, flagged system: true): id, body…
gitlab_add_issue_notePost a comment on an issue, as the token's user
gitlab_list_merge_requestsList a project's merge requests with filters: iid, title, state, draft, source and target branch, author, reviewers, labels, merge_status…
gitlab_list_my_merge_requestsList merge requests across all projects: by default the ones created by the token's user, or assigned to them, or waiting for their review…
gitlab_get_merge_requestGet one merge request by iid: title, description, state, draft, source and target branch, sha, detailed_merge_status (mergeable, conflict…
gitlab_get_merge_request_diffsGet the changed files of a merge request, page by page: old_path, new_path, new_file, renamed_file, deleted_file and the diff text of each
gitlab_list_merge_request_commitsList the commits of a merge request: id (SHA), short_id, title, message, author_name and created_at
gitlab_list_merge_request_notesList the comments on a merge request, including review comments on lines (with a position) and system notes: id, body, author, created_at…
gitlab_add_merge_request_notePost a general comment on a merge request, as the token's user
gitlab_create_merge_requestOpen a merge request from a source branch into a target branch
gitlab_update_merge_requestChange a merge request: title (add or remove the Draft: prefix), description, target branch, labels, assignees, reviewers, or close or…
gitlab_list_pipelinesList a project's CI/CD pipelines, newest first: id, iid, status, ref, sha, source, created_at, updated_at and web_url
gitlab_get_pipelineGet one pipeline: status, ref, sha, source, duration, queued_duration, coverage, user, started_at, finished_at and web_url
gitlab_list_pipeline_jobsList the jobs of a pipeline: id, name, stage, status, failure_reason, duration, runner, allow_failure and web_url
gitlab_get_jobGet one CI/CD job: name, stage, status, failure_reason, duration, started_at, finished_at, the commit, the pipeline, artifacts and web_url
gitlab_get_job_logRead the log (trace) of a CI/CD job as plain text, with ANSI color codes
gitlab_list_branchesList a project's branches: name, merged, protected, default, the last commit (id, title, author, date) and web_url
gitlab_get_branchGet one branch: its last commit, whether it is merged, protected or the default, and whether the user can push to it
gitlab_create_branchCreate a branch from a branch, tag or commit
gitlab_delete_branchDelete a branch
gitlab_list_commitsList commits of a branch, tag or the default branch, newest first: id (SHA), short_id, title, author_name, authored_date and web_url
gitlab_get_commitGet one commit by SHA, branch or tag name: message, author, committer, parent_ids, stats (additions, deletions), the last pipeline and…
gitlab_get_commit_diffGet the changes of one commit, page by page: old_path, new_path, new_file, renamed_file, deleted_file and the diff text per file
gitlab_list_repository_treeList files and folders in a repository folder: id (blob or tree SHA), name, type (blob = file, tree = folder), path and mode.…
gitlab_get_file_infoGet a file's metadata without its content: file_name, file_path, size, encoding, content_sha256, blob_id, commit_id and last_commit_id on…
gitlab_get_file_contentRead a file from the repository as text, at a branch, tag or commit (the default branch by default)
gitlab_searchSearch the whole instance (only what the token's user can see): projects, groups, issues, work_items, merge_requests, milestones, users or…
gitlab_search_projectSearch inside one project: code (blobs, with file name, path, line number and the matching lines), commits, issues, merge_requests…

Beispiel-Prompts

  • „Welche Merge Requests warten projektübergreifend auf mein Review, und welche davon haben Konflikte oder eine fehlgeschlagene Pipeline?“
  • „Warum ist die letzte Pipeline auf main in my-group/web-app fehlgeschlagen? Zeig mir den fehlgeschlagenen Job und den Fehler aus seinem Log.“
  • „Fass Merge Request !128 in my-group/web-app zusammen: was sich geändert hat, in welchen Dateien und welche Review-Kommentare noch offen sind.“
  • „Leg in my-group/web-app ein Issue mit dem Titel Checkout-Button auf Mobilgeräten verschoben an, mit dem Label bug, und weise es Lena zu.“

FAQ

Für welchen Copilot gilt das? Für Microsoft 365 Copilot im Unternehmen, über Agents aus Copilot Studio. Die Microsoft-Copilot-App für private Konten bietet keine Möglichkeit, einen eigenen MCP-Server hinzuzufügen.

Was brauche ich? Ein Arbeitskonto mit Zugang zu Copilot Studio (Lizenz oder Testversion), um den Agent zu bauen. Wer ihn in Microsoft 365 Copilot oder Teams nutzen soll, braucht Zugriff auf den Agent: Teile ihn oder lass ihn von einem Admin für die Organisation veröffentlichen. Wendet deine Organisation Datenrichtlinien auf Power-Platform-Connectors an, gelten sie auch für MCP-Server.

Der Agent ruft die Tools nicht auf. Prüfe, dass der Header-Name genau X-API-Key lautet und der Schlüssel zum selben MCP-Server gehört wie die URL, und formuliere die Server description konkret: Copilot Studio entscheidet anhand der Beschreibung, wann es den Server aufruft. Veröffentliche den Agent nach jeder Änderung erneut; in einem offenen Chat holst du die neue Version mit „start over“.

Nächste Schritte

War dieser Guide hilfreich?

Dein GitLab-Agent ist nur einen Klick entfernt.

Connector installieren, Schlüssel einfügen, Microsoft Copilot fragen. 7 Tage kostenlos, keine Kreditkarte.

Verwandte Anleitungen

Connectors

GitLab MCP mit ChatGPT verbinden

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Connectors

GitLab MCP mit Claude verbinden

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Connectors

GitLab MCP mit Cursor verbinden

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Connectors

GitLab MCP mit Gemini CLI verbinden

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Connectors

GitLab MCP mit Meta Muse verbinden

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.

Connectors

GitLab MCP-Server für Issues und Pipelines

Lass deine KI in GitLab arbeiten: Projekte finden, Issues sichten und aktualisieren, Merge Requests mit Diffs und Kommentaren prüfen, Pipelines kontrollieren und Logs fehlgeschlagener Jobs lesen sowie Branches, Commits und Dateien lesen. GitLab.com oder deine eigene GitLab-Instanz, mit einem persönlichen Access-Token.