MCP ExplorerExplorer

Mcp Server Gitlab

@ZephyrDengon 9 months ago
2 MIT
FreeCommunity
AI Systems
MCP Server for GitLab integration, offering various RESTful API tools.

Overview

What is Mcp Server Gitlab

mcp-server-gitlab is an MCP Server designed for GitLab integration, providing various RESTful API tools to facilitate interaction with GitLab functionalities.

Use cases

Use cases include automating project management tasks, integrating GitLab functionalities into other applications, and enhancing collaboration through streamlined access to GitLab features.

How to use

To use mcp-server-gitlab, install dependencies with ‘bun install’, build the project using ‘bun run build’, and start the service with ‘bun run start’. Configure environment variables such as GITLAB_API_URL and GITLAB_TOKEN for proper operation.

Key features

Key features include tools for searching user projects, retrieving user tasks, searching project details, adding comments to merge requests, accepting merge requests, and making custom API calls to GitLab.

Where to use

mcp-server-gitlab can be used in software development environments where GitLab is utilized for version control and project management, particularly in teams that require automation and integration with other platforms.

Content

中文版

Build Status Node Version License

Downloads npm version smithery badge

mcp-gitlab MCP Server (English)

A GitLab integration server built on the fastmcp framework, providing various GitLab RESTful API tools. Supports integration with Claude, Smithery, and other platforms.

Features

  • GitlabSearchUserProjectsTool: Search users and their active projects by username
  • GitlabGetUserTasksTool: Get current user’s pending tasks
  • GitlabSearchProjectDetailsTool: Search projects and details
  • GitlabCreateMRCommentTool: Add comments to merge requests
  • GitlabAcceptMRTool: Accept and merge merge requests
  • GitlabUpdateMRTool: Update merge request assignee, reviewers, title, description, and labels
  • GitlabCreateMRTool: Create a new merge request with assignee and reviewers
  • GitlabRawApiTool: Call any GitLab API with custom parameters

Quick Start

# Install dependencies
bun install

# Build the project
bun run build

# Start the server
bun run start

Environment Variables

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

# Optional: Provide a mapping from usernames to user IDs (JSON string)
# This can reduce API calls, especially when referencing the same users frequently
# Example: '{"username1": 123, "username2": 456}'
GITLAB_USER_MAPPING={"username1": 123, "username2": 456}

# Optional: Provide a mapping from project names to project IDs (JSON string)
# Project IDs can be numbers or strings (e.g., 'group/project')
# This can reduce API calls and ensure the correct project is used
# Example: '{"project-name-a": 1001, "group/project-b": "group/project-b"}'
GITLAB_PROJECT_MAPPING={"project-name-a": 1001, "group/project-b": "group/project-b"}

Usage Examples

See USAGE.md for detailed examples of each tool’s parameters.

Project Structure

src/
├── server/
│   └── GitlabMCPServer.ts          # MCP server entry point
├── 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 config
USAGE.md                          # Usage examples
package.json
tsconfig.json

Integration

Claude Desktop Client

Add to your config:

{
  "mcpServers": {
    "@zephyr-mcp/gitlab": {
      "command": "npx",
      "args": [
        "-y",
        "@zephyr-mcp/gitlab"
      ]
    }
  }
}

Smithery

Use directly on Smithery platform:

smithery add @zephyr-mcp/gitlab

Or search “@zephyr-mcp/gitlab” in Smithery UI and add to your workspace.

Environment variables:

  • GITLAB_API_URL: Base URL of your GitLab API
  • GITLAB_TOKEN: Access token for GitLab API authentication

Related Links

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers