article
README
🚀 mcp-gitlab MCP 服务器
mcp-gitlab MCP 服务器是基于 Model Context Protocol (MCP) 框架构建的 GitLab 集成服务器。它提供了多种 GitLab RESTful API 工具,并且支持与 Claude、Smithery 等平台进行集成,为用户在 GitLab 上的操作提供了便利。
🚀 快速开始
安装依赖
bun install
构建项目
bun run build
启动服务
bun run start
✨ 主要特性
- GitlabSearchUserProjectsTool:根据用户名搜索用户及其活跃项目
- GitlabGetUserTasksTool:获取当前用户的待办任务
- GitlabSearchProjectDetailsTool:搜索项目及详细信息
- GitlabCreateMRCommentTool:为合并请求添加评论
- GitlabAcceptMRTool:接受并合并合并请求
- GitlabUpdateMRTool:更新 Merge Request 的指派人、评审人、标题、描述、标签
- GitlabCreateMRTool:创建新的 Merge Request,支持指派 assignee 和 reviewers
- GitlabRawApiTool:自定义调用任意 GitLab API
📦 安装指南
环境变量配置
GITLAB_API_URL=https://your-gitlab-instance.com
GITLAB_TOKEN=your_access_token
💻 使用示例
基础用法
详见 USAGE.md,其中包含每个工具的参数示例。
📚 详细文档
项目结构
src/
├── server/
│ └── GitlabMCPServer.ts # MCP 服务器入口
├── tools/
│ ├── GitlabAcceptMRTool.ts
│ ├── GitlabCreateMRCommentTool.ts
│ ├── GitlabGetUserTasksTool.ts
│ ├── GitlabRawApiTool.ts
│ ├── GitlabSearchProjectDetailsTool.ts
│ ├── GitlabSearchUserProjectsTool.ts
│ └── gitlab/
│ ├── FieldFilterUtils.ts
│ ├── GitlabApiClient.ts
│ └── GitlabApiTypes.ts
├── utils/
│ ├── is.ts
│ └── sensitive.ts
smithery.json # Smithery 配置
USAGE.md # 使用示例
package.json
tsconfig.json
集成方式
Claude 桌面客户端
在配置文件中添加以下内容:
{
"mcpServers": {
"@zephyr-mcp/gitlab": {
"command": "npx",
"args": ["-y", "@zephyr-mcp/gitlab@0.1.0"]
}
}
}
配置参数说明
| 属性 | 详情 | |------|------| | GITLAB_API_URL | GitLab API 的基础 URL | | GITLAB_TOKEN | 用于验证 GitLab API 请求的访问令牌 |
微信扫一扫