Gitlab Mcp Server

io.github.dubuqingfeng由 GitHub 帳號 dubuqingfeng 發布v1.0.1更新於 Oct 24, 2026

GitLab MCP (Model Context Protocol) server for AI agents

發布方自己的服務:Gitlab

已驗證STDIO僅桌面開發者工具溝通與協作

概覽

AI 產生的概覽

在本機執行的 GitLab MCP 伺服器,讓 AI 助理讀取合併請求、分支與檔案,執行程式碼審查並寫入審查備註,可選擇發送 Lark 通知。

可以做什麼
讀取合併請求:取得指定 MR 詳細資訊,或列出專案的 MR 清單、分支與儲存庫檔案內容。執行程式碼審查:對合併請求、指定分支或指定提交進行審查。寫入審查備註:在 MR 中寫備註,可選擇只寫 GitLab、只發 Lark 或兩者都做。查詢程式碼審查規則:依專案類型與檔案取得規則、列出全部規則,並列出支援的專案類型(如 TypeScript、React、Go、Python、Rust、後端、資料庫)。
適用情境
適合希望助理參與 GitLab 合併請求審查流程的情境:取得 MR 背景資訊、審查分支或提交的變更、留下審查評論,並可選擇向 Lark 團隊發送通知。
執行需求
以 npm 套件形式透過 stdio 在本機執行。需要 GitLab 個人存取權杖,放在 GITLAB_TOKEN 中,可選 GITLAB_URL(預設 gitlab.com,不帶 /api/v4 後綴)。Lark 通知需要 LARK_WEBHOOK_URL,可選 LARK_SECRET_KEY;GITLAB_NOTE_MODE 與 LARK_ENABLE_NOTIFICATION 用於調整行為。需要存取 GitLab 與 Lark 的網路。
安裝前請注意
需要 GITLAB_TOKEN 中的 GitLab 個人存取權杖,可存取你的 GitLab 資料,應盡量縮小權限範圍。備註工具會向合併請求寫入評論,並可向 Lark Webhook 發送訊息,允許助理發布前請先確認。使用 lark_only 或 both 時,備註內容會傳送到第三方 Lark 端點。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Gitlab Mcp Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Gitlab Mcp server

支持服务:

  1. gitlab
  2. code-review-rules (代码审查规则)

场景

  1. gitlab 代码 review,获取信息
  2. 智能代码审查规则 - 根据项目类型提供代码审查建议

GitLab

GitLab 集成使用 @gitbeaker/rest 库支持获取 Merge Request 信息。

环境变量

bash
export GITLAB_TOKEN="your_personal_access_token"export GITLAB_URL="https://gitlab.com"  # 可选,默认为 gitlab.com(注意:不需要 /api/v4 后缀)

可用工具

  • get_merge_request: 获取特定 MR 的详细信息
  • list_merge_requests: 列出项目的 MR 列表
  • gitlab_code_review: 对 MR 进行综合代码审查
  • gitlab_branch_code_review: 对指定分支进行全面代码审查
  • gitlab_commit_review: 对指定提交进行代码审查
  • get_file_content: 获取仓库中特定文件的内容
  • list_branches: 列出项目的所有分支
  • write_gitlab_mr_note: 在 MR 中写入审查备注(支持灵活的通知模式)

依赖

  • @gitbeaker/rest: GitLab API 客户端库

详细使用说明请参考 GitLab 文档

Lark 机器人集成

支持通过 Lark(飞书)机器人发送通知,可以在写入 GitLab MR 评论时自动发送 Lark 通知。

环境变量

bash
export LARK_WEBHOOK_URL="https://open.feishu.cn/open-apis/bot/v2/hook/xxx"  # Lark 机器人 Webhook URLexport LARK_SECRET_KEY="your_secret_key"  # 可选:签名密钥(如果机器人启用了签名验证)export LARK_ENABLE_NOTIFICATION="true"  # 可选:是否启用通知,默认为 trueexport GITLAB_NOTE_MODE="gitlab_only"  # 可选:通知模式 - gitlab_only(仅GitLab)、lark_only(仅Lark)、both(两者都发),默认为 gitlab_only

功能特性

  • 灵活的通知模式:可以选择只写 GitLab、只发 Lark 或两者都做
  • 支持富文本卡片消息,包含项目名称、MR 标题、评论内容等信息
  • 支持自定义 Lark 消息(文本或卡片格式)
  • 失败不影响主流程,确保 GitLab 操作的可靠性

通知模式说明

  • gitlab_only: 仅写入 GitLab MR 评论,不发送 Lark 通知(默认)
  • lark_only: 仅发送 Lark 通知,不写入 GitLab MR 评论
  • both: 同时写入 GitLab MR 评论并发送 Lark 通知

使用示例

javascript
// 使用环境变量配置的默认模式await write_gitlab_mr_note({  projectId: "group/project",  mergeRequestIid: 123,  note: "代码审查完成,LGTM!"});
// 明确指定只写入 GitLabawait write_gitlab_mr_note({  projectId: "group/project",  mergeRequestIid: 123,  note: "内部备注",  notificationMode: "gitlab_only"});
// 只发送 Lark 通知,不写入 GitLabawait write_gitlab_mr_note({  projectId: "group/project",  mergeRequestIid: 123,  note: "团队通知:代码已审查",  notificationMode: "lark_only"});
// 强制两者都执行(覆盖环境变量)await write_gitlab_mr_note({  projectId: "group/project",  mergeRequestIid: 123,  note: "重要通知",  notificationMode: "both"});

Code Review Rules (代码审查规则)

智能代码审查规则系统,根据不同项目类型和文件扩展名提供相应的代码审查建议。

可用工具

  • get_code_review_rules: 获取适用于特定项目和文件的代码审查规则
  • list_all_code_review_rules: 列出所有可用的代码审查规则
  • get_project_types: 获取支持的项目类型信息

支持的项目类型

  • TypeScript / JavaScript
  • React
  • Node.js
  • Go
  • Python
  • Rust
  • Backend (通用后端规则)
  • Database (数据库相关)

规则类别

  • 🔒 Security (安全)
  • ⚡ Performance (性能)
  • 🔧 Maintainability (可维护性)
  • 🎨 Style (代码风格)
  • ✨ Best Practice (最佳实践)

项目特定规则

支持为特定项目配置专属的代码审查规则:

  • 可以通过外部 JSON 配置文件定义项目特定规则
  • 支持启用/禁用默认规则
  • 支持排除特定的默认规则
  • 可以添加额外的项目类型

详细使用说明请参考:

來源:README.md,提交 2a1422b

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Gitlab 整合