Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HOSTNoListen address for hosted mode. Default: 0.0.0.00.0.0.0
PORTNoListen port for hosted mode. Default: 80808080
GITLAB_URLNoInstance URL. A trailing /api/v4 is accepted and stripped. Default: https://gitlab.comhttps://gitlab.com
GITLAB_TOKENNoAccess token.
LANDING_PATHNoPage served at / in hosted mode. Default: ./landing.html./landing.html
CI_SERVER_URLNoAlias for GITLAB_URL. Instance URL.
MCP_TRANSPORTNostdio or http to start the HTTP server. Default: stdiostdio
GITLAB_API_URLNoAlias for GITLAB_URL. Instance URL.
GITLAB_AUTH_TYPENopat or oauth — send the token as Authorization: Bearer. Default: patpat
GITLAB_READ_ONLYNotrue — every mutating tool is refused. Default: falsefalse
GITLAB_PROJECT_IDNoDefault project: 42 or group/subgroup/project.
GITLAB_TIMEOUT_MSNoPer-request timeout. Default: 6000060000
GITLAB_ACCESS_TOKENNoAlias for GITLAB_TOKEN. Access token.
GITLAB_PROJECT_LOCKNotrue — hard isolation inside GITLAB_PROJECT_ID. Default: falsefalse
GITLAB_ALLOWED_INSTANCESNoComma-separated hostnames; when set, only these instances may be targeted.
GITLAB_MAX_ATTACHMENT_BYTESNoSize cap for downloaded attachments. Default: 83886088388608
GITLAB_PERSONAL_ACCESS_TOKENNoAlias for GITLAB_TOKEN. Access token.
GITLAB_TLS_REJECT_UNAUTHORIZEDNofalse — skip TLS verification (private CA). Default: truetrue

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
gitlab_whoamiA

Returns the authenticated user, the configured GitLab instance URL and the instance version. Use this first to verify GITLAB_URL/GITLAB_TOKEN are wired correctly.

gitlab_searchA

Global, group or project search across projects, issues, merge requests, code blobs, commits, wiki and notes.

gitlab_list_todosA

Lists the authenticated user's todo items (assignments, mentions, review requests).

gitlab_mark_todo_doneA

Marks a single todo as done, or all pending todos when todo_id is omitted.

gitlab_list_eventsB

Activity stream for the current user or a project (pushes, comments, merges, ...).

gitlab_list_usersA

Searches instance users by username or free text.

gitlab_get_userB

Fetches a single user by id.

gitlab_markdown_renderA

Renders markdown through GitLab so relative upload links and issue references are expanded to absolute URLs — handy before downloading attachments.

gitlab_api_requestB

Escape hatch that calls ANY GitLab REST API v4 endpoint with the configured credentials. Use it for endpoints without a dedicated tool (epics, packages, feature flags, admin, custom instance routes). See https://docs.gitlab.com/ee/api/api_resources.html

gitlab_list_projectsA

Lists projects visible to the token, with search and membership filters.

gitlab_get_projectA

Full details for one project, including default branch, namespace and web URL.

gitlab_create_projectA

Creates a new project, optionally inside a group.

gitlab_update_projectC

Edits project settings.

gitlab_delete_projectA

Deletes (or schedules deletion of) a project. Irreversible on most instances.

gitlab_fork_projectC

Forks a project into a namespace.

gitlab_list_project_membersC

Members of a project, optionally including inherited group members.

gitlab_add_project_memberC

Grants a user access to a project.

gitlab_list_groupsB

Lists groups visible to the token.

gitlab_get_groupC

Details for one group.

gitlab_list_group_projectsA

Projects inside a group, optionally recursing into subgroups.

gitlab_list_group_membersD

Members of a group.

gitlab_list_issuesA

Lists issues for a project, a group, or the whole instance (omit project_id and group_id) with the usual filters.

gitlab_get_issueA

Full issue: description, labels, assignees, milestone, plus (by default) every comment and the URLs of every attached screenshot/file. Feed those URLs to gitlab_read_attachment to actually view the images.

gitlab_create_issueC

Creates an issue in a project.

gitlab_update_issueA

Edits an issue, including closing/reopening it.

gitlab_delete_issueA

Permanently deletes an issue.

gitlab_list_notesA

Lists comments (notes) on an issue, merge request, snippet or epic.

gitlab_create_noteA

Posts a comment on an issue, merge request, snippet, epic or commit. Embed uploaded screenshots with the markdown returned by gitlab_upload_file.

gitlab_update_noteC

Edits an existing comment.

gitlab_list_discussionsA

Threaded discussions, including code-review threads with their file/line position and resolved state.

gitlab_reply_to_discussionB

Adds a reply to an existing discussion thread.

gitlab_issue_linksA

Lists, creates or removes links between issues (relates to / blocks / blocked by).

gitlab_issue_time_trackingB

Reads or updates estimate and spent time on an issue.

gitlab_issue_related_merge_requestsB

Merge requests that reference or close this issue.

gitlab_list_labelsC

Labels of a project or group.

gitlab_create_labelC

Creates a project label.

gitlab_list_milestonesC

Milestones of a project or group.

gitlab_list_boardsB

Issue boards and their lists for a project or group.

gitlab_list_merge_requestsA

Lists merge requests for a project, a group, or the whole instance (omit both ids) with the usual filters.

gitlab_get_merge_requestA

Full merge request: branches, approvals, merge status, pipeline, plus optional comments and attachment/screenshot URLs.

gitlab_get_merge_request_diffA

The actual code changes of a merge request, file by file. Truncated to stay readable.

gitlab_create_merge_requestC

Opens a merge request between two branches.

gitlab_update_merge_requestC

Edits a merge request.

gitlab_merge_merge_requestA

Merges a merge request, optionally waiting for the pipeline to pass.

gitlab_merge_request_actionA

Approve/unapprove, rebase, cancel auto-merge, or inspect approvals, commits, participants, closed issues and pipelines of a merge request.

gitlab_create_merge_request_threadA

Starts a review thread. With file_path + line + diff_refs it anchors to a specific line; without them it posts a general discussion. Get diff_refs from gitlab_get_merge_request.

gitlab_resolve_merge_request_threadA

Marks a review thread resolved or unresolved.

gitlab_list_repo_treeB

Lists files and directories in the repository tree.

gitlab_get_fileA

Reads a file from the repository. Text comes back decoded; set as_image=true to look at an image committed to the repo.

gitlab_create_or_update_fileB

Creates or updates a single file in a branch.

gitlab_commit_filesB

Creates one commit that touches several files at once (create/update/delete/move).

gitlab_list_branchesC

Branches of a project.

gitlab_branch_actionB

Gets, creates or deletes branches.

gitlab_list_commitsC

Commit history with optional path and date filters.

gitlab_get_commitA

One commit with stats and optionally its diff.

gitlab_compareA

Diff between two branches, tags or commits, including the commit list.

gitlab_list_tagsC

Repository tags.

gitlab_tag_actionC

Creates or deletes a tag.

gitlab_list_releasesC

Releases of a project.

gitlab_create_releaseB

Publishes a release for a tag.

gitlab_list_protected_branchesB

Protection rules for branches (who may push/merge).

gitlab_blame_fileC

Per-line authorship for a file.

gitlab_list_pipelinesB

CI pipelines with status and ref filters.

gitlab_get_pipelineB

A pipeline with its jobs, durations and failure reasons.

gitlab_pipeline_actionA

Triggers a new pipeline, or retries/cancels/deletes an existing one.

gitlab_list_jobsB

Jobs of a pipeline or of the whole project.

gitlab_get_job_logA

Downloads the trace/log of a CI job — the fastest way to find out why a pipeline failed. Returns the tail by default.

gitlab_job_actionB

Inspects, retries, cancels, runs or erases a CI job.

gitlab_get_job_artifactA

Downloads a CI artifact. A single image path (Playwright/Cypress screenshot, coverage badge) comes back as a viewable image.

gitlab_ci_variablesB

Manages project CI/CD variables. Values of masked variables are not returned by GitLab.

gitlab_lint_ci_configA

Validates CI configuration against the project's context before committing it.

gitlab_list_environmentsD

Deployment environments of a project.

gitlab_list_deploymentsC

Deployment history of a project.

gitlab_list_pipeline_schedulesC

Scheduled pipelines of a project.

gitlab_read_attachmentA

Downloads an attached file from GitLab with authentication and returns it. PNG/JPEG/GIF/WebP images come back as viewable images, text files as text, anything else as a base64 resource. This is how you look at screenshots pasted into issues, merge requests and comments.

gitlab_list_attachmentsA

Scans the description and comments of an issue, merge request or epic and returns every attached file/screenshot with a ready-to-use URL for gitlab_read_attachment.

gitlab_upload_fileA

Uploads a local file to the project's upload store and returns the markdown snippet to embed it in an issue, MR or comment.

gitlab_download_urlA

Authenticated GET of an arbitrary URL on the GitLab instance — job artifacts, raw files, avatars, design files. Returns images as images and text as text.

gitlab_wikiB

Lists, reads and edits wiki pages of a project.

gitlab_snippetsC

Manages project snippets, including raw content.

gitlab_project_hooksC

Lists, creates and deletes project webhooks.

gitlab_list_packagesD

Packages published to the project registry.

gitlab_list_registry_repositoriesA

Container registry repositories of a project, optionally with tags.

gitlab_award_emojiC

Lists, adds or removes emoji reactions.

gitlab_project_statisticsB

Languages, contributors and repository size for a project.

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/amalychev/gitlab-mcp'

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