gitlab-mcp

gitlab-mcp

3.3

If you are the rightful owner of gitlab-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A MCP (Model Context Protocol) server for interacting with GitLab API, providing tools for operations on repositories, issues, merge requests, and more.

The GitLab MCP Server is designed to facilitate seamless interaction with the GitLab API, allowing AI clients to perform a variety of operations on GitLab repositories, issues, merge requests, and more. It supports both synchronous and asynchronous execution patterns, making it versatile for different use cases. The server is built with a modular, domain-driven architecture, ensuring separation of concerns, type safety, maintainability, and extensibility. The architecture is organized into distinct layers, including API interaction, data models, business logic, and MCP tool implementations. This structure not only enhances code readability and maintainability but also allows for easy addition of new features. The server requires configuration through environment variables or an MCP JSON configuration file, ensuring secure and flexible setup. It offers a comprehensive set of tools for repository management, branch operations, file operations, issue management, merge request operations, job operations, group operations, and search tools, making it a powerful solution for managing GitLab resources.

Features

  • Separation of concerns with a modular architecture
  • Support for both synchronous and asynchronous operations
  • Comprehensive toolset for GitLab resource management
  • Type safety with Pydantic schemas for data validation
  • Extensible design for easy addition of new features

Tools

  1. Warehouse management tools

    fork_repository, create_repository, search_projects

  2. Branch operation tool

    create_branch, get_default_branch_ref

  3. File operation tool

    get_file_contents

  4. Problem management tools

    create_issue, list_issues, get_issue, comment_on_issue, list_issue_comments, close_issue

  5. Merge request tool

    create_merge_request, list_merge_requests, get_merge_request, comment_on_merge_request, list_merge_request_comments, list_merge_request_changes, get_merge_request_diff, suggest_code_in_merge_request, approve_merge_request, merge_merge_request, close_merge_request

  6. Pipeline Tools

    list_pipelines, get_pipeline, create_pipeline, pipeline_action

  7. Group Tools

    list_groups, get_group

  8. User Tools

    list_users, get_user