gitlab_list_mrs

Pack: gitlab · Endpoint: https://gateway.pipeworx.io/gitlab/mcp

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

Parameters

NameTypeRequiredDescription
_apiKeystringyesGitLab personal access token
project_idstringyesProject ID or URL-encoded path
statestringnoFilter by state: “opened”, “closed”, “merged”, or “all” (default: “opened”)
per_pagenumbernoNumber of merge requests to return (default 20, max 100)

Example call

Arguments

{
  "_apiKey": "your-gitlab-api-key",
  "project_id": "123"
}

curl

curl -X POST https://gateway.pipeworx.io/gitlab/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"gitlab_list_mrs","arguments":{"_apiKey":"your-gitlab-api-key","project_id":"123"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('gitlab_list_mrs', {
  "_apiKey": "your-gitlab-api-key",
  "project_id": "123"
});

More examples

{
  "_apiKey": "your-gitlab-api-key",
  "project_id": "123",
  "state": "merged",
  "per_page": 50
}

Response shape

Always returns: merge_requests

FieldTypeDescription
merge_requestsarray
Full JSON Schema
{
  "type": "object",
  "properties": {
    "merge_requests": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "iid": {
            "type": "number",
            "description": "Merge request internal ID"
          },
          "title": {
            "type": "string",
            "description": "Merge request title"
          },
          "state": {
            "type": "string",
            "description": "Merge request state (opened/closed/merged)"
          },
          "author": {
            "type": [
              "string",
              "null"
            ],
            "description": "Author username"
          },
          "source_branch": {
            "type": "string",
            "description": "Source branch name"
          },
          "target_branch": {
            "type": "string",
            "description": "Target branch name"
          },
          "merge_status": {
            "type": "string",
            "description": "Merge status"
          },
          "url": {
            "type": "string",
            "description": "Merge request web URL"
          },
          "created_at": {
            "type": "string",
            "description": "Creation timestamp"
          },
          "updated_at": {
            "type": "string",
            "description": "Last update timestamp"
          }
        },
        "required": [
          "iid",
          "title",
          "state",
          "author",
          "source_branch",
          "target_branch",
          "merge_status",
          "url",
          "created_at",
          "updated_at"
        ]
      }
    }
  },
  "required": [
    "merge_requests"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "gitlab": {
      "url": "https://gateway.pipeworx.io/gitlab/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build May 9, 2026