Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GITLAB_API_URLNoBase API URL of your GitLab CE/EE or cloud instance.https://gitlab.com/api/v4
GITLAB_READ_ONLYNoEnable Read-Only safety mode (`true`, `1`, `yes`). Filters out mutating tools and strictly blocks write/modify HTTP requests.false
GITLAB_PERSONAL_ACCESS_TOKENYesPersonal access token with `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

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_repositoriesC

Search for GitLab projects and repositories (optionally filtered by group)

get_projectB

Get comprehensive project metadata, description, default branch, and statistics

create_repositoryC

Create a new GitLab project/repository (supports groups/namespaces and empty repos)

update_projectC

Update project metadata (description, name, default branch, visibility, topics)

delete_projectB

Delete a project/repository (requires explicit name confirmation for safety)

get_file_contentsC

Read file or directory content from a project repository

create_or_update_fileC

Create or update a single file in a GitLab repository

push_filesB

Commit multiple files in a single atomic commit

fork_repositoryC

Fork a project into a user or group namespace

list_branchesB

List repository branches with commit details, default flag, and protected status

get_branchB

Get specific branch details, commit SHA, and protection rules

create_branchB

Create a new branch from a commit, tag, or branch

delete_branchA

Delete a branch from a project repository (blocks accidental deletion of default branch)

list_project_membersB

List project members and collaborators with access levels and roles

get_project_memberC

Get details for a specific project member by user ID or username

add_project_memberC

Add a user to a project with specified role/access level

update_project_memberC

Update a project member's access level role or expiration date

remove_project_memberC

Remove a user/collaborator from a project

list_project_variablesB

List CI/CD project variables with keys, types, protected/masked flags, and environment scopes

get_project_variableC

Get specific CI/CD variable details and value by key

create_project_variableC

Create a new CI/CD project variable (env_var or file)

update_project_variableC

Update an existing CI/CD project variable's value or configuration

delete_project_variableC

Delete a CI/CD project variable by key

list_issuesB

List and filter issues by state, milestone, label, assignee, or search with clean summaries

get_issueA

Get comprehensive details for a specific issue by its IID (#)

create_issueC

Create a new issue with milestone (by title or ID), labels, assignees, and due date

update_issueC

Update issue title, description, state (close/reopen), milestone, labels, or assignees

list_issue_notesC

List discussions, comments, and activity log on an issue

create_issue_noteC

Post a comment or progress/verification note to an issue

list_issue_linksC

List related, blocking, or blocked-by issue dependencies

create_issue_linkC

Create an issue dependency link (relates_to, blocks, is_blocked_by)

list_milestonesC

List project milestones (active, closed, all) with start and due dates

get_milestoneC

Get details for a specific milestone by ID

create_milestoneC

Create a project milestone with due dates and roadmap scope

update_milestoneC

Update milestone dates, title, description, or state (close/activate)

list_labelsC

List labels available in the project

create_labelC

Create a project label with color and description

list_pipelinesC

List CI/CD pipelines filtered by branch, tag, status, or commit SHA

get_pipelineB

Get detailed status, duration, and commit info for a pipeline

create_pipelineA

Trigger a new CI/CD pipeline execution for a branch or tag

list_pipeline_jobsB

List all jobs (build, test, lint, deploy) and their status in a pipeline

get_jobB

Get comprehensive details about a CI/CD job (duration, runner, failure reason, artifacts list)

get_job_traceA

Get the terminal output log of a build/test job (supports tailing to diagnose test failures)

get_job_artifact_fileC

Download and read a specific file from a job's build artifacts archive

get_pipeline_test_reportB

Get JUnit test report summary (total, passed, failed test suites and error details)

list_releasesC

List published project releases and version changelogs

get_releaseB

Get release details by tag name

create_releaseC

Publish a formal release with tag, description/changelog, and associated milestones

list_tagsC

List git tags in the repository

create_tagC

Create a git tag pointing to a branch or commit

list_merge_requestsC

List merge requests filtered by state, branches, milestone, or labels

get_merge_requestB

Get details and status of a merge request by IID (!)

create_merge_requestC

Create a merge request between branches with description and options

update_merge_requestC

Update MR title, description, state (close/reopen), target branch, milestone, or labels

get_merge_request_changesB

Inspect code diffs and modified files in an MR (supports token-saving summary, file filtering, and lockfile pruning)

list_merge_request_discussionsC

List inline code review discussions and threads on an MR (supports unresolved_only filter)

create_diff_discussionA

Post an inline code review comment on a specific line and file in an MR (resolves SHAs automatically)

reply_merge_request_discussionB

Post a reply comment into an existing MR code review discussion thread

update_merge_request_discussion_noteB

Update or edit the text of an existing review comment in an MR discussion thread

resolve_merge_request_discussionB

Resolve or unresolve a code review discussion thread on an MR

accept_merge_requestB

Merge an approved merge request into the target branch

create_merge_request_noteB

Post a general review comment or note on a merge request

list_wikisB

List all wiki pages in a GitLab project (slugs, titles, and formats)

get_wikiA

Get wiki page content, structured Table of Contents (toc_only), or a specific chapter/section by heading

create_wikiC

Create a new wiki page in a GitLab project

update_wikiB

Update an existing wiki page's content or title in a GitLab project

list_snippetsC

List code snippets in a GitLab project with visibility and author details

get_snippetB

Get code snippet details and raw file content by snippet ID

create_snippetC

Create a new code snippet in a GitLab project

update_snippetC

Update an existing code snippet's content, title, file name, or visibility

get_current_userA

Get the profile and identity of the authenticated user (username, ID, name, email)

list_my_groupsB

List groups the authenticated user is a member or owner of

get_groupB

Get comprehensive group details, metadata, visibility, and description by group ID or path

list_group_projectsC

List all projects and repositories belonging to a specific group or organization

list_my_projectsB

List projects the authenticated user participates in, owns, or has starred

list_commitsC

List commit history for a project, branch, or specific file path

get_commitB

Get commit details, author info, stats, changed file list, and selective file diffs

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.9/5.0

Scored across 77 tools

Disambiguation4/5

Most tools target distinct resource+action pairs, and descriptions clarify boundaries well (e.g., get_job vs get_job_trace vs get_job_artifact_file). However, the merge-request comment tools (create_diff_discussion, reply_merge_request_discussion, create_merge_request_note) and multiple project/member listing tools require careful reading, creating some misselection risk.

Naming Consistency4/5

Almost all tools follow a predictable snake_case verb_noun pattern (list_issues, get_project, create_branch, delete_project_variable). Minor deviations include create_or_update_file, push_files, accept_merge_request, and remove_project_member instead of delete_project_member, but the overall convention is clear.

Tool Count1/5

77 tools is an extreme count for an MCP server, far exceeding practical limits and imposing heavy selection burden on an agent. Even though GitLab is a broad platform, this surface likely needs consolidation into fewer, higher-level tools.

Completeness3/5

Core development workflows (issues, merge requests, pipelines, commits) are reasonably covered, but many resources lack full CRUD: labels have only list/create, tags only list/create, and wikis, snippets, releases, and milestones lack delete or full update operations. Group management and pipeline/job cancel/retry operations are also missing, creating dead ends for common administrative tasks.

Maintenance

ActivityMaintained
ResponsivenessNo issues