gitlab-mcp
local MCP servergitlab-mcp is a local MCP server: GitLab MCP server for projects, merge requests, issues, pipelines, wiki, releases, and more. Install it from npm as @zereight/mcp-gitlab.
Installation
Terminal
claude mcp add io-github-zereight-gitlab-mcp -e GITLAB_PERSONAL_ACCESS_TOKEN=... -e GITLAB_JOB_TOKEN=... -e GITLAB_AUTH_COOKIE_PATH=... -e GITLAB_API_URL=... -e GITLAB_ALLOWED_PROJECT_IDS=... -e GITLAB_READ_ONLY_MODE=... -e USE_GITLAB_WIKI=... -e GITLAB_TOOLSETS=... -e GITLAB_TOOLS=... -e GITLAB_DENIED_TOOLS_REGEX=... -e GITLAB_TOOL_POLICY_APPROVE=... -e GITLAB_TOOL_POLICY_HIDDEN=... -e NODE_TLS_REJECT_UNAUTHORIZED=... -e GITLAB_CA_CERT_PATH=... -e GITLAB_MASKING_ENABLED=... -e GITLAB_MASKING_CONFIG=... -e GITLAB_MASKING_POLICY_FILE=... -e GITLAB_MASKING_WORKSPACE_DIR=... -- npx -y @zereight/mcp-gitlab
Run in your project folder. Add --scope user to use it everywhere.
Claude Desktop, Cursor & other clients
Add to claude_desktop_config.json or .cursor/mcp.json.
{
"mcpServers": {
"io-github-zereight-gitlab-mcp": {
"command": "npx",
"args": [
"-y",
"@zereight/mcp-gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "...",
"GITLAB_JOB_TOKEN": "...",
"GITLAB_AUTH_COOKIE_PATH": "...",
"GITLAB_API_URL": "...",
"GITLAB_ALLOWED_PROJECT_IDS": "...",
"GITLAB_READ_ONLY_MODE": "...",
"USE_GITLAB_WIKI": "...",
"GITLAB_TOOLSETS": "...",
"GITLAB_TOOLS": "...",
"GITLAB_DENIED_TOOLS_REGEX": "...",
"GITLAB_TOOL_POLICY_APPROVE": "...",
"GITLAB_TOOL_POLICY_HIDDEN": "...",
"NODE_TLS_REJECT_UNAUTHORIZED": "...",
"GITLAB_CA_CERT_PATH": "...",
"GITLAB_MASKING_ENABLED": "...",
"GITLAB_MASKING_CONFIG": "...",
"GITLAB_MASKING_POLICY_FILE": "...",
"GITLAB_MASKING_WORKSPACE_DIR": "..."
}
}
}
}Fill in the environment variables with your own credentials.
What you need
- Runtime: Node.js 18+ (runs with npx).
- MCP client: Claude Code, Codex, Antigravity, Claude Desktop, Cursor or any other client that speaks MCP over stdio.
- Environment variables:
GITLAB_PERSONAL_ACCESS_TOKEN,GITLAB_JOB_TOKEN,GITLAB_AUTH_COOKIE_PATH,GITLAB_API_URL,GITLAB_ALLOWED_PROJECT_IDS,GITLAB_READ_ONLY_MODE,USE_GITLAB_WIKI,GITLAB_TOOLSETS,GITLAB_TOOLS,GITLAB_DENIED_TOOLS_REGEX,GITLAB_TOOL_POLICY_APPROVE,GITLAB_TOOL_POLICY_HIDDEN,NODE_TLS_REJECT_UNAUTHORIZED,GITLAB_CA_CERT_PATH,GITLAB_MASKING_ENABLED,GITLAB_MASKING_CONFIG,GITLAB_MASKING_POLICY_FILE,GITLAB_MASKING_WORKSPACE_DIR
Summary
GitLab MCP server for projects, merge requests, issues, pipelines, wiki, releases, and more.
gitlab-mcp vs similar servers
| Server | Stars | Type | API key | Runtime |
|---|---|---|---|---|
| gitlab-mcp | 2,007 | Local | Yes | npm |
| gitlab | 31 | Local | No | pypi |
| gk-cli | 462 | Local | No | npm |
| kaneo | 9,252 | Local | Yes | npm |
| DBHub | 3,574 | Local | Yes | npm |
Questions
It reads 18 environment variables: GITLAB_PERSONAL_ACCESS_TOKEN, GITLAB_JOB_TOKEN, GITLAB_AUTH_COOKIE_PATH, GITLAB_API_URL, GITLAB_ALLOWED_PROJECT_IDS, GITLAB_READ_ONLY_MODE, USE_GITLAB_WIKI, GITLAB_TOOLSETS, GITLAB_TOOLS, GITLAB_DENIED_TOOLS_REGEX, GITLAB_TOOL_POLICY_APPROVE, GITLAB_TOOL_POLICY_HIDDEN, NODE_TLS_REJECT_UNAUTHORIZED, GITLAB_CA_CERT_PATH, GITLAB_MASKING_ENABLED, GITLAB_MASKING_CONFIG, GITLAB_MASKING_POLICY_FILE, GITLAB_MASKING_WORKSPACE_DIR. Set them in your MCP config before starting the server.
Node.js 18+ (runs with npx), plus an MCP client such as Claude Code, Codex, Claude Desktop or Cursor.
gitlab-mcp is a local MCP server distributed as the npm package @zereight/mcp-gitlab.
Run: claude mcp add io-github-zereight-gitlab-mcp -e GITLAB_PERSONAL_ACCESS_TOKEN=... -e GITLAB_JOB_TOKEN=... -e GITLAB_AUTH_COOKIE_PATH=... -e GITLAB_API_URL=... -e GITLAB_ALLOWED_PROJECT_IDS=... -e GITLAB_READ_ONLY_MODE=... -e USE_GITLAB_WIKI=... -e GITLAB_TOOLSETS=... -e GITLAB_TOOLS=... -e GITLAB_DENIED_TOOLS_REGEX=... -e GITLAB_TOOL_POLICY_APPROVE=... -e GITLAB_TOOL_POLICY_HIDDEN=... -e NODE_TLS_REJECT_UNAUTHORIZED=... -e GITLAB_CA_CERT_PATH=... -e GITLAB_MASKING_ENABLED=... -e GITLAB_MASKING_CONFIG=... -e GITLAB_MASKING_POLICY_FILE=... -e GITLAB_MASKING_WORKSPACE_DIR=... -- npx -y @zereight/mcp-gitlab
Run: codex mcp add io-github-zereight-gitlab-mcp --env GITLAB_PERSONAL_ACCESS_TOKEN=... --env GITLAB_JOB_TOKEN=... --env GITLAB_AUTH_COOKIE_PATH=... --env GITLAB_API_URL=... --env GITLAB_ALLOWED_PROJECT_IDS=... --env GITLAB_READ_ONLY_MODE=... --env USE_GITLAB_WIKI=... --env GITLAB_TOOLSETS=... --env GITLAB_TOOLS=... --env GITLAB_DENIED_TOOLS_REGEX=... --env GITLAB_TOOL_POLICY_APPROVE=... --env GITLAB_TOOL_POLICY_HIDDEN=... --env NODE_TLS_REJECT_UNAUTHORIZED=... --env GITLAB_CA_CERT_PATH=... --env GITLAB_MASKING_ENABLED=... --env GITLAB_MASKING_CONFIG=... --env GITLAB_MASKING_POLICY_FILE=... --env GITLAB_MASKING_WORKSPACE_DIR=... -- npx -y @zereight/mcp-gitlab
Similar MCP servers
NameStars
- gitlabcom.mcparmory/gitlab31
- gk-clicom.gitkraken/gk-cli462
- kaneoio.github.usekaneo/kaneo9,252
- DBHubio.github.bytebase/dbhub3,574
- Neoncom.neon/mcp649
- touchdesigner-mcp-serverio.github.8beeeaaat/touchdesigner-mcp-server552
- mcp-ssh-managerio.github.bvisible/mcp-ssh-manager493
- Nim Language Serverio.github.nim-lang/nimlangserver311