GitLab

Provides GitLab API access and actions via MCP for projects, issues, CI/CD, and repositories.
  • python

0

GitHub Stars

python

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "skmprb-gitlab-clone-mcp-server": {
      "command": "gitlab-mcp",
      "args": [
        "stdio"
      ],
      "env": {
        "GITLAB_URL": "https://gitlab.com",
        "GITLAB_TOKEN": "YOUR_TOKEN"
      }
    }
  }
}

You can run a focused MCP server that speaks GitLab’s API to Claude Desktop and other MCP clients. It lets you manage projects, issues, CI/CD, and repository operations through natural language commands, with zero-config initial setup and flexible transport options.

How to use

Launch the MCP server locally using the standard input/output (stdio) transport and connect your MCP client to it. Once running, you can ask for high-level GitLab actions like creating projects, listing repositories, viewing pipelines, or managing issues. You control GitLab directly from conversational prompts, and the server translates your requests into GitLab API calls.

How to install

Prerequisites you need on your machine are a supported runtime for the MCP tool you choose to use (for this server, a Python-based setup is available) and the MCP runner you will use to host the server. You will also need a GitLab Personal Access Token with API scopes.

Step 1: Install the MCP server runner using the recommended installer.

Step 2: Start the server using the stdio transport command.

Step 3: Provide authentication details so the server can access your GitLab instance.

Configuration and setup notes

Configure the server connection in your MCP client to point at the stdio-based server command. If you plan to use a remote HTTP transport, you would provide the HTTP URL for your MCP endpoint and include the access token in the request headers.

Security and tokens

Store your GitLab Personal Access Token securely as an environment variable or in a secure vault. Do not hard-code tokens in scripts or configuration files. The token should have at least api, read_repository, write_repository, and read_user scopes for full functionality.

Troubleshooting tips

If you encounter authentication errors, verify that your GITLAB_TOKEN is valid and has the required scopes. If the MCP server cannot reach GitLab, check the GITLAB_URL and network connectivity. Ensure you are using the stdio transport command or the correct HTTP endpoint if you switch transports.

Usage examples

Examples of what you can accomplish with natural language prompts include creating a new private project named “microservice-api,” listing all repositories in a group, or triggering a pipeline for a project.

Available tools

create_project

Create new GitLab projects with custom settings

delete_project

Permanently delete GitLab projects

update_project

Modify project name, description, or visibility

fork_project

Fork projects to a different namespace

archive_project

Archive projects for long-term storage

unarchive_project

Restore archived projects

list_projects

List accessible projects with filters

search_projects

Search projects by name or keywords

get_project_milestones

View project milestones and deadlines

get_project_labels

List project labels and colors

list_project_hooks

View configured webhooks

get_current_user

Get current user information and permissions

get_project_issues

List issues with state filtering

create_issue

Create new issues with descriptions

update_issue

Modify issue title, description, or state

close_issue

Close specific issues

get_merge_requests

List merge requests by state

create_merge_request

Create new merge requests

merge_merge_request

Merge approved merge requests

create_file

Create new files with content

update_file

Modify existing file content

delete_file

Remove files from repository

get_file_content

Read file contents

get_repository_files

Browse directory structures

get_project_branches

List repository branches

create_branch

Create new branches from any reference

delete_branch

Remove branches safely

get_commits

View commit history

create_commit

Create commits with multiple file changes

compare_branches

Compare differences between branches

revert_commit

Revert specific commits

cherry_pick_commit

Cherry-pick commits between branches

get_repository_tags

List repository tags

create_tag

Create release tags

delete_tag

Remove tags

clone_repository

Clone a single repository locally

clone_group_repositories

Batch clone all group repositories

get_pipelines

Monitor pipeline status

get_pipeline_jobs

View individual pipeline job details

trigger_pipeline

Start new pipeline runs

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational