返回 MCP 目录
public公开dns本地运行

mcp-server-gitlab

基于fastmcp框架的GitLab集成服务器,提供多种GitLab API工具

article

README

🚀 mcp-gitlab MCP 服务器(中文版)

mcp-gitlab MCP 服务器基于 fastmcp 框架构建,是一个强大的 GitLab 集成服务器。它提供了丰富的 GitLab RESTful API 工具,还支持与 Claude、Smithery 等平台集成,能有效提升开发效率。

✨ 主要特性

  • GitlabSearchUserProjectsTool:可依据用户名精准搜索用户及其活跃项目。
  • GitlabGetUserTasksTool:帮助获取当前用户的待处理任务。
  • GitlabSearchProjectDetailsTool:用于搜索项目并获取详细信息。
  • GitlabCreateMRCommentTool:支持向合并请求添加评论。
  • GitlabAcceptMRTool:能够接受并合并合并请求。
  • GitlabUpdateMRTool:可更新合并请求的负责人、审查人、标题、描述和标签。
  • GitlabCreateMRTool:可以创建新的合并请求,还支持指定负责人和审查人。
  • GitlabRawApiTool:允许使用自定义参数调用任意 GitLab API。

🚀 快速开始

# 安装依赖
bun install

# 构建项目
bun run build

# 启动服务器
bun run start

📚 详细文档

环境变量

GITLAB_API_URL=https://your-gitlab-instance.com
GITLAB_TOKEN=your_access_token

# 可选:提供用户名到用户 ID 的映射(JSON 字符串)
# 这可以减少 API 调用次数,特别是在频繁引用相同用户时
# 示例:{"username1": 123, "username2": 456}
GITLAB_USER_MAPPING={"username1": 123, "username2": 456}

# 可选:提供项目名到项目 ID 的映射(JSON 字符串)
# 项目 ID 可以是数字或字符串(例如:"group/project")
# 这可以减少 API 调用并确保正确使用项目
# 示例:{"project-name-a": 1001, "group/project-b": "group/project-b"}

使用示例

详细示例请参见 USAGE.md

项目结构

src/
├── server/
│   └── GitlabMCPServer.ts          # MCP 服务器入口文件
├── tools/
│   ├── GitlabAcceptMRTool.ts
│   ├── GitlabCreateMRCommentTool.ts
│   ├── GitlabGetUserTasksTool.ts
│   ├── GitlabRawApiTool.ts
│   ├── GitlabCreateMRTool.ts
│   └── GitlabUpdateMRTool.ts
└── README.md                      # 项目文档

相关链接

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端