Summary
GitLab work without leaving the conversation.
The everyday moves — read a file, commit a change, open an issue, raise a merge request — happen where you were already describing them.
What it is
A GitLab API server covering file operations, issues, merge requests and project management. A write that targets a missing branch creates it, and history is preserved rather than force-pushed over.
What you get
- create_or_update_file commits a single file; push_files commits several in one commit
- get_file_contents reads a file or a directory at a branch, tag or commit you name
- create_issue opens an issue with assignee_ids, labels and a milestone_id
- create_merge_request opens an MR between a source_branch and a target_branch; get_merge_request_raw_diff returns the diff itself
- create_branch, fork_repository and create_repository cover the project-level moves
- search_repositories finds projects, paginated with per_page
- Branches are created automatically when a write targets one that is not there yet
Requirements
A GitLab account and an API token with access to the projects you want to work in.
Setup effort
One command plus a key — docker run --rm -i -e GITLAB_PERSONAL_ACCESS_TOKEN -e GITLAB_API_URL mcp/gitlab, then supply credentials
