chris-miaskowski_custom-gitlab-mcp-server
0
The Custom GitLab MCP Server is designed to integrate AI assistants with GitLab repositories, providing functionalities for managing projects and resolving schema validation issues in the standard implementation.
Custom GitLab MCP Server
A custom implementation of the GitLab MCP (Model Context Protocol) server for integration with Claude and other MCP-compliant AI assistants.
Overview
This MCP server provides seamless integration with GitLab repositories, allowing AI assistants to:
- Search GitLab repositories
- Fetch file contents
- Create or update files
- Push multiple files in a single commit
- Create issues and merge requests
- Fork repositories
- Create branches
Fixed Implementation
This custom implementation fixes issues with schema validation that were present in the standard GitLab MCP server implementation, specifically for the search_repositories
tool.
Installation
- Clone this repository
- Install dependencies:
npm install
- Configure in your Claude settings file or Claude Desktop config file:
{ "mcpServers": { "github.com/modelcontextprotocol/servers/tree/main/src/gitlab": { "command": "node", "args": [ "/path/to/custom-gitlab-server/index.js" ], "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "your-gitlab-token", "GITLAB_API_URL": "https://your-gitlab-instance/api/v4" } } } }
Prerequisites
- Node.js (v14 or higher)
- GitLab Personal Access Token with appropriate scopes:
api
for full API accessread_api
for read-only accessread_repository
andwrite_repository
for repository operations
Available Tools
Tool Name | Description |
---|---|
search_repositories | Search for GitLab projects |
get_file_contents | Get contents of a file or directory |
create_or_update_file | Create or update a single file |
push_files | Push multiple files in a single commit |
create_repository | Create a new GitLab project |
create_issue | Create a new issue |
create_merge_request | Create a new merge request |
fork_repository | Fork a project |
create_branch | Create a new branch |
License
MIT