MCP.so
Sign In
Servers

GitLab MCP Server

@TheRealChrisThomas

Gitlab MCP Server

Overview

What is GitLab MCP Server?

A Model Context Protocol (MCP) server that wraps the GitLab API, enabling project management, file operations, issue and merge request management, and milestone tracking. It is for developers and teams using GitLab who want AI assistants (like Claude) to interact directly with their repositories, groups, and projects.

How to use GitLab MCP Server?

Install via npx @therealchristhomas/gitlab-mcp-server or globally with npm install -g @therealchristhomas/gitlab-mcp-server. Configure a GitLab Personal Access Token and set the environment variables GITLAB_PERSONAL_ACCESS_TOKEN and GITLAB_API_URL. Then add the server to your MCP client (Claude Desktop, Cursor, VSCode, Windsurf) using the appropriate configuration file (e.g., claude_desktop_config.json).

Key features of GitLab MCP Server

  • Automatic branch creation on file operations.
  • Comprehensive error handling with clear messages.
  • Batch operations for single and multiple files.
  • Project and group milestone management.
  • Issue and merge request creation, listing, and commenting.
  • Label management (create, update, delete).
  • Group operations including search and milestone management.

Use cases of GitLab MCP Server

  • Automate file creation and updates across multiple GitLab projects via AI assistants.
  • Track cross-project releases using group milestones that span multiple repositories.
  • Manage issues and merge requests with natural language commands from an MCP client.
  • Search for groups and projects, then create milestones or labels programmatically.
  • Fork repositories and create branches without leaving the conversation.

FAQ from GitLab MCP Server

What is the difference between group milestones and project milestones?

Group milestones span multiple projects within a group and are managed with dedicated tools (list_group_milestones, create_group_milestone), while project milestones are scoped to a single project and use tools like list_milestones, create_milestone.

How do I set up authentication for the GitLab MCP Server?

You need a GitLab Personal Access Token. Set it as the environment variable GITLAB_PERSONAL_ACCESS_TOKEN. Also set GITLAB_API_URL (defaults to https://gitlab.com/api/v4 if not provided).

What runtime or dependencies are required?

The server runs via Node.js and is distributed as an npm package. No additional runtime beyond Node.js is required.

Which GitLab operations are supported?

The server provides tools for file operations, repository management (search, create, fork, branch), issue management, merge request management, label management, milestone management (project and group), and group operations (search groups).

Is there a limit on how many files I can push at once?

The push_files tool accepts an array of files (each with file_path and content) in a single commit. The README does not specify a hard limit, but GitLab API limits apply.

Tags

More from Version Control