Custom GitLab MCP Server
Overview
Custom GitLab MCP Server is a tailored implementation of the GitLab Model Context Protocol (MCP) server designed for seamless integration with AI assistants like Claude.
To use the Custom GitLab MCP Server, clone the repository, install the necessary dependencies, and configure it in your Claude settings file with your GitLab personal access token and API URL.
- 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 schema validation issues from the standard implementation
- Integrating AI assistants with GitLab for enhanced project management.
- Automating repository operations through AI commands.
- Facilitating collaborative development with AI-driven issue and merge request management.
Add to your AI client
Use these steps to connect Custom GitLab MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"custom-gitlab-mcp-server-chris-miaskowski": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-custom-gitlab-mcp-server-chris-miaskowski"
]
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"custom-gitlab-mcp-server-chris-miaskowski": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-custom-gitlab-mcp-server-chris-miaskowski"
]
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"custom-gitlab-mcp-server-chris-miaskowski": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-custom-gitlab-mcp-server-chris-miaskowski"
]
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"custom-gitlab-mcp-server-chris-miaskowski": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-custom-gitlab-mcp-server-chris-miaskowski"
]
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"custom-gitlab-mcp-server-chris-miaskowski": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-custom-gitlab-mcp-server-chris-miaskowski"
]
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"custom-gitlab-mcp-server-chris-miaskowski": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-custom-gitlab-mcp-server-chris-miaskowski"
]
}
}
}FAQ
What is required to run the Custom GitLab MCP Server?
You need Node.js (v14 or higher) and a GitLab Personal Access Token with appropriate scopes.
Can I use this server with any GitLab instance?
Yes, as long as you have the correct API URL and access token.
Is this implementation open-source?
Yes, it is available on GitHub under the MIT license.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":2213,"uuid":"71a561cb-a032-4327-835a-bd63171aebe3","name":"custom-gitlab-mcp-server","title":"Custom GitLab MCP Server","description":"","avatar_url":"https://avatars.githubusercontent.com/u/29548931?v=4","created_at":"2025-03-09T04:10:26.196Z","updated_at":"2025-03-12T10:20:31.757Z","status":"created","author_name":"chris-miaskowski","author_avatar_url":"https://avatars.githubusercontent.com/u/29548931?v=4","tags":"[]","category":"developer-tools","is_featured":false,"sort":1,"url":"https://github.com/chris-miaskowski/custom-gitlab-mcp-server","target":"_self","content":"$29","summary":"$2a","img_url":null,"type":null,"metadata":"{\"star\":\"0\",\"license\":\"\",\"language\":\"JavaScript\",\"is_official\":false,\"latest_commit_time\":\"2025-03-07 13:16:09\"}","user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]