用途
gitlab-mcp-server 是一个开源的 GitLab MCP 服务器,用于把 GitLab 的全部能力接入 AI 助手。它让用户用自然语言向 AI 助手提出 GitLab 相关需求,由服务器代为调用 GitLab 的 REST 与 GraphQL API 完成操作。支持 GitLab 各版本层级(Free/CE、Premium、Ultimate)、自托管实例或 GitLab.com(含其 Orbit 知识图谱),服务器会检测所在层级并调整可用操作目录。可与 Claude、Cursor、VS Code、Codex 及其他任意 MCP 客户端配合使用,并以单个自包含二进制形式运行。
主要能力与操作目录
服务器覆盖最多 1,098 项 GitLab 操作,来自 GitLab 的 REST 和 GraphQL API。默认提供两个动态发现工具(find 与 execute),即可触达整个操作目录;相比之下,若把每个工具单独列出,成本为 573,871 至 730,505 tokens。默认启动上下文为 11,343 tokens,设置 GITLAB_MCP_CAPABILITY_SURFACE=minimal 时为 1,941 tokens;该数值使用 cl100k_base 分词器测量并在 CI 中检查。除工具外,还包含 45 个资源和 37 个提示。
使用方式
- 认证:可使用个人、项目或群组访问令牌(需 api 权限;GitLab 接受时可用 read_api),也可使用细粒度令牌(按其授权逐操作判定),HTTP 模式支持 OAuth。每个操作的工具参考条目会说明其所需的 scope 和细粒度权限。
- 客户端配置:在支持的环境中以 docker 等命令作为服务器命令运行,并通过环境变量 GITLAB_TOKEN 传入令牌;注册命令本身不携带令牌,而是通过 -e GITLAB_TOKEN 从环境转发。自托管实例需同时设置 GITLAB_URL=https://gitlab.example.com;使用 Docker 镜像时还需在 docker 参数中加入 -e GITLAB_URL,因为容器只接收显式列出的变量。各渠道的逐客户端配置与验证步骤见安装指南。
- 试用:公共实例运行于 https://mcp.jmrp.io/gitlab,浏览器检查器在 OAuth 登录后以只读方式调用。该实例会经手令牌和所有请求,若需长期使用建议自行运行。
防护与表面
安全机制包括:只读模式、安全模式(对每个写操作先给出预览而非直接执行)、按名称排除工具,以及任何破坏性操作前的确认。提供三种工具表面(默认两个发现工具、按域一个工具、或按操作一个工具)和两种传输方式(桌面客户端的 stdio,或为共享部署且隔离各凭据的 HTTP)。
发布与合规
发布物可验证:签名校验和、每个二进制对应的 SBOM,以及每个构建产物的构建来源(provenance)。项目采用 MIT 许可证,由 José M. Requena Plens 维护,欢迎在 GitHub 贡献,贡献流程见 CONTRIBUTING.md,行为准则见 CODE_OF_CONDUCT.md,漏洞请按 SECURITY.md 私下报告。
适用场景与限制
适用场景包括:代码审查(如判断合并请求是否可安全合并)、排查流水线失败原因、查询分配给自己的议题、生成版本间的发布说明等日常 GitLab 工作。限制方面:操作可用性取决于所持令牌的权限与实例层级;只读模式与安全模式可限制写入;托管公共实例会经手令牌与请求,不适合长期使用。文件未提供具体的价格或收费信息;其文档站点提供英语与西班牙语版本,涵盖入门、配置、工具表面、HTTP 服务器模式、安全、隐私与故障排查。