GitLab MCP

43 tools. 19 can modify or destroy data without limits.

3 destructive tools with no built-in limits. Policy required.

Last updated:

19 can modify or destroy data
24 read-only
43 tools total

Community server · catalogue entry verified 02/07/2026

How to control GitLab MCP ↓

What GitLab MCP exposes to your agents

Read (24) Write / Execute (16) Destructive / Financial (3)
Critical Risk

The most dangerous GitLab MCP tools

19 of GitLab MCP's 43 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control GitLab MCP

PolicyLayer is an MCP gateway — it sits between your AI agents and GitLab MCP, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "cancel_pipeline": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "approve_merge_request": {
    "limits": [
      {
        "counter": "approve_merge_request_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "get_commit_diff": {
    "limits": [
      {
        "counter": "get_commit_diff_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register GitLab MCP — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON GITLAB →

Instant setup, no code required.

All 43 GitLab MCP tools

READ 24 tools
Read get_commit_diff Get the per-file diff of a single commit. Read get_current_user Return the user that owns the configured personal access token. Read get_file Read a file's decoded text content at ref (branch, tag, or SHA). Read get_issue Get one issue by its project-scoped IID. Read get_job_log Get the trace (console log) of a job. Read get_merge_request Get full details for one merge request by its project-scoped IID. Read get_merge_request_diffs Get the per-file diffs (changes) of a merge request. Read get_pipeline Get details for one pipeline. Read get_project Get full details for one project by numeric ID or "namespace/path". Read list_branches List repository branches. Read list_commits List commits. since/until are ISO 8601 timestamps. Read list_group_projects List projects belonging to a group (by numeric ID or full path). Read list_groups List groups visible to the authenticated user. Read list_issue_notes List comments (notes) on an issue, oldest first. Read list_issues list_issues Read list_merge_request_notes List comments (notes) on a merge request, oldest first. Read list_merge_requests List merge requests. Omit project_id to search across all projects. Read list_pipeline_jobs List the jobs of a pipeline. Read list_pipelines List pipelines. status e.g. "running", "success", "failed", "canceled". Read list_projects list_projects Read list_repository_tree List files and directories in the repository tree. Read list_tags List repository tags. Read search search Read search_users Search users by name, username, or email.

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about GitLab MCP

Can an AI agent delete data through the GitLab MCP server? +

Yes. The GitLab MCP server exposes 3 destructive tools including cancel_pipeline, delete_branch, delete_file. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through GitLab MCP? +

The GitLab MCP server has 13 write tools including approve_merge_request, comment_issue, comment_merge_request. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach GitLab MCP.

How many tools does the GitLab MCP server expose? +

43 tools across 3 categories: Destructive, Read, Write. 24 are read-only. 19 can modify, create, or delete data.

How do I enforce a policy on GitLab MCP? +

Register the GitLab MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every GitLab MCP tool call.

Deterministic rules across all 43 GitLab MCP tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Instant setup, no code required.

43 GitLab MCP tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.