MCP server intelligence profile

GitLab Review MCP Server

Enables code review operations on GitHub and GitLab, including fetching pull/merge requests, viewing diffs, adding comments, analyzing code quality, and creating merge requests directly from your MCP client

Local Onlylininn
Awaiting current scanNpm · 1.0.27

The selected current version does not yet have completed public verification. Unknown does not mean clean or vulnerable.

1Distribution channel
15Independently observed tools
0Linked remote endpoints
AvailableVersion intelligence

Detailed security scan evidence is not public for this MCP yet. Public identity, registry metadata, and independently observed protocol inventory remain available.

Install and connect

Installation and connection instructions are shown only when supported by retained package, repository, or endpoint evidence.

Install gitlab-review-mcp from npm

Version 1.0.27 declares 1 executable entrypoint.

npm install --save-exact gitlab-review-mcp@1.0.27
npx -y -p gitlab-review-mcp@1.0.27 gitlab-review-mcp
MCP client configuration example
{
  "mcpServers": {
    "gitlab-review-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "-p",
        "gitlab-review-mcp@1.0.27",
        "gitlab-review-mcp"
      ]
    }
  }
}

Identity

Canonical sluggitlab-review-mcp-e22f6cd1DeploymentLocal Only
Canonical packagenpm:gitlab-review-mcpRepositorylininn/gitlab-review-mcp
First publishedLatest release
Last security verificationClassification confidence90%
PublicationDraftOfficial distributionNot verified

Distributions

ChannelIdentifierCurrent versionVersionsSource
npmgitlab-review-mcp1.0.271Repository

Current release

PackageVersionPublished / observedInventorySecurity scan
npmgitlab-review-mcp1.0.27CurrentSep 5, 202615 toolsSucceeded · 0 resources · 0 promptsEvidence restricted
Enterprise protection

Continuously monitor this MCP for security risk

Independently scan the exact version your agents use, receive alerts when its risk changes, and investigate every finding with retained version evidence.

  • Independent exact-version security scans
  • Continuous release and vulnerability monitoring
  • Risk-change alerts with capability context
  • Historical evidence and API exports
Custom pricingContact salesTailored to your organization, integrations, data needs, and support requirements.

Current version evidence

No public current-version evidence is available yet.

Current protocol inventory

2025-06-18Negotiated protocol
node-code-review-mcpServer-reported name
1Capability groups
Aug 21, 2026Observed

Tools 15

ToolCategoryAnnotationsRisk
add_review_commentAdd a review comment to a pull request
Input schema
{
  "type": "object",
  "properties": {
    "repository": {
      "type": "string",
      "description": "Repository in format \"owner/repo\""
    },
    "pullRequestNumber": {
      "type": "number",
      "description": "Pull request number"
    },
    "body": {
      "type": "string",
      "description": "Comment body"
    },
    "filePath": {
      "type": "string",
      "description": "File path for line comment (optional)"
    },
    "line": {
      "type": "number",
      "description": "Line number for line comment (optional)"
    },
    "provider": {
      "type": "string",
      "enum": [
        "github",
        "gitlab"
      ],
      "description": "Git provider (github or gitlab)",
      "default": "gitlab"
    }
  },
  "required": [
    "repository",
    "pullRequestNumber",
    "body"
  ]
}
analyze_code_qualityAnalyze code quality and provide suggestions with detailed metrics
Input schema
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Code content to analyze"
    },
    "language": {
      "type": "string",
      "description": "Programming language (javascript, typescript, python, java, go, etc.)"
    },
    "rules": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specific rules to check (optional)"
    }
  },
  "required": [
    "code",
    "language"
  ]
}
analyze_files_batchAnalyze multiple files for code quality issues
Input schema
{
  "type": "object",
  "properties": {
    "files": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string"
          },
          "content": {
            "type": "string"
          },
          "language": {
            "type": "string"
          }
        },
        "required": [
          "path",
          "content",
          "language"
        ]
      },
      "description": "Array of files to analyze"
    },
    "rules": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specific rules to apply to all files (optional)"
    }
  },
  "required": [
    "files"
  ]
}
create_merge_requestCreate a new GitLab merge request from a source branch
Input schema
{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "description": "GitLab project ID or path (aliases: project_id, project_path; e.g., \"12345\" or \"group/project\")"
    },
    "sourceBranch": {
      "type": "string",
      "description": "Source branch name (aliases: source_branch; e.g., \"feature/new-feature\")"
    },
    "targetBranch": {
      "type": "string",
      "description": "Target branch name (aliases: target_branch; defaults to \"main\")",
      "default": "main"
    },
    "title": {
      "type": "string",
      "description": "Merge request title (auto-generated from branch name if not provided)"
    },
    "description": {
      "type": "string",
      "description": "Merge request description"
    },
    "assigneeId": {
      "type": "number",
      "description": "User ID to assign the merge request to"
    },
    "reviewerIds": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "Array of user IDs to request reviews from"
    },
    "deleteSourceBranch": {
      "type": "boolean",
      "description": "Whether to delete source branch when MR is merged",
      "default": false
    },
    "squash": {
      "type": "boolean",
      "description": "Whether to squash commits when merging",
      "default": false
    },
    "workingDirectory": {
      "type": "string",
      "description": "Local repository path for auto-detecting project ID (aliases: working_directory, cwd)"
    },
    "remoteName": {
      "type": "string",
      "description": "Git remote name used for auto-detecting the project ID",
      "default": "origin"
    }
  },
  "required": [
    "sourceBranch"
  ]
}
fetch_code_diffFetch code diff for a pull request or commit
Input schema
{
  "type": "object",
  "properties": {
    "repository": {
      "type": "string",
      "description": "Repository in format \"owner/repo\""
    },
    "pullRequestNumber": {
      "type": "number",
      "description": "Pull request number (optional if commitSha is provided)"
    },
    "commitSha": {
      "type": "string",
      "description": "Commit SHA (optional if pullRequestNumber is provided)"
    },
    "filePath": {
      "type": "string",
      "description": "Specific file path to get diff for (optional)"
    },
    "provider": {
      "type": "string",
      "enum": [
        "github",
        "gitlab"
      ],
      "description": "Git provider (github or gitlab)",
      "default": "gitlab"
    }
  },
  "required": [
    "repository"
  ]
}
fetch_pull_requestFetch pull request details from GitHub/GitLab
Input schema
{
  "type": "object",
  "properties": {
    "repository": {
      "type": "string",
      "description": "Repository in format \"owner/repo\""
    },
    "pullRequestNumber": {
      "type": "number",
      "description": "Pull request number"
    },
    "provider": {
      "type": "string",
      "enum": [
        "github",
        "gitlab"
      ],
      "description": "Git provider (github or gitlab)",
      "default": "gitlab"
    }
  },
  "required": [
    "repository",
    "pullRequestNumber"
  ]
}
get_current_branchGet current Git branch and repository information
Input schema
{
  "type": "object",
  "properties": {
    "workingDirectory": {
      "type": "string",
      "description": "Working directory path (defaults to current directory)"
    }
  }
}
get_language_rulesGet available analysis rules for a specific language
Input schema
{
  "type": "object",
  "properties": {
    "language": {
      "type": "string",
      "description": "Programming language"
    }
  },
  "required": [
    "language"
  ]
}
get_merge_requestGet information about a specific GitLab merge request
Input schema
{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "description": "GitLab project ID or path (aliases: project_id, project_path; e.g., \"12345\" or \"group/project\")"
    },
    "mergeRequestIid": {
      "type": "string",
      "description": "Merge request IID (aliases: merge_request_iid; the number in the MR URL, not the database ID)"
    },
    "workingDirectory": {
      "type": "string",
      "description": "Local repository path for auto-detecting project ID (aliases: working_directory, cwd)"
    },
    "remoteName": {
      "type": "string",
      "description": "Git remote name used for auto-detecting the project ID",
      "default": "origin"
    }
  },
  "required": [
    "mergeRequestIid"
  ]
}
get_merge_request_changesGet merge request changes (GitLab compatibility alias)
Input schema
{
  "type": "object",
  "properties": {
    "repository": {
      "type": "string",
      "description": "Repository/project identifier (e.g., \"group/project\"). Optional if workingDirectory is provided."
    },
    "pullRequestNumber": {
      "type": [
        "number",
        "string"
      ],
      "description": "Pull/MR number (IID). Optional if mergeRequestIid is provided."
    },
    "mergeRequestIid": {
      "type": [
        "number",
        "string"
      ],
      "description": "Merge request IID (GitLab). Optional if pullRequestNumber is provided."
    },
    "provider": {
      "type": "string",
      "enum": [
        "github",
        "gitlab"
      ],
      "description": "Git provider (default gitlab)",
      "default": "gitlab"
    },
    "workingDirectory": {
      "type": "string",
      "description": "Local repository path for auto-detecting project ID (aliases: working_directory, cwd)"
    },
    "remoteName": {
      "type": "string",
      "description": "Git remote name used for auto-detecting the project ID",
      "default": "origin"
    }
  },
  "required": []
}
get_project_infoGet current GitLab project information from Git remotes
Input schema
{
  "type": "object",
  "properties": {
    "workingDirectory": {
      "type": "string",
      "description": "Working directory path (defaults to current directory)"
    },
    "remoteName": {
      "type": "string",
      "description": "Git remote name (defaults to \"origin\")",
      "default": "origin"
    }
  }
}
get_pull_request_filesGet list of files changed in a pull request or merge request
Input schema
{
  "type": "object",
  "properties": {
    "repository": {
      "type": "string",
      "description": "Repository/project identifier (e.g., \"owner/repo\" or \"group/project\"). Optional if workingDirectory is provided."
    },
    "pullRequestNumber": {
      "type": [
        "number",
        "string"
      ],
      "description": "Pull request number (IID). Optional if mergeRequestIid is provided."
    },
    "mergeRequestIid": {
      "type": [
        "number",
        "string"
      ],
      "description": "Merge request IID (GitLab). Optional if pullRequestNumber is provided."
    },
    "provider": {
      "type": "string",
      "enum": [
        "github",
        "gitlab"
      ],
      "description": "Git provider (github or gitlab)",
      "default": "gitlab"
    },
    "workingDirectory": {
      "type": "string",
      "description": "Local repository path for auto-detecting project ID (aliases: working_directory, cwd)"
    },
    "remoteName": {
      "type": "string",
      "description": "Git remote name used for auto-detecting the project ID",
      "default": "origin"
    }
  },
  "required": []
}
get_repository_infoGet repository information
Input schema
{
  "type": "object",
  "properties": {
    "repository": {
      "type": "string",
      "description": "Repository in format \"owner/repo\""
    },
    "provider": {
      "type": "string",
      "enum": [
        "github",
        "gitlab"
      ],
      "description": "Git provider (github or gitlab)",
      "default": "gitlab"
    }
  },
  "required": [
    "repository"
  ]
}
get_server_configGet current server configuration
Input schema
{
  "type": "object",
  "properties": {}
}
get_supported_languagesGet list of supported programming languages for code analysis
Input schema
{
  "type": "object",
  "properties": {}
}

Resources 0

  • None observed.

Resource templates 0

  • None observed.

Prompts 0

  • None observed.

Remote endpoints

EndpointTransportAuthenticationHealthObserved
No verified remote endpoint is linked.

GitLab Review MCP Server questions

How do I install GitLab Review MCP Server?

Install the selected package version with: npm install --save-exact gitlab-review-mcp@1.0.27

What tools does GitLab Review MCP Server provide?

GitLab Review MCP Server exposed 15 tools during independent protocol observation, including add_review_comment, analyze_code_quality, analyze_files_batch, create_merge_request, fetch_code_diff, fetch_pull_request, get_current_branch, get_language_rules, and others.

Is GitLab Review MCP Server secure?

The selected current version does not yet have completed public verification. Unknown does not mean clean or vulnerable.

Company and product intelligence

These internal links are derived from strong identity fields such as the implementation name, package, repository, vendor, and listing name—not generic description prose.

Associated company landscape

GitLab intelligence →

Association is based on retained identity fields; it does not by itself prove first-party publication.

Explore related MCP server guides

Curated product and capability guides containing this catalog record.

GitHub MCP ServersOfficial vs Community MCP Servers

Let’s talk about MCP security.

Share your details and our security team will contact you.