GitLab MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GITLAB_URL | No | Your GitLab instance URL | https://gitlab.com |
| GITLAB_PROJECT_ID | Yes | Your GitLab project ID (numeric identifier) | |
| GITLAB_ACCESS_TOKEN | Yes | Your GitLab access token with read_api scope |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_merge_requestsC | List merge requests for the GitLab project |
| get_merge_request_reviewsC | Get reviews and discussions for a specific merge request |
| get_merge_request_detailsC | Get detailed information about a specific merge request |
| get_merge_request_pipelineA | Get the last pipeline data for a specific merge request, including all jobs and their statuses. Returns job IDs that can be used with get_job_log to fetch detailed output. |
| get_merge_request_test_reportA | Get structured test report for a merge request with specific test failures, error messages, and stack traces. Shows the same test data visible on the GitLab MR page. Best for debugging test failures. |
| get_pipeline_test_summaryA | Get test summary for a merge request - a lightweight overview showing pass/fail counts per test suite. Faster than full test report. Great for quick status checks. |
| get_job_logA | Get the trace/log output for a specific pipeline job. Perfect for debugging failed tests and understanding CI/CD failures. |
| get_branch_merge_requestsB | Get all merge requests for a specific branch |
| reply_to_review_commentC | Reply to a specific discussion thread in a merge request review |
| create_review_commentC | Create a new discussion thread in a merge request review |
| resolve_review_discussionB | Resolve or unresolve a discussion thread in a merge request review |
| get_commit_discussionsC | Get discussions and comments on commits within a specific merge request |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Most tools have distinct purposes, but some overlap exists: get_merge_request_reviews and get_merge_request_details both provide MR information, and get_merge_request_test_report and get_pipeline_test_summary both handle test data, though descriptions clarify their differences (full report vs. summary).
All tools follow a consistent verb_noun pattern with snake_case, such as get_merge_request_details and create_review_comment. This predictability makes it easy for agents to understand and use the toolset.
With 12 tools, the server is well-scoped for GitLab merge request and pipeline management. Each tool serves a specific function, covering review discussions, MR details, pipelines, and test reports without being overwhelming.
The toolset covers key aspects of merge requests, reviews, pipelines, and tests, but lacks broader GitLab operations like repository management or issue tracking. Within its focused domain, it provides good lifecycle coverage with minor gaps.