Skip to content

Tools Overview

GitLab MCP Server exposes GitLab operations as MCP tools that AI assistants can invoke directly. The server offers two operating modes to balance capability with token efficiency.

In individual mode, the server registers 1006 individual tools, each mapping to a single GitLab API operation. This provides maximum granularity but consumes significant LLM context tokens for tool discovery.

In meta-tool mode (META_TOOLS=true), related operations are consolidated into domain-level meta-tools. Each meta-tool accepts an action parameter that routes to the appropriate handler. This reduces the tool count to 42 base meta-tools (or 57 with enterprise features), dramatically improving LLM token efficiency while preserving full functionality.

{
"tool": "gitlab_issue",
"arguments": {
"action": "create",
"project": "my-group/my-project",
"title": "Fix login redirect",
"description": "Users are redirected to 404 after login",
"labels": "bug,priority::high"
}
}

All tools follow a consistent naming pattern:

  • Individual tools: gitlab_{action}_{resource} (e.g., gitlab_create_issue, gitlab_list_projects)
  • Meta-tools: gitlab_{domain} (e.g., gitlab_issue, gitlab_project)
Meta-toolDescriptionKey Actions
gitlab_projectProject CRUD and configurationlist, get, create, update, delete, archive, unarchive, fork, star, unstar, transfer
gitlab_issueIssue lifecycle managementlist, get, create, update, delete, close, reopen, subscribe, move, clone
gitlab_milestoneMilestone managementlist, get, create, update, delete
gitlab_labelLabel managementlist, get, create, update, delete
gitlab_issue_linkIssue relationshipslist, create, delete
gitlab_issue_noteIssue commentslist, get, create, update, delete
gitlab_todoTodo/task managementlist, mark_done, mark_all_done
Meta-toolDescriptionKey Actions
gitlab_branchBranch managementlist, get, create, delete
gitlab_protected_branchBranch protection ruleslist, get, protect, unprotect
gitlab_commitCommit operationslist, get, diff, refs, cherry_pick, revert
gitlab_tagTag managementlist, get, create, delete
gitlab_fileRepository file operationsget, create, update, delete, raw
gitlab_repositoryRepository tree and comparetree, compare, archive, contributors
gitlab_merge_requestMerge request lifecyclelist, get, create, update, merge, close, reopen, rebase, approve, unapprove
gitlab_mr_noteMR commentslist, get, create, update, delete
gitlab_mr_discussionMR discussion threadslist, get, create, reply, resolve, unresolve
gitlab_mr_draft_noteMR draft noteslist, get, create, update, delete, publish
gitlab_mr_changesMR diff and changeslist, summary
gitlab_mr_approvalMR approval rulesget, approve, unapprove, configuration
gitlab_wikiWiki page managementlist, get, create, update, delete
Meta-toolDescriptionKey Actions
gitlab_pipelinePipeline managementlist, get, create, cancel, retry, delete, wait
gitlab_jobCI job managementlist, get, play, cancel, retry, trace, artifacts, wait
gitlab_pipeline_scheduleScheduled pipelineslist, get, create, update, delete, trigger
gitlab_ci_lintCI configuration validationvalidate, project_lint
gitlab_ci_variableCI/CD variableslist, get, create, update, delete
gitlab_environmentEnvironment managementlist, get, create, update, delete, stop
gitlab_deploymentDeployment trackinglist, get
gitlab_packagePackage registrylist, get, delete
Meta-toolDescriptionKey Actions
gitlab_memberProject member managementlist, get, add, update, remove
gitlab_groupGroup managementlist, get, create, update, delete, projects, subgroups
gitlab_searchCross-resource searchcode, issues, merge_requests, projects, users, commits, blobs
gitlab_userUser informationget, current, list, status
gitlab_releaseRelease managementlist, get, create, update, delete
gitlab_release_linkRelease asset linkslist, get, create, update, delete
gitlab_uploadFile uploadsupload
Meta-toolDescriptionKey Actions
gitlab_healthServer health checkcheck, version
gitlab_server_updateSelf-update managementcheck, apply
gitlab_resolve_projectGit remote to project resolutionresolve
Meta-toolDescription
gitlab_analyze_mr_changesAI analysis of merge request changes
gitlab_summarize_issueAI-powered issue summarization
gitlab_generate_release_notesAutomated release notes generation
gitlab_analyze_pipeline_failurePipeline failure root cause analysis
gitlab_summarize_mr_reviewMR review summarization
gitlab_generate_milestone_reportMilestone progress reporting
gitlab_analyze_ci_configurationCI config quality analysis
gitlab_analyze_issue_scopeIssue scope and complexity estimation
gitlab_review_mr_securitySecurity review of MR changes
gitlab_find_technical_debtTechnical debt identification
gitlab_analyze_deployment_historyDeployment pattern analysis

When GITLAB_ENTERPRISE=true, the server registers 15 additional meta-tools for GitLab Premium and Ultimate features:

gitlab_merge_train, gitlab_audit_event, gitlab_dora_metrics, gitlab_dependency, gitlab_external_status_check, gitlab_group_scim, gitlab_member_role, gitlab_enterprise_user, gitlab_attestation, gitlab_compliance_policy, gitlab_project_alias, gitlab_geo, gitlab_storage_move, gitlab_vulnerability, gitlab_security_finding