Integrations
Enables interaction with GitLab's API to analyze and manage merge requests, including fetching diffs, comparing versions, adding comments, and approving/unapproving merge requests.
GitLab MCP für Code-Überprüfung
Dieses Projekt ist ein Fork von cayirtepeomer/gerrit-code-review-mcp und für die GitLab-Integration angepasst.
Ein MCP-Server (Model Context Protocol) zur Integration von KI-Assistenten wie Claude in GitLab-Merge-Anfragen. Dadurch können KI-Assistenten Codeänderungen direkt über die GitLab-API überprüfen.
Merkmale
- Vollständige Merge Request-Analyse : Holen Sie sich alle Details zu Merge Requests, einschließlich Diffs, Commits und Kommentaren
- Dateispezifische Unterschiede : Analysieren Sie Änderungen an bestimmten Dateien innerhalb von Zusammenführungsanforderungen
- Versionsvergleich : Vergleichen Sie verschiedene Zweige, Tags oder Commits
- Überprüfungsverwaltung : Kommentare hinzufügen, Zusammenführungsanfragen genehmigen oder ablehnen
- Projektübersicht : Erhalten Sie Listen aller Merge-Anfragen in einem Projekt
Installation
Voraussetzungen
- Python 3.10+
- Persönlicher GitLab-Zugriffstoken mit API-Bereich (read_api, api)
- Cursor-IDE für vollständige MCP-Integration
Schnellstart
- Klonen Sie dieses Repository:
- Erstellen und aktivieren Sie eine virtuelle Umgebung:
- Installieren Sie Abhängigkeiten:
- Erstellen Sie eine
.env
Datei mit Ihrer GitLab-Konfiguration (alle Optionen finden Sie unter.env.example
):
Konfigurationsoptionen
Die folgenden Umgebungsvariablen können in Ihrer .env
Datei konfiguriert werden:
Variable | Erforderlich | Standard | Beschreibung |
---|---|---|---|
GITLAB_TOKEN | Ja | - | Ihr persönlicher GitLab-Zugriffstoken |
GITLAB_HOST | NEIN | gitlab.com | Hostname der GitLab-Instanz |
GITLAB_API_VERSION | NEIN | Version 4 | Zu verwendende GitLab-API-Version |
LOG_LEVEL | NEIN | INFO | Protokollierungsebene (DEBUG, INFO, WARNUNG, FEHLER, KRITISCH) |
DEBUGGEN | NEIN | FALSCH | Debug-Modus aktivieren |
REQUEST_TIMEOUT | NEIN | 30 | API-Anforderungstimeout in Sekunden |
MAX_RETRIES | NEIN | 3 | Maximale Wiederholungsversuche für fehlgeschlagene Anfragen |
Cursor-IDE-Integration
Um dieses MCP mit Cursor IDE zu verwenden, fügen Sie diese Konfiguration zu Ihrer Datei ~/.cursor/mcp.json
hinzu:
Ersetzen Sie /path/to/your/gitlab-mcp-code-review
durch den tatsächlichen Pfad zu Ihrem geklonten Repository.
Verfügbare Tools
Der MCP-Server bietet die folgenden Tools für die Interaktion mit GitLab:
Werkzeug | Beschreibung |
---|---|
fetch_merge_request | Vollständige Informationen zu einer Zusammenführungsanforderung erhalten |
fetch_merge_request_diff | Abrufen von Diffs für eine bestimmte Zusammenführungsanforderung |
fetch_commit_diff | Abrufen von Diff-Informationen für ein bestimmtes Commit |
compare_versions | Vergleichen Sie verschiedene Zweige, Tags oder Commits |
add_merge_request_comment | Hinzufügen eines Kommentars zu einer Zusammenführungsanforderung |
approve_merge_request | Genehmigen einer Zusammenführungsanforderung |
unapprove_merge_request | Eine Zusammenführungsanfrage ablehnen |
get_project_merge_requests | Abrufen einer Liste mit Zusammenführungsanforderungen für ein Projekt |
Anwendungsbeispiele
Abrufen einer Zusammenführungsanforderung
Anzeigen bestimmter Dateiänderungen
Filialen vergleichen
Hinzufügen eines Kommentars zu einer Zusammenführungsanforderung
Genehmigen einer Zusammenführungsanforderung
Fehlerbehebung
Wenn Probleme auftreten:
- Überprüfen Sie, ob Ihr GitLab-Token über die entsprechenden Berechtigungen (API, Read_API) verfügt.
- Überprüfen Sie die Einstellungen Ihrer
.env
Datei - Stellen Sie sicher, dass Ihre MCP-Konfigurationspfade korrekt sind
- Testen Sie die Verbindung mit:
curl -H "Private-Token: your-token" https://gitlab.com/api/v4/projects
- Setzen Sie LOG_LEVEL=DEBUG in Ihrer .env-Datei für eine detailliertere Protokollierung
Beitragen
Beiträge sind willkommen! Senden Sie gerne einen Pull Request.
- Forken Sie das Repository
- Erstellen Sie Ihren Feature-Zweig (
git checkout -b feature/amazing-feature
) - Übernehmen Sie Ihre Änderungen (
git commit -m 'Add some amazing feature'
) - Pushen zum Zweig (
git push origin feature/amazing-feature
) - Öffnen einer Pull-Anfrage
Weitere Einzelheiten zum Entwicklungsprozess finden Sie in der Datei CONTRIBUTING.md .
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .
This server cannot be installed
Ein MCP-Server, der KI-Assistenten wie Claude in die Merge-Anfragen von GitLab integriert, sodass sie Codeänderungen überprüfen, Kommentare hinzufügen und Merge-Anfragen direkt über die GitLab-API genehmigen/ablehnen können.
Related MCP Servers
- AsecurityAlicenseAqualityMCP Server for the GitLab API, enabling project management, file operations, and more.Last updated -91,63044,247JavaScriptMIT License
- -securityFlicense-qualityA custom server implementation that allows AI assistants to interact with GitLab repositories, providing capabilities for searching, fetching files, creating/updating content, and managing issues and merge requests.Last updated -JavaScript
- -securityFlicense-qualityAn MCP server that enables communication with GitLab repositories, allowing interaction with GitLab's API to manage projects, issues, and repositories through natural language.Last updated -20JavaScript
- AsecurityFlicenseAqualityAn MCP server that enables AI assistants to manage GitHub Actions workflows by providing tools for listing, viewing, triggering, canceling, and rerunning workflows through the GitHub API.Last updated -924TypeScript