Advanced GitLab MCP server — 44 tools across 18 entity types with CQRS architecture, OAuth 2.1, and multiple transport modes.
{
"mcpServers": {
"gitlab": {
"command": "npx",
"args": ["-y", "@structured-world/gitlab-mcp"],
"env": {
"GITLAB_TOKEN": "your_gitlab_token",
"GITLAB_API_URL": "https://gitlab.com"
}
}
}
}Requirements: Node.js >= 24
- 44 tools across 18 entity types — projects, merge requests, pipelines, work items, wiki, and more
- CQRS architecture —
browse_*for queries,manage_*for commands - Multi-instance support — Connect to multiple GitLab instances with per-instance OAuth and rate limiting
- Multiple transports — stdio, SSE, StreamableHTTP
- OAuth 2.1 — Per-user authentication via Claude Custom Connector
- Read-only mode — Safe operation for production environments
- Auto-discovery — Detects GitLab config from git remotes
- Fine-grained control — Enable/disable tool groups, filter actions, customize descriptions
- Docker support —
ghcr.io/structured-world/gitlab-mcp:latest
Full documentation is available at gitlab-mcp.sw.foundation
| Section | Description |
|---|---|
| Installation | npm, Docker, VS Code, Codex |
| Configuration | Environment variables, feature flags |
| Multi-Instance | Connect to multiple GitLab instances |
| Tool Reference | All 44 tools with parameters |
| OAuth Setup | Team authentication with Claude |
| TLS/HTTPS | Production deployment with SSL |
| Customization | Tool descriptions, action filtering |
| CLI Tools | Browse and export tool documentation |
For the complete tool reference with parameters:
# View locally
yarn list-tools --detail
# Generate documentation
yarn list-tools --export --toc > docs/tools/api-reference.mdSee the Full API Reference for the auto-generated tool documentation.
# HTTP mode
docker run -e PORT=3002 -e GITLAB_TOKEN=your_token -p 3333:3002 \
ghcr.io/structured-world/gitlab-mcp:latest
# stdio mode
docker run -i --rm -e GITLAB_TOKEN=your_token \
ghcr.io/structured-world/gitlab-mcp:latest| Flag | Default | Tools Enabled |
|---|---|---|
USE_LABELS |
true |
Label management |
USE_MRS |
true |
Merge requests |
USE_FILES |
true |
File operations |
USE_VARIABLES |
true |
CI/CD variables |
USE_WORKITEMS |
true |
Issues, epics, tasks |
USE_WEBHOOKS |
true |
Webhook management |
USE_SNIPPETS |
true |
Code snippets |
USE_INTEGRATIONS |
true |
50+ integrations |
USE_GITLAB_WIKI |
true |
Wiki pages |
USE_MILESTONE |
true |
Milestones |
USE_PIPELINE |
true |
Pipelines & CI/CD |
USE_RELEASES |
true |
Release management |
USE_REFS |
true |
Branch & tag management |
USE_MEMBERS |
true |
Team members |
USE_SEARCH |
true |
Cross-project search |
USE_ITERATIONS |
true |
Iteration planning (sprints) |
See CONTRIBUTING.md for development setup, testing, and PR guidelines.
Apache License 2.0 — see LICENSE for details.
Based on zereight/gitlab-mcp (MIT). See LICENSE.MIT.