使用说明
GitLab MCP 服务器
用于与GitLab API交互的MCP服务器——获取管道、作业、日志、工件的信息并下载以供进一步分析。
快速连接
- 在MCP配置中添加:
{
"mcpServers": {
"gitlab": {
"command": "npx",
"args": [
"-y",
"github:khud-funmatica/gitlab-mcp-server"
],
"env": {
"GITLAB_TOKEN": "your_gitlab_token_here"
}
}
}
}
- 好了! 重启MCP客户端后即可使用。
可用的工具
获取仓库URL
获取当前Git仓库的URL。自动在当前目录或父目录中查找Git仓库。
参数:
project_path(必填):项目目录的完整路径
返回:
- 仓库的URL(远程原点)
- 找到的Git仓库的路径
- 检查GitLab仓库是否为(某个特定的)仓库
获取最新流水线
获取当前仓库的最新GitLab流水线信息。
参数:
project_path(必填):项目目录的完整路径
返回:
- 流水线ID
- 管道状态
- 分支和提交的SHA
- 在网页界面中查看流水线的链接
- 创建和更新时间
- 执行时长(如适用)
- 代码覆盖率(如可用)
- 项目相关信息
获取流水线详情
获取有关GitLab流水线的详细信息,包括作业、日志、工件和追踪。帮助AI代理诊断流水线中的问题。
参数:
project_path(必填):项目目录的完整路径pipeline_id(可选):特定流水线的ID。如果未指定,则将获取最后一个流水线。
返回:
- 关于流水线的详细信息(状态、分支、SHA、执行时间等)
- 流水线中所有作业及其状态的列表
- 每个作业(任务)的执行日志(trace)
- 有关流水线工件的信息
- 每个作业的网页界面链接
- 每个作业的执行时长
- 关于标签和作业阶段的信息
特点:
- 自动获取所有作业的日志(追踪)
- 限制日志长度为2000个字符以提高可读性
- 处理获取单个作业日志时的错误
- 为AI代理提供全面的诊断信息
下载作业工件
下载特定GitLab作业的工件,以ZIP压缩包形式保存,以便后续分析。
参数:
project_path(必填):项目目录的完整路径job_id(必填):用于下载神器的任务IDdownload_path(可选):保存工件的路径。如果未指定,则会创建一个文件夹artifacts/job_ID在项目目录中
返回:
- 关于已下载的存档信息(大小、路径)
- 下载状态
- 文物研究指南
特点:
- 自动创建保存目录
- 下载ZIP格式的存档文件
- 提供有关文件大小和位置的详细信息
下载流水线工件
下载GitLab流水线中所有作业的工件,以单独的ZIP压缩包形式保存,以便后续分析。
参数:
project_path(必填):项目目录的完整路径pipeline_id(可选):流水线ID。如果未指定,则使用最后一个流水线download_path(可选):保存工件的路径。如果未指定,则会创建一个文件夹。artifacts/pipeline_ID在项目目录中
返回:
- 所有已下载的存档列表
- 关于每个作业及其工件的详细信息
- 成功与失败下载的统计数据
- 文物研究指南
特点:
- 下载流水线中所有有工件的作业的工件
- 为每个作业创建单独的ZIP存档
- 处理单个作业下载时的错误
- 提供详细的下载结果统计数据
要求
- Node.js 版本 >= 18.0.0
- MCP客户端
- GitLab令牌(在GitLab中创建→“用户设置”→“访问令牌”,并赋予权限)
read_api和read_repository)
