GitLab MCP Server

# 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 1. Clone this repository 2. Install dependencies: ```bash npm install ``` 3. Configure in your Claude settings file or Claude Desktop config file: ```json { "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 access - `read_api` for read-only access - `read_repository` and `write_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