| create_projectB | Create a new GitLab project. Args:
name: Project name
description: Project description (optional)
visibility: Project visibility (private, internal, public)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| delete_projectC | Delete a GitLab project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| list_projectsA | List GitLab projects. Args:
owned: If True, only show owned projects. If False, show all accessible projects.
per_page: Number of projects per page (max 100)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_issuesB | Get issues for a GitLab project. Args:
project_id: GitLab project ID
state: Issue state (opened, closed, all)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_merge_requestsA | Get merge requests for a GitLab project. Args:
project_id: GitLab project ID
state: MR state (opened, closed, merged, all)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| create_issueB | Create a new issue in a GitLab project. Args:
project_id: GitLab project ID
title: Issue title
description: Issue description (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_pipelinesA | Get CI/CD pipelines for a GitLab project. Args:
project_id: GitLab project ID
status: Pipeline status (running, pending, success, failed, canceled, skipped)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_branchesB | Get branches for a GitLab project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| list_groupsA | List GitLab groups. Args:
per_page: Number of groups per page (max 100)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_group_membersB | Get members of a GitLab group. Args:
group_id: GitLab group ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_repository_filesC | Get repository files and directories. Args:
project_id: GitLab project ID
path: Directory path (optional)
ref: Branch/tag reference (default: main)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_file_contentA | Get content of a repository file. Args:
project_id: GitLab project ID
file_path: Path to the file
ref: Branch/tag reference (default: main)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_commitsC | Get recent commits for a project. Args:
project_id: GitLab project ID
ref_name: Branch name (default: main)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| create_commitA | Create a commit with file changes. Args:
project_id: GitLab project ID
branch: Target branch
commit_message: Commit message
file_path: Path to the file
file_content: File content
action: Action (create, update, delete)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| create_branchB | Create a new branch. Args:
project_id: GitLab project ID
branch_name: New branch name
ref: Source branch/commit (default: main)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| delete_branchC | Delete a branch. Args:
project_id: GitLab project ID
branch_name: Branch name to delete
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| create_merge_requestC | Create a merge request. Args:
project_id: GitLab project ID
source_branch: Source branch
target_branch: Target branch
title: MR title
description: MR description (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| merge_merge_requestB | Merge a merge request. Args:
project_id: GitLab project ID
merge_request_iid: Merge request IID
merge_commit_message: Custom merge commit message (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| create_tagC | Create a new tag. Args:
project_id: GitLab project ID
tag_name: Tag name
ref: Source branch/commit
message: Tag message (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_pipeline_jobsC | Get jobs for a specific pipeline. Args:
project_id: GitLab project ID
pipeline_id: Pipeline ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| trigger_pipelineA | Trigger a new pipeline. Args:
project_id: GitLab project ID
ref: Branch/tag to run pipeline on (default: main)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_current_userB | Get current user information. Args:
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| search_projectsC | Search for projects. Args:
query: Search query
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_milestonesB | Get project milestones. Args:
project_id: GitLab project ID
state: Milestone state (active, closed, all)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_labelsC | Get project labels. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| list_project_hooksC | List project webhooks. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| update_projectB | Update project settings. Args:
project_id: GitLab project ID
name: New project name (optional)
description: New description (optional)
visibility: New visibility (private, internal, public) (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| fork_projectA | Fork a project. Args:
project_id: GitLab project ID to fork
namespace: Target namespace (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| archive_projectB | Archive a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| unarchive_projectC | Unarchive a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| create_fileC | Create a new file in repository. Args:
project_id: GitLab project ID
file_path: Path for the new file
content: File content
branch: Target branch
commit_message: Commit message
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| update_fileB | Update an existing file in repository. Args:
project_id: GitLab project ID
file_path: Path to the file
content: New file content
branch: Target branch
commit_message: Commit message
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| delete_fileB | Delete a file from repository. Args:
project_id: GitLab project ID
file_path: Path to the file
branch: Target branch
commit_message: Commit message
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_repository_tagsC | Get repository tags. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| delete_tagC | Delete a tag. Args:
project_id: GitLab project ID
tag_name: Tag name to delete
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| compare_branchesC | Compare two branches. Args:
project_id: GitLab project ID
from_branch: Source branch
to_branch: Target branch
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| revert_commitB | Revert a commit. Args:
project_id: GitLab project ID
commit_sha: Commit SHA to revert
branch: Target branch for revert
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| cherry_pick_commitC | Cherry-pick a commit. Args:
project_id: GitLab project ID
commit_sha: Commit SHA to cherry-pick
branch: Target branch for cherry-pick
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| update_issueA | Update an issue. Args:
project_id: GitLab project ID
issue_iid: Issue IID
title: New title (optional)
description: New description (optional)
state_event: State change (close, reopen) (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| close_issueB | Close an issue. Args:
project_id: GitLab project ID
issue_iid: Issue IID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| clone_repositoryB | Clone a GitLab repository to local path. Args:
project_id: GitLab project ID
local_path: Local directory path (optional, defaults to project name)
use_ssh: Use SSH URL instead of HTTPS (default: False)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| clone_group_repositoriesA | Clone all repositories from a GitLab group. Args:
group_id: GitLab group ID
base_path: Base directory for cloned repos (default: ./repos)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_projectB | Get detailed information about a specific project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| star_projectB | Star a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| unstar_projectA | Unstar a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| list_user_projectsC | List projects owned by a specific user. Args:
user_id: GitLab user ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| list_starred_projectsB | List projects starred by a specific user. Args:
user_id: GitLab user ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_languagesB | Get programming languages used in a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_forksC | List forks of a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| transfer_projectB | Transfer a project to a new namespace. Args:
project_id: GitLab project ID
namespace: Target namespace (user or group)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| get_project_usersB | Get users with access to a project. Args:
project_id: GitLab project ID
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| share_project_with_groupC | Share project with a group. Args:
project_id: GitLab project ID
group_id: Group ID to share with
group_access: Access level (10=Guest, 20=Reporter, 30=Developer, 40=Maintainer, 50=Owner)
expires_at: Expiration date (YYYY-MM-DD) (optional)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| unshare_project_with_groupC | Remove project sharing with a group. Args:
project_id: GitLab project ID
group_id: Group ID to unshare from
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|
| list_group_projectsB | List projects in a group by group name. Args:
group_name: GitLab group name or path
per_page: Number of projects per page (max 100)
token: GitLab Personal Access Token (optional)
ctx: MCP context (automatically injected)
|