Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

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
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_runtime_infoA

Report this installed MCP runtime's versions, deployment mode, and deterministic registered-tool inventory fingerprint without exposing credentials or general environment values.

get_gitlab_capabilitiesA

Discover the connected GitLab instance, identity, token metadata, API support, permissions, licensing, and configuration evidence using read-only probes.

get_current_userA

Return the profile and identity associated with the connected GitLab token.

list_groupsC

List groups visible to the connected user, including membership, ownership, access-level, and search filters.

get_groupB

Get one GitLab group or namespace with visibility, project, sharing, and permission metadata.

list_group_projectsA

List projects in a GitLab group with subgroup, membership, visibility, archive, search, and ordering filters.

list_group_membersA

List direct, inherited, and invited members of a GitLab group.

get_group_memberA

Get one direct or inherited group member and their effective access level.

search_gitlabA

Search globally, within a group, or within a project. Supported scopes include projects, issues, merge requests, users, commits, blobs, notes, milestones, and work items; availability depends on GitLab tier and search configuration.

search_projectsA

Search accessible GitLab projects by name, path, or description. Use this to resolve an ambiguous project before other calls.

get_projectA

Get repository, namespace, default branch, visibility, permissions, and feature metadata for one GitLab project.

list_project_membersA

List direct and inherited project members, optionally filtering by username or name.

list_project_labelsA

List labels available in a GitLab project.

get_project_memberA

Get one direct or inherited project member and their effective access level.

list_global_issuesB

List recent issues across all projects visible to the connected user, with account-wide triage filters.

list_issuesB

List or search issues in one GitLab project with common triage filters.

get_issueA

Get one GitLab issue with labels, assignees, milestone, task status, and links.

create_issueA

Create a GitLab issue with optional description, assignees, labels, milestone, due date, and confidentiality.

update_issueC

Update issue metadata, assignees, labels, milestone, confidentiality, or open/closed state.

list_issue_notesA

List user and system notes on one GitLab issue in chronological or reverse order.

create_issue_noteA

Add a top-level comment to a GitLab issue as the authenticated user.

update_issue_noteB

Replace the body of an existing GitLab issue comment.

delete_issue_noteA

Permanently delete a GitLab issue comment.

list_issue_reactionsA

List emoji reactions on a GitLab issue or one of its comments.

add_issue_reactionA

Add an emoji reaction to a GitLab issue or to one of its comments.

remove_issue_reactionA

Remove an emoji reaction from a GitLab issue or issue comment by award ID.

list_merge_requestsC

List or search merge requests in one GitLab project with common review and triage filters.

get_merge_requestA

Get merge request metadata, branches, participants, mergeability, pipeline, approvals, and discussion status.

create_merge_requestB

Open a GitLab merge request from an existing source branch. Draft merge requests are supported.

update_merge_requestB

Update merge request metadata, branches, assignees, reviewers, labels, draft/ready title state, or open/closed state.

merge_merge_requestA

Merge a GitLab merge request now or when its pipeline succeeds. This changes the target branch.

rebase_merge_requestA

Enqueue a GitLab rebase for the merge request source branch. Use get_merge_request with include_rebase_in_progress to poll the result. Only available when the source branch is a fast-forward of the target.

get_merge_request_approvalsA

Get approval rules, approvals received, approvals still required, and eligible approvers.

approve_merge_requestB

Submit the authenticated user's approval for a GitLab merge request.

unapprove_merge_requestA

Remove the authenticated user's approval from a GitLab merge request.

list_merge_request_diffsA

Return changed files and patch hunks for a GitLab merge request.

get_merge_request_file_patchA

Find one exact changed path across paginated merge-request diffs and return its patch metadata and hunks.

list_merge_request_commitsB

List commits contained in a GitLab merge request.

list_merge_request_pipelinesA

List pipelines associated with a GitLab merge request.

list_merge_request_discussionsA

List complete GitLab merge request discussion threads, including resolution state and diff positions.

create_merge_request_discussionA

Create a top-level or inline review thread on a GitLab merge request. Inline comments require the latest diff version SHAs and file position.

reply_merge_request_discussionB

Reply to an existing GitLab merge request review thread.

resolve_merge_request_discussionC

Resolve or reopen a GitLab merge request review thread.

update_merge_request_noteA

Replace the body of a note or reply inside a GitLab merge request discussion.

delete_merge_request_noteA

Permanently delete a note or reply from a GitLab merge request discussion.

apply_merge_request_suggestionA

Apply a single GitLab code suggestion by its suggestion ID. Performs preflight validation: confirms the suggestion belongs to the specified project/MR, is still applicable, has not already been applied, and that the MR head SHA matches the caller's expected value. Uses the Suggestions API at PUT /suggestions/:id/apply. Returns the suggestion state including applicable and applied flags. An explicit acknowledgement is required to apply. Note: GitLab's apply endpoint does not accept an expected-head parameter, so a TOCTOU race is possible between preflight and mutation; the server remains authoritative at mutation time.

batch_apply_merge_request_suggestionsA

Apply multiple GitLab code suggestions in a single commit using the batch Suggestions API at PUT /suggestions/batch_apply. Performs preflight validation on every suggestion before any mutation: confirms each belongs to the specified project/MR, is still applicable, has not already been applied, and that the MR head SHA matches the caller's expected value. If any suggestion is invalid the entire batch is rejected before calling GitLab's batch-apply endpoint. Returns an array of suggestion states. An explicit acknowledgement is required. Note: GitLab's batch-apply endpoint does not accept an expected-head parameter, so a TOCTOU race is possible between preflight and mutation; the server remains authoritative at mutation time.

list_merge_request_reactionsA

List emoji reactions on a GitLab merge request or one of its notes.

add_merge_request_reactionA

Add an emoji reaction to a GitLab merge request or one of its notes.

remove_merge_request_reactionA

Remove an emoji reaction from a GitLab merge request or note by award ID.

list_repository_treeA

List files and directories in a GitLab repository at a branch, tag, or commit.

search_codeA

Search blobs in a specific GitLab project. Use plain code terms, filenames, symbols, or error text.

get_blobA

Fetch repository blob content by Git object SHA. UTF-8 text is decoded by default; binary content remains bounded base64.

get_fileA

Fetch one repository file at a ref. Text is decoded from base64 by default; binary or unusually large content stays base64.

fetch_gitlab_file_urlA

Fetch bounded UTF-8 repository-file content from a same-instance GitLab blob, raw, or repository-files API URL.

download_gitlab_attachmentA

Download a same-instance GitLab issue or merge-request upload as bounded base64 data. Only GitLab upload paths are accepted.

create_fileA

Create a new UTF-8 or base64 repository file and commit it to an existing branch.

update_fileA

Replace a repository file and commit the change. Supply last_commit_id to prevent overwriting a concurrent edit.

delete_fileA

Delete a repository file and commit the deletion. Supply last_commit_id to guard against concurrent edits.

list_branchesB

List or search branches in a GitLab project.

create_branchA

Create a branch from an existing branch, tag, or commit SHA.

delete_branchA

Delete a GitLab repository branch. Protected branches cannot be deleted through this operation.

list_commitsA

List commits for a project, optionally scoped to a ref, path, or time range.

get_commitA

Fetch a GitLab commit and its optional diff statistics.

compare_refsA

Compare two branches, tags, or commits and return commits plus per-file diffs.

list_commit_diffsA

Return the files and patch hunks changed by one GitLab commit.

create_commitA

Create one GitLab commit containing non-destructive atomic create, update, move, or chmod actions. update and move require a per-file last_commit_id to guard against concurrent overwrites. Do not supply both start_branch and start_sha; use start_branch for new-branch creation only.

create_destructive_commitA

Create one GitLab commit that can delete files or force a branch update. For ordinary updates, the branch tip must match start_sha before the commit is submitted; forced updates use start_sha as GitLab's explicit replacement parent. Delete actions also require last_commit_id.

list_pipelinesA

List project pipelines by status, ref, source, user, or update time.

create_pipelineA

Create a GitLab pipeline for a ref with bounded structured inputs or variables. Variable values are sent only to GitLab and are omitted from the normalized response. Input values may be strings, numbers, booleans, arrays, or objects — bounded by depth, length, and size limits.

get_latest_pipelineA

Get the latest pipeline for a project ref.

get_pipeline_test_reportB

Get bounded test-suite and test-case results for one pipeline.

get_pipeline_test_report_summaryA

Get aggregate test-report counts and pass/fail/error totals for one pipeline.

list_pipeline_bridgesA

List bridge jobs for a pipeline to discover downstream child or multi-project pipelines.

get_pipelineA

Get one pipeline with status, duration, coverage, ref, user, and timestamps.

list_pipeline_jobsB

List jobs in a GitLab pipeline, including stages, status, runner, artifacts, and failure reason.

get_jobA

Get detailed status, runner, artifacts, timestamps, commit, and pipeline information for one CI job.

list_project_jobsC

List recent jobs across all pipelines in a GitLab project.

get_job_logA

Retrieve the plain-text trace for a GitLab CI job, up to the configured response safety limit.

get_job_artifact_fileA

Download one file from a GitLab job artifact archive as base64, subject to a strict size limit.

get_job_artifact_archiveA

Download a GitLab job's complete artifact ZIP archive as bounded base64 data.

retry_pipelineB

Retry failed or canceled jobs in a GitLab pipeline.

cancel_pipelineC

Cancel all cancelable jobs in a running GitLab pipeline.

retry_jobB

Retry a failed or canceled GitLab CI job.

cancel_jobA

Cancel a pending or running GitLab CI job.

play_jobA

Start a manual GitLab CI job.

list_project_runnersA

List runners available to a project without returning runner authentication tokens or CI variables.

lint_ci_configurationA

Validate GitLab CI YAML in project context and return status, errors, warnings, and jobs without returning merged YAML or protected variables.

list_commit_statusesA

List CI and external status checks attached to a GitLab commit.

create_commit_statusA

Create or update an external GitLab commit status for a ref.

list_protected_branchesA

Inspect protected-branch access policy for a GitLab project.

get_protected_branchA

Inspect one protected branch and its push, merge, unprotect, and code-owner approval policy.

protect_branchA

Create protected-branch policy after a capability preflight. An explicit acknowledgement and unprotect rule are required to avoid accidental lockout.

update_protected_branchA

Update protected-branch policy only after reading the current policy. An explicit acknowledgement and unprotect rule are required.

unprotect_branchA

Remove protected-branch policy only after reading the current policy and explicitly acknowledging the destructive governance change.

list_protected_tagsA

Inspect protected-tag create-access policy for a GitLab project.

get_protected_tagA

Inspect one protected tag and its create-access policy.

protect_tagA

Create a protected-tag policy after a capability preflight. An explicit acknowledgement is required to prevent accidental governance changes.

unprotect_tagA

Remove a protected-tag policy only after reading the current policy and explicitly acknowledging the destructive governance change.

list_project_approval_rulesA

List project-level merge-request approval rules and eligible approvers.

get_project_approval_ruleA

Get one project-level merge-request approval rule by ID.

create_project_approval_ruleA

Create a merge-request approval rule after a capability preflight. The explicit acknowledgement prevents accidental governance changes.

update_project_approval_ruleA

Update a project approval rule only after reading the current rule and explicitly acknowledging the governance change.

delete_project_approval_ruleA

Delete a project approval rule only after reading it and explicitly acknowledging the destructive governance change.

list_tagsA

List Git tags and release metadata for a project.

get_tagA

Get one Git tag and its associated release metadata.

create_tagA

Create a Git tag from a branch, ref, or commit SHA.

delete_tagA

Delete a Git tag. This does not delete a release with the same tag name.

list_releasesB

List GitLab releases for a project.

get_releaseB

Get one GitLab release by tag name.

create_releaseA

Create a GitLab release and optionally create its tag from a ref.

update_releaseB

Update the metadata or assets of an existing GitLab release.

delete_releaseA

Delete release metadata without deleting the Git tag with the same name.

list_release_asset_linksA

List external asset links attached to a GitLab release.

get_release_asset_linkA

Get one external asset link attached to a GitLab release.

create_release_asset_linkC

Attach an external asset link to a GitLab release.

update_release_asset_linkB

Update an external asset link attached to a GitLab release.

delete_release_asset_linkC

Delete an external asset link from a GitLab release.

list_pipeline_schedulesA

List project pipeline schedules without exposing schedule variable values.

get_pipeline_scheduleA

Get one pipeline schedule without exposing schedule variable values.

create_pipeline_scheduleC

Create a project pipeline schedule.

update_pipeline_scheduleC

Update a project pipeline schedule.

create_pipeline_schedule_variableB

Create a pipeline schedule variable without returning its value.

update_pipeline_schedule_variableC

Update a pipeline schedule variable without returning its value.

delete_pipeline_schedule_variableC

Delete a pipeline schedule variable without returning its former value.

delete_pipeline_scheduleB

Delete a project pipeline schedule.

run_pipeline_scheduleB

Run a project pipeline schedule immediately.

take_ownership_pipeline_scheduleB

Make the current GitLab user the owner of a pipeline schedule.

list_project_ci_variablesA

List project CI/CD variable metadata without exposing variable values.

get_project_ci_variableA

Get project CI/CD variable metadata without exposing its value.

create_project_ci_variableA

Create a project CI/CD variable without returning its value.

update_project_ci_variableB

Update a project CI/CD variable without returning its value.

delete_project_ci_variableB

Delete a project CI/CD variable without returning its former value.

list_group_ci_variablesA

List group CI/CD variable metadata without exposing variable values.

get_group_ci_variableA

Get group CI/CD variable metadata without exposing its value.

create_group_ci_variableB

Create a group CI/CD variable without returning its value.

update_group_ci_variableA

Update a group CI/CD variable without returning its value.

delete_group_ci_variableB

Delete a group CI/CD variable without returning its former value.

list_environmentsA

List all environments for a project, optionally filtered by name, search term, or state (available, stopping, stopped).

get_environmentA

Retrieve a single environment by its numeric ID.

list_deploymentsA

List deployments for a project with status, environment, ordering, and time-range filters. Pagination is bounded to 100 per page.

get_deploymentA

Retrieve a single deployment with status, environment, deployable, pipeline, and (on Premium/Ultimate) approval summary information.

get_deployment_approval_statusA

Retrieve the approval status for a deployment, including approval rules and individual approval decisions. Requires GitLab Premium or Ultimate with protected-environment approval rules configured. On Free or non-protected environments the approval fields may be absent.

list_project_webhooksA

List project webhook configurations. Secret tokens and secret custom headers are never exposed.

get_project_webhookA

Get one project webhook configuration by ID. Secret tokens and secret custom headers are never exposed.

list_project_webhook_eventsA

List recent delivery events for a specific project webhook. Response body contents are never exposed; only presence and size metadata are returned. Header secrets are redacted.

get_project_webhook_eventA

Get one webhook delivery event by ID. Searches through GitLab's documented event-list endpoint (events from the past 7 days only). Inspects at most 10 pages (1,000 events). Not a direct event lookup — the event must appear in the paginated list. Response body contents are never exposed; only presence and size metadata are returned. Header secrets are redacted.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CobolJunkie/gitlab-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server