GitLab MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GITLAB_API_URL | No | Your GitLab API URL | 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 |
|---|---|
| add_time_spentC | Add time spent on an issue |
| delete_time_spentC | Delete a time spent entry from an issue |
| 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_contentsC | Get the contents of a file or directory from a GitLab project |
| push_filesB | 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) |
| get_branch_diffsB | 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 |
| mr_discussionsC | List discussion items for a merge request |
| update_merge_request_noteC | Modify an existing merge request thread note |
| create_merge_request_noteB | Add a new note to an existing merge request thread |
| update_issue_noteC | Modify an existing issue thread note |
| create_issue_noteC | Add a new note to an existing issue thread |
| list_issuesC | List issues in a GitLab project with filtering options |
| get_issueB | 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_linksC | 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_linkD | Delete an issue link |
| list_namespacesC | 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_labelsC | List labels for a project |
| get_labelC | 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_treeC | 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 |
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/harshmaur/gitlab-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server