Le GitLab MCP Server permet de connecter des assistants IA comme ChatGPT à des dépôts GitLab, qu'ils soient hébergés sur GitLab.com ou en auto-hébergement. Ce serveur, développé avec Symfony, expose des outils MCP pour interagir avec GitLab, offrant des fonctionnalités de lecture (liste de projets, exploration des fichiers, branches) et d'écriture (création de fichiers, commits atomiques jusqu'à 100 modifications). Les opérations destructives (suppression de fichiers ou projets) sont isolées et nécessitent des permissions spécifiques, renforçant la sécurité.
Pour sécuriser l'accès, le serveur utilise un système de permissions granulaires (lecture, écriture, destructif) et privilégie l'authentification OAuth 2.1 en production, avec vérification des jetons JWT et validation des scopes. Une configuration statique est disponible pour les tests locaux. Le transport est stateless via HTTP (Streamable HTTP ou Server-Sent Events), sans stockage de session, et les métadonnées OAuth sont publiquement accessibles pour faciliter l'intégration des clients.
L'installation requiert PHP 8.2+ et Symfony 7.4 LTS, avec une configuration Docker simplifiée. En production, l'OAuth est recommandé, tandis que le mode statique convient au développement. Le projet est conçu pour éviter les risques liés à la diffusion de tokens complets et pour maintenir un contexte à jour des dépôts.