Gitlab MCP server
Manage projects, groups, branches, merge requests, and CI/CD pipelines
31 stars
Reviews
Write oneNobody has reviewed Gitlab yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Gitlab tools (53, 20 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
add_group_badgeAdds a badge to a group to display custom branding or status indicators. The badge will be visible on the group's profile page.
add_kubernetes_clusterRegister an existing Kubernetes cluster as an instance cluster in GitLab. This allows GitLab to deploy applications and manage resources on the cluster.
approve_access_requestApproves a pending access request for a user to join the project. Optionally specify the access level to grant; defaults to Developer role.
approve_group_access_requestApproves a pending access request for a user to join a group. The authenticated user must own the group to perform this action.
check_branch_existsVerify whether a specific branch exists in a project repository. Returns a successful response if the branch is found, otherwise returns a 404 error.
create_branchwrite actionCreate a new branch in a project from a specified commit SHA or existing branch. The new branch will be created with the given name and point to the specified reference.
create_instance_variablewrite actionCreate a new instance-level CI/CD variable that is available to all projects. Instance variables are useful for storing secrets and configuration values needed across your entire GitLab instance.
create_project_badgewrite actionAdds a new badge to a project. Badges are visual indicators that can link to external URLs and are displayed on the project page.
delete_alert_metric_imagewrite actionRemove a metric image associated with an alert in a project. This operation permanently deletes the specified metric image from the alert's collection.
delete_applicationwrite actionPermanently delete a specific application by its ID. This action cannot be undone.
delete_badgewrite actionRemoves a badge from a project. This operation permanently deletes the specified badge and its association with the project.
delete_branchwrite actionDelete a branch from a project repository. This operation permanently removes the specified branch.
delete_broadcast_messagewrite actionDelete a broadcast message by its ID. This operation permanently removes the specified broadcast message from the system.
delete_clusterwrite actionDelete an instance cluster from GitLab. This removes the cluster configuration but does not delete any resources within the connected Kubernetes cluster itself.
delete_instance_variablewrite actionDelete an instance-level CI/CD variable by its key. This removes the variable from the GitLab instance configuration.
delete_merged_brancheswrite actionDelete all branches that have been merged into the project's default branch. This operation permanently removes merged branches to clean up the repository.
deny_access_requestDenies an access request from a user for the specified project. This removes the user's pending access request and prevents them from gaining project access through this request.
deny_group_access_requestDenies an access request from a user to join a group. The access request is removed and the user is not granted group membership.
execute_manual_jobwrite actionExecute a manual job for a project. Optionally provide custom variables to override job defaults during execution.
get_admin_ci_variableRetrieve the details of a specific instance-level CI/CD variable by its key. This operation returns the variable's configuration and metadata.
get_branchRetrieve details for a specific branch in a repository. Returns branch information including commit details and protection status.
get_broadcast_messageRetrieve a specific broadcast message by its ID. Broadcast messages are system-wide announcements visible to all users.
get_bulk_importRetrieve details about a GitLab Migration bulk import job, including its status and progress information.
get_clusterRetrieve details for a single instance cluster by its ID. This operation requires GitLab 13.2 or later.
get_group_badgeRetrieves a specific badge belonging to a group. This allows you to fetch details about a badge that has been assigned to a group.
get_jobRetrieve details for a specific job within a project. Returns comprehensive job information including status, logs, and execution details.
get_migration_entityRetrieve detailed information about a specific entity within a GitLab Migration. This allows you to inspect the status and properties of individual migrated items.
get_project_badgeRetrieve a specific badge associated with a project. This allows you to fetch details about a project badge by its ID.
get_user_avatarRetrieve the avatar URL for a user based on their email address. Optionally specify a custom image size for the avatar.
list_access_requestsRetrieves a list of access requests for a project. Access requests allow users to request membership in a project.
list_alert_metric_imagesRetrieve metric images associated with a specific alert in a project. Metric images provide visual context for alert conditions and their impact.
list_clustersRetrieve a list of all instance clusters configured in GitLab. This operation provides an overview of cluster infrastructure available at the instance level.
list_group_access_requestsRetrieves a paginated list of pending access requests for a group. This allows group owners to review and manage user requests to join the group.
list_group_badgesRetrieves a paginated list of badges for a group that are viewable by the authenticated user. Introduced in GitLab 10.6.
list_instance_variablesRetrieve all instance-level CI/CD variables available across the GitLab instance. These variables are accessible to all projects and groups.
list_jobsRetrieve all jobs for a specified project, with optional filtering by job status. Use this to monitor job execution, track pipeline progress, or retrieve job details.
list_migration_entitiesRetrieve a list of entities from a GitLab Migration import job. Filter by status and paginate through results to monitor migration progress.
list_migration_entities_allRetrieve a list of all entities from GitLab Migrations. This operation supports pagination, sorting, and filtering by migration status to help track the progress of bulk import operations.
list_migrationsRetrieve a list of all GitLab Migrations with optional filtering and sorting. This feature was introduced in GitLab 14.1.
list_project_badgesRetrieves a paginated list of badges for a project that are visible to the authenticated user. This endpoint was introduced in GitLab 10.6.
list_repository_branchesRetrieve a list of branches from a project's repository. Supports pagination and sorting by branch name or last update time.
pause_batched_background_migrationPause an active batched background migration by its ID. The migration can be resumed later from where it was paused.
protect_branchProtect a branch by restricting push and merge permissions. Configure whether developers can push to or merge into the specified branch.
remove_group_badgewrite actionRemoves a badge from a group. This allows administrators to delete badges that are no longer needed or relevant to the group.
request_group_accesswrite actionSubmit an access request for the authenticated user to join a group. The group owner can then review and approve or deny the request.
request_project_accessRequest access to a project as the authenticated user. This allows users to formally request membership or elevated permissions for a project they don't currently have access to.
start_bulk_migrationInitiate a bulk migration of GitLab entities from a source instance to the destination. This operation supports migrating groups and projects with their nested resources between GitLab instances.
unprotect_branchwrite actionRemove protection from a branch in a project, allowing it to be modified or deleted. This operation reverses any branch protection rules that were previously applied.
update_alert_metric_imagewrite actionUpdate the metric image associated with an alert, including its display URL and descriptive text for reference.
update_clusterwrite actionUpdate an existing instance cluster configuration. Modify cluster settings such as name, connectivity status, environment scope, and management preferences.
update_group_badgewrite actionUpdates an existing badge for a group. Allows modification of the badge's name, image URL, and link URL.
update_project_badgewrite actionUpdates an existing badge for a project. Allows modification of the badge's name, image URL, and link URL.
upload_alert_metric_imagewrite actionUpload a metric image to an alert for visualization and documentation purposes. Optionally include a URL and description to provide context about the metric data.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan5 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 138 days ago8/15
- Maintainer identityregistry namespace matches repository owner7/10
How Gitlab compares
Against every graded Developer tools MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 80/100
- higher than 55% of 1,119 Developer tools servers
- Tools
- 53
- the typical Developer tools server has 7
- Tools that change things
- 38%
- typical: 5%. Fewer write tools means less an agent can break
- GitHub stars
- 31
- more than 90% of 855 Developer tools servers
What its tools let an agent do: 28 read · 6 create · 8 change · 9 delete · 2 run or deploy
Install Gitlab in Claude Code, Cursor or VS Code
claude mcp add gitlab -- uvx mcparmory-gitlab
What the publisher says
From the Gitlab repository's README, as published. We do not edit it. Read it on GitHub
MCP Armory Registry
Production-ready MCP servers for popular APIs, generated by MCP Blacksmith.
Servers · Install & Usage · Features · How it works · License
MCP servers that connect AI agents to real-world APIs. Each server is a standalone Python package — generated from the upstream OpenAPI spec using MCP Blacksmith and tested against the live API before release. Hosted on MCP Armory or run independently.
<!-- SERVERS:BEGIN -->
Servers
🧠 AI & Machine Learning   ElevenLabs · Linkup · Parallel · Perplexity AI · Ragie · Replicate
📊 Analytics   Ahrefs · Datadog · Google Analytics · Google Search Console · Linkly · Mixpanel · PostHog
⛓️ Blockchain & Crypto   Alchemy NFT
💼 CRM & Sales   Apollo
💬 Communication   Atlassian Confluence · Google Gmail · MailerSend · Mailtrap · Postmark · Resend · Slack
🗄️ Data & Databases   Enigma · Pinecone
🛠️ Developer Tools   AgentQL · Apify · Bitbucket · Bright Data · Browserbase · BuiltWith · Canvas · CircleCI · Codacy · Contentful Management · ConvertAPI · E2B · Firecrawl · GitHub · GitLab · LaunchDarkly · Postman · Scrapingant · Semrush AppCenter · Sentry
📄 Documents & Printing   PDF.co
🛒 E-commerce   Shopify Admin
💰 Finance   Alpha Vantage · Polygon · Ramp
👥 HR & Recruiting   BambooHR
☁️ Infrastructure   Globalping · Grafana · PagerDuty · Rootly · Runpod
⚖️ Legal & Compliance   NetLicensing
🗺️ Maps & Location   Google Maps Platform · IP2Location.io IP Geolocation · OpenCage Geocoding
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Gitlab: common questions
- Is Gitlab MCP server safe?
- Mostly: it is graded B (80/100). Read the Gitlab safety report
- How do I install Gitlab?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Gitlab need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Gitlab maintained?
- The last commit was 176 days ago (2026-05-12). The latest release is v1.0.3.
- What can I use instead of Gitlab?
- Servers from other publishers that do the same job: Gk CLI MCP server, walkerOS Flow MCP server and Gitwand MCP server.
- How does Gitlab compare with other Developer tools MCP servers?
- safety score 80/100 (higher than 55% of 1,119 Developer tools servers); tools 53 (the typical Developer tools server has 7); tools that change things 38% (typical: 5%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Gitlab
Same job from other publishers: the closest match first, then the best rated.
Gk CLIThe GitKraken MCP Server for managing repos, PRs, issues across GitHub, GitLab, Bitbucket and more.not reviewedEstablishedB
walkerOS FlowBuild, validate, simulate, and deploy walkerOS event pipelinesnot reviewedEstablishedB- GitwandAuto-resolves Git merge conflicts so agents only touch the complex hunks.not reviewedEstablishedA
- PalinodeInspectable, correctable project memory in git-versioned Markdown for AI agents.not reviewedEstablishedC
- KindexPersistent knowledge graph and MCP server for AI workflows with git-tracked project context.not reviewedEstablishedA