GitLab MCP for Code Review
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
Related MCP server: AI-PR-Review-MCP
Installation
Voraussetzungen
Python 3.10+
Persönlicher GitLab-Zugriffstoken mit API-Bereich (read_api, api)
Cursor IDE oder Claude Desktop App für MCP-Integration
Schnellstart
Klonen Sie dieses Repository:
git clone https://github.com/mehmetakinn/gitlab-mcp-code-review.git
cd gitlab-mcp-code-reviewErstellen und aktivieren Sie eine virtuelle Umgebung:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activateInstallieren Sie Abhängigkeiten:
pip install -r requirements.txtErstellen Sie eine
.envDatei mit Ihrer GitLab-Konfiguration (alle Optionen finden Sie unter.env.example):
# Required
GITLAB_TOKEN=your_personal_access_token_here
# Optional settings
GITLAB_HOST=gitlab.com
GITLAB_API_VERSION=v4
LOG_LEVEL=INFOKonfigurationsoptionen
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:
{
"mcpServers": {
"gitlab-mcp-code-review": {
"command": "/path/to/your/gitlab-mcp-code-review/.venv/bin/python",
"args": [
"/path/to/your/gitlab-mcp-code-review/server.py",
"--transport",
"stdio"
],
"cwd": "/path/to/your/gitlab-mcp-code-review",
"env": {
"PYTHONPATH": "/path/to/your/gitlab-mcp-code-review",
"VIRTUAL_ENV": "/path/to/your/gitlab-mcp-code-review/.venv",
"PATH": "/path/to/your/gitlab-mcp-code-review/.venv/bin:/usr/local/bin:/usr/bin:/bin"
},
"stdio": true
}
}
}Ersetzen Sie /path/to/your/gitlab-mcp-code-review durch den tatsächlichen Pfad zu Ihrem geklonten Repository.
Claude Desktop App Integration
So verwenden Sie dieses MCP mit der Claude Desktop App:
Öffnen Sie die Claude Desktop App
Gehen Sie zu Einstellungen → Erweitert → MCP-Konfiguration
Fügen Sie die folgende Konfiguration hinzu:
{
"mcpServers": {
"gitlab-mcp-code-review": {
"command": "/path/to/your/gitlab-mcp-code-review/.venv/bin/python",
"args": [
"/path/to/your/gitlab-mcp-code-review/server.py",
"--transport",
"stdio"
],
"cwd": "/path/to/your/gitlab-mcp-code-review",
"env": {
"PYTHONPATH": "/path/to/your/gitlab-mcp-code-review",
"VIRTUAL_ENV": "/path/to/your/gitlab-mcp-code-review/.venv",
"PATH": "/path/to/your/gitlab-mcp-code-review/.venv/bin:/usr/local/bin:/usr/bin:/bin"
},
"stdio": true
}
}
}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 |
| Vollständige Informationen zu einer Zusammenführungsanforderung erhalten |
| Abrufen von Diffs für eine bestimmte Zusammenführungsanforderung |
| Abrufen von Diff-Informationen für ein bestimmtes Commit |
| Vergleichen Sie verschiedene Zweige, Tags oder Commits |
| Hinzufügen eines Kommentars zu einer Zusammenführungsanforderung |
| Genehmigen einer Zusammenführungsanforderung |
| Eine Zusammenführungsanfrage ablehnen |
| Abrufen einer Liste mit Zusammenführungsanforderungen für ein Projekt |
Anwendungsbeispiele
Abrufen einer Zusammenführungsanforderung
# Get details of merge request #5 in project with ID 123
mr = fetch_merge_request("123", "5")Anzeigen bestimmter Dateiänderungen
# Get diff for a specific file in a merge request
file_diff = fetch_merge_request_diff("123", "5", "path/to/file.js")Filialen vergleichen
# Compare develop branch with master branch
diff = compare_versions("123", "develop", "master")Hinzufügen eines Kommentars zu einer Zusammenführungsanforderung
# Add a comment to a merge request
comment = add_merge_request_comment("123", "5", "This code looks good!")Genehmigen einer Zusammenführungsanforderung
# Approve a merge request and set required approvals to 2
approval = approve_merge_request("123", "5", approvals_required=2)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
.envDateiStellen Sie sicher, dass Ihre MCP-Konfigurationspfade korrekt sind
Testen Sie die Verbindung mit:
curl -H "Private-Token: your-token" https://gitlab.com/api/v4/projectsSetzen 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
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityAmaintenanceA production-ready MCP server for GitLab enabling AI assistants to read and manage GitLab projects, merge requests, issues, pipelines, wikis, releases, and more through a unified interface.1005149MIT
- Flicense-qualityDmaintenanceAn MCP server that automates pull request reviews using multiple LLM providers (OpenAI, Claude, Gemini, Groq, Perplexity) and supports GitHub and Bitbucket with real-time webhook integration and interactive AI assistant commands.1
- Alicense-qualityBmaintenanceAn MCP server that enables AI agents to perform automated code reviews on GitLab merge requests, including fetching details, reading diffs, posting inline comments, managing labels, and approving or unapproving MRs.514MIT
- AlicenseAqualityAmaintenanceMCP server for GitLab REST API enabling AI agents to manage pipelines, merge requests, diffs, and local reviews.1512MIT
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
An MCP server that integrates with Discord to provide AI-powered features.
A MCP server built for developers enabling Git based project management with project and personal…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mehmetakinn/gitlab-mcp-code-review'
If you have feedback or need assistance with the MCP directory API, please join our Discord server