GitLab
与 GitLab 项目、议题、合并请求和流水线交互
配置
列出项目
操作
列出项目
个人访问令牌*
••••••••
每页结果数
每页结果数(默认:20,最大:100)
页码
页码(默认:1)
列出项目 (
gitlab_list_projects)列出已认证用户可访问的 GitLab 项目
输入
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
owned | boolean | 否 | 限制为当前用户拥有的项目 |
membership | boolean | 否 | 限制为当前用户是成员的项目 |
search | string | 否 | 按名称搜索项目 |
visibility | string | 否 | 按可见性筛选 (公开、内部、私有) |
orderBy | string | 否 | 按字段排序 (id, name, path, created_at, updated_at, last_activity_at) |
sort | string | 否 | 排序方向 (asc, desc) |
perPage | number | 否 | 每页结果数 (默认 20,最大 100) |
page | number | 否 | 分页页码 |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
projects | array | GitLab项目列表 |
total | number | 项目总数 |
获取项目
操作
获取项目
个人访问令牌*
••••••••
项目ID*
输入项目ID或路径(例如:username/project)
获取项目(
gitlab_get_project)获取特定 GitLab 项目的详细信息
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码的路径 (例如,"namespace/project") |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
project | 对象 | GitLab项目详情 |
列出议题
操作
列出议题
个人访问令牌*
••••••••
项目ID*
输入项目ID或路径(例如:username/project)
标签
输入标签(逗号分隔)
状态
全部
每页结果数
每页结果数量(默认:20,最大:100)
页码
页码(默认:1)
列出议题 (
gitlab_list_issues)列出 GitLab 项目中的议题
输入
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
state | 字符串 | 否 | 按状态筛选 (opened, closed, all) |
labels | 字符串 | 否 | 逗号分隔的标签名称列表 |
assigneeId | 数字 | 否 | 按分配用户 ID 筛选 |
milestoneTitle | 字符串 | 否 | 按里程碑标题筛选 |
search | 字符串 | 否 | 按标题和描述搜索议题 |
orderBy | 字符串 | 否 | 按字段排序 (created_at, updated_at) |
sort | 字符串 | 否 | 排序方向 (asc, desc) |
perPage | 数字 | 否 | 每页结果数 (默认 20,最大 100) |
page | 数字 | 否 | 分页页码 |
输出
| 参数 | 类型 | 说明 |
|---|---|---|
issues | 数组 | GitLab 议题列表 |
total | 数字 | 议题总数 |
获取议题
操作
获取议题
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
议题编号*
输入议题编号(例如 1 表示议题 #1)
获取议题 (
gitlab_get_issue)获取指定 GitLab 议题的详情
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
issueIid | 数字 | 是 | 项目中的议题编号 (GitLab UI 中显示的 #) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
issue | object | GitLab 议题详情 |
创建议题
操作
创建议题
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:用户名/项目)
标题*
输入标题
描述
输入描述(支持 Markdown)
标签
输入标签(用逗号分隔)
指派对象 ID
输入指派用户 ID(用逗号分隔)
里程碑 ID
输入里程碑 ID
创建议题(
gitlab_create_issue)在 GitLab 项目中创建新议题
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | string | Yes | 项目 ID 或 URL 编码路径 |
title | string | Yes | 议题标题 |
description | string | No | 议题描述(支持 Markdown) |
labels | string | No | 逗号分隔的标签名称列表 |
assigneeIds | array | No | 要分配的用户 ID 数组 |
milestoneId | number | No | 要分配的里程碑 ID |
dueDate | string | No | 到期日期,格式为 YYYY-MM-DD |
confidential | boolean | No | 议题是否为保密 |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
issue | 对象 | 创建的 GitLab 议题 |
更新议题
操作
更新议题
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:username/project)
议题编号*
输入议题编号(例如:1 表示议题 #1)
描述
输入描述(支持 Markdown)
标签
输入标签(以逗号分隔)
指派对象 ID
输入指派用户 ID(以逗号分隔)
里程碑 ID
输入里程碑 ID
状态事件
无更改
更新议题 (
gitlab_update_issue)更新 GitLab 项目中的现有议题
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
issueIid | number | 是 | 议题内部 ID (IID) |
title | string | 否 | 新议题标题 |
description | string | 否 | 新议题描述 (支持 Markdown) |
stateEvent | string | 否 | 状态事件 (关闭或重新打开) |
labels | string | 否 | 以逗号分隔的标签名称列表 |
assigneeIds | array | 否 | 要分配的用户 ID 数组 |
milestoneId | number | 否 | 要分配的里程碑 ID |
dueDate | string | 否 | 截止日期,格式为 YYYY-MM-DD |
confidential | boolean | 否 | 议题是否保密 |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
issue | object | 更新后的 GitLab 议题 |
删除议题
操作
删除议题
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
议题编号*
输入议题编号(例如,1 表示议题 #1)
删除议题 (
gitlab_delete_issue)从 GitLab 项目中删除议题
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
issueIid | number | 是 | 议题内部 ID (IID) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
success | boolean | 议题是否已成功删除 |
添加议题评论
操作
添加问题评论
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:username/project)
问题编号*
输入问题编号(例如:1 表示问题 #1)
评论*
输入评论文本(支持 Markdown)
添加议题评论 (
gitlab_create_issue_note)为 GitLab 议题添加评论
输入
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
issueIid | number | 是 | 议题内部 ID (IID) |
body | string | 是 | 评论内容 (支持 Markdown) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
note | 对象 | 创建的评论 |
列出合并请求
操作
列出合并请求
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
标签
输入标签(以逗号分隔)
状态
全部
每页结果数
每页结果数(默认:20,最大:100)
页码
页码(默认:1)
列出合并请求(
gitlab_list_merge_requests)列出 GitLab 项目中的合并请求
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
state | string | 否 | 按状态筛选 (opened, closed, merged, all) |
labels | string | 否 | 以逗号分隔的标签名称列表 |
sourceBranch | string | 否 | 按源分支筛选 |
targetBranch | string | 否 | 按目标分支筛选 |
orderBy | string | 否 | 按字段排序 (created_at, updated_at) |
sort | string | 否 | 排序方向 (asc, desc) |
perPage | number | 否 | 每页结果数量 (默认 20,最大 100) |
page | number | 否 | 分页页码 |
输出
| 参数 | 类型 | 说明 |
|---|---|---|
mergeRequests | 数组 | GitLab 合并请求列表 |
total | 数字 | 合并请求总数 |
获取合并请求
操作
获取合并请求
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:username/project)
MR 编号*
输入 MR 编号(例如:!1 对应 1)
获取合并请求(
gitlab_get_merge_request)获取指定 GitLab 合并请求的详细信息
输入
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
mergeRequestIid | number | 是 | 合并请求内部 ID (IID) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
mergeRequest | 对象 | GitLab 合并请求详情 |
创建合并请求
操作
创建合并请求
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:username/project)
标题*
输入标题
描述
输入描述(支持 Markdown)
源分支*
输入源分支名称
目标分支*
输入目标分支名称(例如:main)
标签
输入标签(以逗号分隔)
指派对象 ID
输入指派对象的用户 ID(以逗号分隔)
删除源分支
Disabled
创建合并请求 (
gitlab_create_merge_request)在 GitLab 项目中创建新的合并请求
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
sourceBranch | 字符串 | 是 | 源分支名称 |
targetBranch | 字符串 | 是 | 目标分支名称 |
title | 字符串 | 是 | 合并请求标题 |
description | 字符串 | 否 | 合并请求描述 (支持 Markdown) |
labels | 字符串 | 否 | 以逗号分隔的标签名称列表 |
assigneeIds | 数组 | 否 | 要指派的用户 ID 数组 |
milestoneId | 数字 | 否 | 要指派的里程碑 ID |
removeSourceBranch | 布尔值 | 否 | 合并后删除源分支 |
squash | 布尔值 | 否 | 合并时压缩提交 |
draft | 布尔值 | 否 | 标记为草稿 (工作进行中) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
mergeRequest | object | 创建的 GitLab 合并请求 |
更新合并请求
操作
更新合并请求
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:用户名/项目)
MR 编号*
输入 MR 编号(例如:!1 中的 1)
描述
输入描述(支持 Markdown)
标签
输入标签(逗号分隔)
分配人 ID
输入分配人用户 ID(逗号分隔)
状态事件
无变化
更新合并请求(
gitlab_update_merge_request)更新 GitLab 项目中的现有合并请求
输入
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
mergeRequestIid | number | 是 | 合并请求内部 ID (IID) |
title | string | 否 | 新的合并请求标题 |
description | string | 否 | 新的合并请求描述 |
stateEvent | string | 否 | 状态事件 (close 或 reopen) |
labels | string | 否 | 以逗号分隔的标签名称列表 |
assigneeIds | array | 否 | 要分配的用户 ID 数组 |
milestoneId | number | 否 | 要分配的里程碑 ID |
targetBranch | string | 否 | 新的目标分支 |
removeSourceBranch | boolean | 否 | 合并后删除源分支 |
squash | boolean | 否 | 合并时压缩提交 |
draft | boolean | 否 | 标记为草稿 (工作进行中) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
mergeRequest | object | 更新后的 GitLab 合并请求 |
合并合并请求
操作
合并合并请求
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
MR 编号*
输入 MR 编号(例如 1 表示 !1)
删除源分支
Disabled
压缩提交
Disabled
合并提交信息
输入自定义合并提交信息(可选)
合并合并请求 (
gitlab_merge_merge_request)在 GitLab 项目中合并合并请求
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
mergeRequestIid | number | 是 | 合并请求内部 ID (IID) |
mergeCommitMessage | string | 否 | 自定义合并提交信息 |
squashCommitMessage | string | 否 | 自定义压缩提交信息 |
squash | boolean | 否 | 合并前压缩提交 |
shouldRemoveSourceBranch | boolean | 否 | 合并后删除源分支 |
mergeWhenPipelineSucceeds | boolean | 否 | 流水线成功时合并 |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
mergeRequest | object | 已合并的 GitLab 合并请求 |
添加 MR 评论
操作
添加 MR 评论
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:用户名/项目)
MR 编号*
输入 MR 编号(例如:!1 对应 1)
评论*
输入评论文本(支持 Markdown)
添加 MR 评论 (
gitlab_create_merge_request_note)向 GitLab 合并请求添加评论
输入
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
mergeRequestIid | 数字 | 是 | 合并请求内部 ID (IID) |
body | 字符串 | 是 | 评论正文 (支持 Markdown) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
note | 对象 | 创建的评论 |
列出流水线
操作
列出流水线
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:username/project)
流水线状态
全部
每页结果数
每页结果数(默认:20,最大:100)
页码
页码(默认:1)
列出流水线(
gitlab_list_pipelines)列出 GitLab 项目中的流水线
输入
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
ref | string | 否 | 按 ref 筛选 (分支或标签) |
status | string | 否 | 按状态筛选 (created、waiting_for_resource、preparing、pending、running、success、failed、canceled、skipped、manual、scheduled) |
orderBy | string | 否 | 按字段排序 (id、status、ref、updated_at、user_id) |
sort | string | 否 | 排序方向 (asc、desc) |
perPage | number | 否 | 每页结果数量 (默认 20,最大 100) |
page | number | 否 | 分页页码 |
输出
| 参数 | 类型 | 说明 |
|---|---|---|
pipelines | array | GitLab 流水线列表 |
total | number | 流水线总数 |
获取流水线
操作
获取流水线
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
流水线 ID*
输入流水线 ID
获取流水线 (
gitlab_get_pipeline)获取特定 GitLab 流水线的详细信息
输入
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
projectId | string | 是 | 项目 ID 或 URL 编码路径 |
pipelineId | number | 是 | 流水线 ID |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
pipeline | object | GitLab 流水线详情 |
创建流水线
操作
创建流水线
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
分支/标签*
输入分支或标签名称
创建流水线(
gitlab_create_pipeline)在 GitLab 项目中触发新流水线
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
ref | 字符串 | 是 | 运行流水线的分支或标签 |
variables | 数组 | 否 | 流水线变量数组 (每项包含 key、value 以及可选的 variable_type) |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
pipeline | 对象 | 创建的 GitLab 流水线 |
重试流水线
操作
重试流水线
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如 username/project)
流水线 ID*
输入流水线 ID
重试流水线 (
gitlab_retry_pipeline)重试失败的 GitLab 流水线
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
pipelineId | 数字 | 是 | 流水线 ID |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
pipeline | 对象 | 重试后的 GitLab 流水线 |
取消流水线
操作
取消流水线
个人访问令牌*
••••••••
项目 ID*
输入项目 ID 或路径(例如:用户名/项目)
流水线 ID*
输入流水线 ID
取消流水线 (
gitlab_cancel_pipeline)取消正在运行的 GitLab 流水线
输入
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
projectId | 字符串 | 是 | 项目 ID 或 URL 编码路径 |
pipelineId | 数字 | 是 | 流水线 ID |
输出
| 参数 | 类型 | 描述 |
|---|---|---|
pipeline | 对象 | 已取消的 GitLab 流水线 |
使用说明
将 GitLab 集成到工作流中。可以管理项目、议题、合并请求、流水线,并添加评论。支持所有核心 GitLab DevOps 操作。
说明
- 类别:
tools - 类型:
gitlab