Sign inSign up

mcp/gitlab

Verified Publisher

By mcp

•Updated over 1 year ago

MCP Server for the GitLab API, enabling project management, file operations, and more.

Image
Machine learning & AI
25

50K+

mcp/gitlab repository overview

⁠GitLab (Archived) MCP Server

MCP Server for the GitLab API, enabling project management, file operations, and more.

What is an MCP Server?⁠

⁠MCP Info

⁠Image Building Info

AttributeDetails
Dockerfilehttps://github.com/modelcontextprotocol/servers/blob/b4ee623039a6c60053ce67269701ad9e95073306/src/gitlab/Dockerfile⁠
Commitb4ee623039a6c60053ce67269701ad9e95073306
Docker Image built byDocker Inc.
Docker Scout Health ScoreDocker Scout Health Score
Verify SignatureCOSIGN_REPOSITORY=mcp/signatures cosign verify mcp/gitlab --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub
LicenceMIT License

⁠Available Tools (9)

Tools provided by this ServerShort Description
create_branchCreate a new branch in a GitLab project
create_issueCreate a new issue in a GitLab project
create_merge_requestCreate a new merge request in a GitLab project
create_or_update_fileCreate or update a single file in a GitLab project
create_repositoryCreate a new GitLab project
fork_repositoryFork a GitLab project to your account or specified namespace
get_file_contentsGet the contents of a file or directory from a GitLab project
push_filesPush multiple files to a GitLab project in a single commit
search_repositoriesSearch for GitLab projects

⁠Tools Details

⁠Tool: create_branch

Create a new branch in a GitLab project

ParametersTypeDescription
branchstringName for the new branch
project_idstringProject ID or URL-encoded path
refstring optionalSource branch/commit for new branch

⁠Tool: create_issue

Create a new issue in a GitLab project

ParametersTypeDescription
project_idstringProject ID or URL-encoded path
titlestringIssue title
assignee_idsarray optionalArray of user IDs to assign
descriptionstring optionalIssue description
labelsarray optionalArray of label names
milestone_idnumber optionalMilestone ID to assign

⁠Tool: create_merge_request

Create a new merge request in a GitLab project

ParametersTypeDescription
project_idstringProject ID or URL-encoded path
source_branchstringBranch containing changes
target_branchstringBranch to merge into
titlestringMerge request title
allow_collaborationboolean optionalAllow commits from upstream members
descriptionstring optionalMerge request description
draftboolean optionalCreate as draft merge request

⁠Tool: create_or_update_file

Create or update a single file in a GitLab project

ParametersTypeDescription
branchstringBranch to create/update the file in
commit_messagestringCommit message
contentstringContent of the file
file_pathstringPath where to create/update the file
project_idstringProject ID or URL-encoded path
previous_pathstring optionalPath of the file to move/rename

⁠Tool: create_repository

Create a new GitLab project

ParametersTypeDescription
namestringRepository name
descriptionstring optionalRepository description
initialize_with_readmeboolean optionalInitialize with README.md
visibilitystring optionalRepository visibility level

⁠Tool: fork_repository

Fork a GitLab project to your account or specified namespace

ParametersTypeDescription
project_idstringProject ID or URL-encoded path
namespacestring optionalNamespace to fork to (full path)

⁠Tool: get_file_contents

Get the contents of a file or directory from a GitLab project

ParametersTypeDescription
file_pathstringPath to the file or directory
project_idstringProject ID or URL-encoded path
refstring optionalBranch/tag/commit to get contents from

⁠Tool: push_files

Push multiple files to a GitLab project in a single commit

ParametersTypeDescription
branchstringBranch to push to
commit_messagestringCommit message
filesarrayArray of files to push
project_idstringProject ID or URL-encoded path

⁠Tool: search_repositories

Search for GitLab projects

ParametersTypeDescription
searchstringSearch query
pagenumber optionalPage number for pagination (default: 1)
per_pagenumber optionalNumber of results per page (default: 20)

⁠Use this MCP Server

{
  "mcpServers": {
    "gitlab": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITLAB_API_URL",
        "-e",
        "GITLAB_PERSONAL_ACCESS_TOKEN",
        "mcp/gitlab"
      ],
      "env": {
        "GITLAB_API_URL": "https://gitlab.com/api/v4",
        "GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?⁠

Install from MCP:Hub

Tag summary

Content type

Image

Digest

sha256:a1b8571a2…

Size

57.9 MB

Last updated

over 1 year ago

docker pull mcp/gitlab

This week's pulls

Pulls:

942

Sep 28 to Oct 4