home / mcp / gitlab mcp server
gitlab mcp
Configuration
View docs{
"mcpServers": {
"harshmaur-gitlab-mcp": {
"command": "npx",
"args": [
"-y",
"@zereight/mcp-gitlab"
],
"env": {
"USE_PIPELINE": "false",
"USE_MILESTONE": "false",
"GITLAB_API_URL": "your_gitlab_api_url",
"USE_GITLAB_WIKI": "false",
"GITLAB_READ_ONLY_MODE": "false",
"GITLAB_PERSONAL_ACCESS_TOKEN": "your_gitlab_token"
}
}
}
}You can run and connect to the GitLab MCP Server to access GitLab data and actions from MCP clients. It exposes a rich set of GitLab operations through standard MCP methods, with options to run locally or connect remotely depending on your deployment and security needs.
You connect to the GitLab MCP Server from your MCP client by choosing one of the available connection methods. If you run it locally, you can start a stdio server that listens for requests from the client. If you prefer a remote endpoint, you can connect to a server that exposes an HTTP/SSE endpoint.
Prerequisites: you need Node.js and/or Docker installed on your machine, plus network access to your GitLab instance if you enable remote access.
Option A: Run via npx (stdio) locally
{
"mcpServers": {
"GitLab communication server": {
"command": "npx",
"args": ["-y", "@zereight/mcp-gitlab"],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "your_gitlab_token",
"GITLAB_API_URL": "your_gitlab_api_url",
"GITLAB_READ_ONLY_MODE": "false",
"USE_GITLAB_WIKI": "false",
"USE_MILESTONE": "false",
"USE_PIPELINE": "false"
}
}
}
}Use Docker to run the MCP server in a container and connect to it locally.
{
"mcpServers": {
"GitLab communication server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITLAB_PERSONAL_ACCESS_TOKEN",
"-e",
"GITLAB_API_URL",
"-e",
"GITLAB_READ_ONLY_MODE",
"-e",
"USE_GITLAB_WIKI",
"-e",
"USE_MILESTONE",
"-e",
"USE_PIPELINE",
"iwakitakuma/gitlab-mcp"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "your_gitlab_token",
"GITLAB_API_URL": "https://gitlab.com/api/v4",
"GITLAB_READ_ONLY_MODE": "false",
"USE_GITLAB_WIKI": "true",
"USE_MILESTONE": "true",
"USE_PIPELINE": "true"
}
}
}
}Run an SSE-enabled server locally and expose its URL for the MCP client to connect.
{
"mcpServers": {
"GitLab communication server": {
"url": "http://localhost:3333/sse"
}
}
}Create or update a single file in a GitLab project
Search for GitLab projects
Create a new GitLab project
Get the contents of a file or directory from a GitLab project
Push multiple files to a GitLab project in a single commit
Create a new issue in a GitLab project
Create a new merge request in a GitLab project
Fork a GitLab project to your account or specified namespace
Create a new branch in a GitLab project
Get details of a merge request
Get the changes/diffs of a merge request
Get the changes/diffs between two branches or commits in a GitLab project
Update a merge request
Create a new note to an issue or merge request
Create a new thread on a merge request
List discussion items for a merge request
Modify an existing merge request thread note
Add a new note to an existing merge request thread
Modify an existing issue thread note
Add a new note to an existing issue thread
List issues in a GitLab project with filtering options
Get details of a specific issue in a GitLab project
Update an issue in a GitLab project
Delete an issue from a GitLab project
List all issue links for a specific issue
List discussions for an issue in a GitLab project
Get a specific issue link
Create an issue link between two issues
Delete an issue link
List all namespaces available to the current user
Get details of a namespace by ID or path
Verify if a namespace path exists
Get details of a specific project
List projects accessible by the current user
List labels for a project
Get a single label from a project
Create a new label in a project
Update an existing label in a project
Delete a label from a project
List projects in a GitLab group with filtering options
List wiki pages in a GitLab project
Get details of a specific wiki page
Create a new wiki page in a GitLab project
Update an existing wiki page in a GitLab project
Delete a wiki page from a GitLab project
Get the repository tree for a GitLab project
List pipelines in a GitLab project with filtering options
Get details of a specific pipeline in a GitLab project
List all jobs in a specific pipeline
Get details of a GitLab pipeline job number
Get the output/trace of a GitLab pipeline job number
Create a new pipeline for a branch or tag
Retry a failed or canceled pipeline
Cancel a running pipeline
List merge requests in a GitLab project with filtering options
List milestones in a GitLab project with filtering options
Get details of a specific milestone
Create a new milestone in a GitLab project
Edit an existing milestone in a GitLab project
Delete a milestone from a GitLab project
Get issues associated with a specific milestone
Get merge requests associated with a specific milestone
Promote a milestone to the next stage
Get burndown events for a specific milestone
Get GitLab user details by usernames