GitLab MCP Server (in Python)
Model Context Protocol (MCP) server for GitLab integration, built on FastMCP.
This server is implemented in Python, with fastmcp.
Quick Start
- Build the Docker image:
docker build -t gitlab-mcp-server .
Integration with Cursor/Claude
In MCP Settings -> Add MCP server, add this config:
{
"mcpServers": {
"gitlab": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"GITLAB_TOKEN",
"-e",
"GITLAB_URL",
"gitlab-mcp-server:latest"
],
"env": {
"GITLAB_TOKEN": "token",
"GITLAB_URL": "https://gitlab.com/"
}
}
}
}
Note: Don't forget to replace GITLAB_TOKEN
and GITLAB_URL
values with your actual GitLab credentials and instance URL.
Getting GitLab Token
- Log in to your GitLab account
- Go to Settings -> Access Tokens
- Create a new token:
- Scopes: select the necessary permissions:
api
- for API accessread_repository
- for reading repositorieswrite_repository
- for writing to repositories
- Scopes: select the necessary permissions:
- Click "Create personal access token"
- Copy the generated token (it will be shown only once!)
Functions
- ✅1.create_repository
- ✅2.fork_repository
- ✅3.delete_repository
- ✅4.search_repositories
- ✅5.create_or_update_file
- ✅6.push_files
- ✅7.get_file_contents
- ✅8.create_issue
- ✅9.get_issues
- ✅10.create_merge_request
- ✅11.get_merge_request_diff
- ✅12.create_branches
- ✅13.delete_branches
- ✅14.create_tags
- ✅15.delete_tags