gitlab-mcp
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
Warehouse management tools
fork_repository, create_repository, search_projects
Branch operation tool
create_branch, get_default_branch_ref
File operation tool
get_file_contents
Problem management tools
create_issue, list_issues, get_issue, comment_on_issue, list_issue_comments, close_issue
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
Pipeline Tools
list_pipelines, get_pipeline, create_pipeline, pipeline_action
Group Tools
list_groups, get_group
User Tools
list_users, get_user