mcpField
R
repocollab

repocollab

Local
github.com/CloudCorpRecordsVersion Control0Updated 2w ago

About repocollab

repocollab is an MCP server and CLI for common GitLab project tasks, aimed at agents and developers. It covers repository, file, issue, and merge request operations through the GitLab REST v4 API.

Key features

  1. 01Search, create, and fork projects
  2. 02Create branches and manage files
  3. 03Create and track issues
  4. 04Create and inspect merge requests
  5. 05Support GitLab self-managed instances

Use cases

  1. 01Find or set up a GitLab project
  2. 02Read or update repository files
  3. 03Open and review issues
  4. 04Create and track merge requests

MCP support

Exposes 12 tools to MCP clients for GitLab project, branch, file, issue, and merge request operations. It authenticates with a GitLab personal access token.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-repocollab": {
"command": "npx",
"args": [
"-y",
"@reneturcios/repocollab"
]
}
}
}
Run commandnpx -y @reneturcios/repocollab

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/repocollab0.1.0
ocighcr.io/cloudcorprecords/repocollab:0.1.0

Tools

12

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
searchstringYesThe search query string matched against project name, path, and description.

Details

From the project README

repocollab

repocollab puts the everyday GitLab project workflow behind an MCP server: find a project, create or fork one, cut a branch, read and write files, and open and track issues and merge requests. It is a core subset of the documented GitLab MCP surface — the twelve tools an agent reaches for most — talking to the GitLab REST v4 API.

Authentication is a personal access token in GITLAB_PERSONAL_ACCESS_TOKEN, sent as a Bearer token. By default the server talks to https://gitlab.com/api/v4; point GITLAB_API_URL at a self-managed instance to use that instead. A project_id is a string throughout: either the numeric project id or the URL-encoded project path both work.

Install

npx @reneturcios/repocollab search_repositories --search my-project
docker run -i -e GITLAB_PERSONAL_ACCESS_TOKEN ghcr.io/cloudcorprecords/repocollab

CLI

repocollab search_repositories --search my-project
repocollab create_repository --name demo --visibility private
repocollab get_file_contents --project-id group/demo --file-path README.md --ref main
repocollab create_issue --project-id 42 --title "Bug report" --labels bug
repocollab list_merge_requests --project-id 42 --state opened
repocollab --version

Exit codes: 0 success, 1 API error, 2 usage error.

MCP server

npx -y @reneturcios/repocollab mcp
{
  "mcpServers": {
    "repocollab": {
      "command": "npx",
      "args": ["-y", "@reneturcios/repocollab", "mcp"],
      "env": { "GITLAB_PERSONAL_ACCESS_TOKEN": "glpat-..." }
    }
  }
}
Tools
ToolRequiredOptional
search_repositoriessearch—
create_repositorynamedescription, visibility
fork_repositoryproject_idnamespace
create_branchproject_id, branchref
get_file_contentsproject_id, file_pathref
create_or_update_fileproject_id, file_path, content, commit_message, branchprevious_path
create_issueproject_id, titledescription, labels
list_issuesproject_idstate, per_page, page
get_issueproject_id, issue_iid—
create_merge_requestproject_id, title, source_branch, target_branchdescription
list_merge_requestsproject_idstate, per_page, page
get_merge_requestproject_id, merge_request_iid—

create_or_update_file checks whether the file already exists on the target branch and creates it (POST) or updates it (PUT) accordingly. A missing token is reported as a tool error naming GITLAB_PERSONAL_ACCESS_TOKEN; upstream HTTP errors surface with their status and GitLab's message.

Out of scope in this subset: pipelines and CI, wiki, snippets, milestones, label/epic management, user and group administration, protected branches, repository tree/archive/compare detail, merge request approvals, discussions and notes beyond get_merge_request, and search beyond projects.

Development

npm install
npm run build
npm test
npm run dev

Tests run entirely on fake-fetch fixtures; no network is used.

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.