Gitlab

live DeveloperData

GitLab MCP — wraps the GitLab REST API v4 (BYO API key)

5 tools
0ms auth
free tier 50 calls/day

Tools

gitlab_list_projects

List GitLab projects accessible to the authenticated user. Returns project ID, name, path, description, stars, and URL.

No parameters required.

Try it
gitlab_get_project

Get a single GitLab project by ID or URL-encoded path. Returns full project details including name, description, visibility, stars, forks, and default branch.

No parameters required.

Try it
gitlab_list_issues

List issues in a GitLab project. Returns issue IID, title, state, labels, assignee, and URL.

No parameters required.

Try it
gitlab_list_mrs

List merge requests in a GitLab project. Returns MR IID, title, state, author, source/target branches, and URL.

No parameters required.

Try it
gitlab_get_file

Get a file from a GitLab repository. Returns the file content (decoded from base64), file name, size, and encoding.

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/gitlab/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/gitlab/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"gitlab_list_projects","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("gitlab_list_projects", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("gitlab mcp — wraps the gitlab rest api v4 (byo api key)");