gitlab mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GITLAB_API_URL | No | Your GitLab API URL. Defaults to https://gitlab.com/api/v4 | https://gitlab.com/api/v4 |
| GITLAB_PERSONAL_ACCESS_TOKEN | Yes | Your GitLab personal access token. |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| merge_merge_requestC | Merge a merge request in a GitLab project |
| execute_graphqlC | Execute a GitLab GraphQL query |
| create_or_update_fileC | Create or update a single file in a GitLab project |
| search_repositoriesC | Search for GitLab projects |
| create_repositoryC | Create a new GitLab project |
| get_file_contentsB | Get the contents of a file or directory from a GitLab project |
| push_filesC | Push multiple files to a GitLab project in a single commit |
| create_issueC | Create a new issue in a GitLab project |
| create_merge_requestC | Create a new merge request in a GitLab project |
| fork_repositoryB | Fork a GitLab project to your account or specified namespace |
| create_branchC | Create a new branch in a GitLab project |
| get_merge_requestB | Get details of a merge request (Either mergeRequestIid or branchName must be provided) |
| get_merge_request_diffsB | Get the changes/diffs of a merge request (Either mergeRequestIid or branchName must be provided) |
| list_merge_request_diffsA | List merge request diffs with pagination support (Either mergeRequestIid or branchName must be provided) |
| get_branch_diffsC | Get the changes/diffs between two branches or commits in a GitLab project |
| update_merge_requestC | Update a merge request (Either mergeRequestIid or branchName must be provided) |
| create_noteC | Create a new note (comment) to an issue or merge request |
| create_merge_request_threadC | Create a new thread on a merge request |
| resolve_merge_request_threadC | Resolve a thread on a merge request |
| mr_discussionsB | List discussion items for a merge request |
| delete_merge_request_discussion_noteC | Delete a discussion note on a merge request |
| update_merge_request_discussion_noteC | Update a discussion note on a merge request |
| create_merge_request_discussion_noteC | Add a new discussion note to an existing merge request thread |
| create_merge_request_noteC | Add a new note to a merge request |
| delete_merge_request_noteC | Delete an existing merge request note |
| get_merge_request_noteB | Get a specific note for a merge request |
| get_merge_request_notesB | List notes for a merge request |
| update_merge_request_noteC | Modify an existing merge request note |
| get_draft_noteC | Get a single draft note from a merge request |
| list_draft_notesC | List draft notes for a merge request |
| create_draft_noteB | Create a draft note for a merge request |
| update_draft_noteC | Update an existing draft note |
| delete_draft_noteC | Delete a draft note |
| publish_draft_noteC | Publish a single draft note |
| bulk_publish_draft_notesC | Publish all draft notes for a merge request |
| update_issue_noteC | Modify an existing issue thread note |
| create_issue_noteC | Add a new note to an existing issue thread |
| list_issuesB | List issues (default: created by current user only; use scope='all' for all accessible issues) |
| my_issuesB | List issues assigned to the authenticated user (defaults to open issues) |
| get_issueC | Get details of a specific issue in a GitLab project |
| update_issueC | Update an issue in a GitLab project |
| delete_issueC | Delete an issue from a GitLab project |
| list_issue_linksB | List all issue links for a specific issue |
| list_issue_discussionsC | List discussions for an issue in a GitLab project |
| get_issue_linkC | Get a specific issue link |
| create_issue_linkC | Create an issue link between two issues |
| delete_issue_linkC | Delete an issue link |
| list_namespacesB | List all namespaces available to the current user |
| get_namespaceC | Get details of a namespace by ID or path |
| verify_namespaceC | Verify if a namespace path exists |
| get_projectC | Get details of a specific project |
| list_projectsC | List projects accessible by the current user |
| list_project_membersC | List members of a GitLab project |
| list_labelsB | List labels for a project |
| get_labelB | Get a single label from a project |
| create_labelC | Create a new label in a project |
| update_labelC | Update an existing label in a project |
| delete_labelC | Delete a label from a project |
| list_group_projectsC | List projects in a GitLab group with filtering options |
| get_repository_treeB | Get the repository tree for a GitLab project (list files and directories) |
| list_merge_requestsC | List merge requests in a GitLab project with filtering options |
| get_usersC | Get GitLab user details by usernames |
| list_commitsC | List repository commits with filtering options |
| get_commitB | Get details of a specific commit |
| get_commit_diffC | Get changes/diffs of a specific commit |
| list_group_iterationsB | List group iterations with filtering options |
| upload_markdownC | Upload a file to a GitLab project for use in markdown content |
| download_attachmentA | Download an uploaded file from a GitLab project by secret and filename |
| list_eventsC | List all events for the currently authenticated user. Note: before/after parameters accept date format YYYY-MM-DD only |
| get_project_eventsC | List all visible events for a specified project. Note: before/after parameters accept date format YYYY-MM-DD only |
| list_releasesC | List all releases for a project |
| get_releaseC | Get a release by tag name |
| create_releaseC | Create a new release in a GitLab project |
| update_releaseC | Update an existing release in a GitLab project |
| delete_releaseA | Delete a release from a GitLab project (does not delete the associated tag) |
| create_release_evidenceB | Create release evidence for an existing release (GitLab Premium/Ultimate only) |
| download_release_assetC | Download a release asset file by direct asset path |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
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/zereight/gitlab-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server