What it does
The GitLab MCP server exposes GitLab operations through multiple transports: stdio for local MCP clients, SSE and Streamable HTTP for remote deployments. It provides tools for managing projects, merge requests, issues, pipelines, wiki pages, releases, tags, labels, and milestones. Supports both gitlab.com and self-hosted GitLab instances.
Who it's for
Engineers integrating GitLab workflows into Claude Code, Cursor, VS Code, or other MCP-capable editors. Teams automating merge request reviews, issue management, or pipeline monitoring through AI assistants. DevOps teams running self-hosted GitLab.
Common use cases
- Query GitLab projects, merge requests, and issues from Claude Code
- Retrieve and browse wiki documentation and repository files through an AI client
- Manage pipelines and releases via AI-assisted operations
- Automate GitLab workflows with OAuth or personal access token authentication
- Route GitLab API calls through a custom or self-hosted instance
Setup pitfalls
- The server detected 136 secrets in code; handle credentials (PAT, OAuth tokens) carefully — store in environment variables or secure vaults, never commit to version control
- Multiple authentication methods (PAT, OAuth2 local, MCP OAuth proxy, remote authorization) — choose one per deployment type; local desktop use differs from server deployments
- Some MCP clients don't pass environment variables correctly; use CLI arguments (
--token,--api-url) instead - Requires dynamic API URL routing for multi-instance deployments; see the dynamic API URL documentation for connection pooling details