基本能力
产品定位
GitLab MCP Server 是一个用于 GitLab API 的服务,旨在简化项目管理、文件操作和代码协作流程。
核心功能
- 自动分支创建:在创建/更新文件或推送更改时,自动创建不存在的分支。
- 全面的错误处理:提供清晰的错误消息,帮助用户快速定位问题。
- Git 历史记录保留:所有操作均保持 Git 历史记录,避免强制推送。
- 批量操作:支持单文件和多文件操作,提高效率。
适用场景
- 开发团队进行代码管理和协作。
- 自动化文件操作和项目管理。
- 批量处理 Git 仓库中的文件和分支。
工具列表
- create_or_update_file:创建或更新项目中的单个文件。
- push_files:在单个提交中推送多个文件。
- search_repositories:搜索 GitLab 项目。
- create_repository:创建新的 GitLab 项目。
- get_file_contents:获取文件或目录的内容。
- create_issue:创建新的问题。
- create_merge_request:创建新的合并请求。
- fork_repository:分叉项目。
- create_branch:创建新的分支。
常见问题解答
- 如何获取个人访问令牌?:在 GitLab 的用户设置中创建个人访问令牌,并选择适当的权限范围。
- 如何配置 Docker 使用?:在
claude_desktop_config.json
中添加 Docker 配置,并设置环境变量。 - 如何构建 Docker 镜像?:使用
docker build
命令构建镜像。
使用教程
使用依赖
- 创建 GitLab 个人访问令牌:
- 访问 GitLab 的用户设置 > 访问令牌。
- 选择所需的权限范围(如
api
、read_api
、read_repository
和write_repository
)。 - 创建令牌并安全保存。
安装教程
-
Docker 安装:
json
{
"mcpServers": {
"gitlab": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"GITLAB_PERSONAL_ACCESS_TOKEN",
"-e",
"GITLAB_API_URL",
"mcp/gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>",
"GITLAB_API_URL": "https://gitlab.com/api/v4"
}
}
}
} -
NPX 安装:
json
{
"mcpServers": {
"gitlab": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-gitlab"
],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>",
"GITLAB_API_URL": "https://gitlab.com/api/v4"
}
}
}
}
调试方式
-
构建 Docker 镜像:
bash
docker build -t vonwig/gitlab:mcp -f src/gitlab/Dockerfile . -
设置环境变量:
GITLAB_PERSONAL_ACCESS_TOKEN
:GitLab 个人访问令牌(必需)。GITLAB_API_URL
:GitLab API 的基础 URL(可选,默认为https://gitlab.com/api/v4
)。