原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

MCP Gitlab

作者:crunchtools版本 0.4.1i★ –i在你的电脑上运行
注册名称io.github.crunchtools/gitlab

安装

概览

作者提供的说明(英文原文)

Secure MCP server for GitLab projects, merge requests, issues, and pipelines

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 开发者工具

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 注册中心没有列出需要填写的密钥。

你需要

  • PyPI已安装 Python 的 uv(用于 uvx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "gitlab": {
      "command": "uvx",
      "args": [
        "mcp-gitlab-crunchtools"
      ]
    }
  }
}

在终端中运行这条命令

claude mcp add gitlab -- uvx mcp-gitlab-crunchtools

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "gitlab": {
      "command": "uvx",
      "args": [
        "mcp-gitlab-crunchtools"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "gitlab": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mcp-gitlab-crunchtools"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 crunchtools 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“开发者工具”中的其他服务器比较i

  • 星标数多于此分类中其他 1384 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 1384 个服务器的 8% 更新
  • 基础检查结果等于或优于此分类中其他 1384 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

MCP Gitlab 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.4.1)于8个月前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。

有什么可以替代它?

同一分类中有:GitHub, Desktop Commander, Cloudflare MCP

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

GitHub

作者:github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

电脑或云端★ 34,245MIT3天前更新
安装

Desktop Commander

作者:wonderwhy-er

MCP server for terminal commands, file operations, and process management

在你的电脑上运行★ 10,225MIT15天前更新
安装

Cloudflare MCP

作者:cloudflare

Cloudflare MCP servers

在云端运行★ 4,446Apache-2.014个月前更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

MCP GitLab CrunchTools

A secure MCP (Model Context Protocol) server for GitLab projects, merge requests, issues, pipelines, and search. Works with any GitLab instance (gitlab.com, self-hosted, or enterprise).

Overview

This MCP server is designed to be:

  • Secure by default - documented threat model (see SECURITY.md), Pydantic input validation, and the API token held as a SecretStr to prevent accidental logging
  • No third-party services - Runs locally via stdio, your API token never leaves your machine
  • Multi-instance - Works with gitlab.com, self-hosted GitLab, or enterprise instances via configurable URL
  • Cross-platform - Works on Linux, macOS, and Windows
  • Automatically updated - GitHub Actions monitor for CVEs and update dependencies
  • Containerized - Available at quay.io/crunchtools/mcp-gitlab built on Hummingbird Python base image

Naming Convention

ComponentName
GitHub repocrunchtools/mcp-gitlab
Containerquay.io/crunchtools/mcp-gitlab
Python package (PyPI)mcp-gitlab-crunchtools
CLI commandmcp-gitlab-crunchtools
Module importmcp_gitlab_crunchtools

Why Hummingbird?

The container image is built on the Hummingbird Python base image from Project Hummingbird, which provides:

  • Minimal CVE exposure - Built with a minimal package set, dramatically reducing the attack surface
  • Regular updates - Security patches are applied promptly
  • Optimized for Python - Pre-configured Python environment with uv package manager
  • Production-ready - Proper signal handling and non-root user defaults

Features

Project Management (5 tools)
  • list_projects - List projects with filtering and search
  • get_project - Get project details by ID or path
  • list_project_branches - List repository branches
  • get_project_branch - Get a single branch
  • list_project_commits - List commits with date/path filtering
Group Management (3 tools)
  • list_groups - List groups with filtering
  • get_group - Get group details by ID or path
  • list_group_projects - List projects in a group (with subgroup support)
Merge Requests (7 tools)
  • list_merge_requests - List MRs by state, labels, milestone
  • get_merge_request - Get MR details
  • create_merge_request - Create a new MR
  • update_merge_request - Update MR title, description, state, assignees
  • list_mr_notes - List comments on an MR
  • create_mr_note - Add a comment to an MR
  • get_mr_changes - Get the diff for an MR
Issues (6 tools)
  • list_issues - List issues by state, labels, milestone, assignee
  • get_issue - Get issue details
  • create_issue - Create a new issue
  • update_issue - Update issue title, description, state, labels
  • list_issue_notes - List comments on an issue
  • create_issue_note - Add a comment to an issue
Pipelines (4 tools)
  • list_pipelines - List CI/CD pipelines with status filtering
  • get_pipeline - Get pipeline details
  • list_pipeline_jobs - List jobs in a pipeline
  • get_job_log - Get job log output
Search (2 tools)
  • search_global - Search across all accessible GitLab resources
  • search_project - Search within a specific project

Installation

With uvx (Recommended)
uvx mcp-gitlab-crunchtools
With pip
pip install mcp-gitlab-crunchtools
With Container
podman run -e GITLAB_TOKEN=your_token \

quay.io/crunchtools/mcp-gitlab

Configuration

Environment Variables
VariableRequiredDefaultDescription
GITLAB_TOKENYes—Personal Access Token
GITLAB_URLNohttps://gitlab.comGitLab instance URL
SSL_CERT_FILENo—Custom CA bundle path, for self-hosted GitLab with an internal CA
GITLAB_SSL_VERIFYNotrueSet false to disable TLS verification (not recommended)
Creating a GitLab Personal Access Token
  1. Navigate to Access Tokens
  • Go to https://gitlab.com/-/user_settings/personal_access_tokens
  • Or: Avatar > Preferences > Access Tokens
  1. Create a Custom Token
  • Name: mcp-gitlab-crunchtools
  • Expiration: Set an appropriate date (90 days recommended)
  • Scopes: Select scopes based on your needs
  1. Scope Selection
ScopeAccess LevelCapabilities
read_apiRead-onlyList/view projects, issues, MRs, pipelines
apiFull accessAll features including create/update
  1. Copy and Store Token
  • Copy the token immediately (starts with glpat-)
  • Store securely in a password manager
Add to Claude Code
claude mcp add mcp-gitlab-crunchtools \

--env GITLAB_TOKEN=your_token_here \ -- uvx mcp-gitlab-crunchtools

For self-hosted GitLab:

claude mcp add mcp-gitlab-crunchtools \

--env GITLAB_TOKEN=your_token_here \ --env GITLAB_URL=https://gitlab.example.com \ -- uvx mcp-gitlab-crunchtools

For the container version:

claude mcp add mcp-gitlab-crunchtools \

--env GITLAB_TOKEN=your_token_here \ -- podman run -i --rm -e GITLAB_TOKEN quay.io/crunchtools/mcp-gitlab

Usage Examples

List Your Projects
User: List my GitLab projects

Assistant: [calls list_projects with membership=true]

View Merge Requests
User: Show open merge requests for my-org/backend

Assistant: [calls list_merge_requests with project_id="my-org/backend"]

Create an Issue
User: Create an issue in my-org/backend titled "Fix login timeout"

Assistant: [calls create_issue with title="Fix login timeout"]

Check Pipeline Status
User: Show failed pipelines for my-org/api

Assistant: [calls list_pipelines with status="failed"]

Search Code
User: Search for "authentication" in my-org/backend

Assistant: [calls search_project with scope="blobs"]

Security

This server was designed with security as a primary concern. See SECURITY.md for:

  • Threat model and attack vectors
  • Defense in depth architecture
  • Token handling best practices
  • Input validation rules
  • Audit logging
Key Security Features
  1. Token Protection
  • Stored as SecretStr (never accidentally logged)
  • Environment variable only (never in files or args)
  • Sanitized from all error messages
  1. Input Validation
  • Pydantic models for all inputs
  • Allowlist character validation for project/group IDs
  • Path traversal prevention
  1. API Hardening
  • HTTPS enforcement (except localhost)
  • TLS certificate validation
  • Request timeouts (30s)
  • Response size limits (10MB)
  1. Automated CVE Scanning
  • GitHub Actions scan dependencies weekly
  • Container security scanning with Trivy
  • CodeQL analysis for Python

Development

Setup
git clone https://github.com/crunchtools/mcp-gitlab.git

cd mcp-gitlab uv sync

Run Tests
uv run pytest
Lint and Type Check
uv run ruff check src tests

uv run mypy src

Build Container
podman build -t mcp-gitlab .

License

AGPL-3.0-or-later

Contributing

Contributions welcome! Please read SECURITY.md before submitting security-related changes.

Links

问 PopNx