gitlab_list_projects

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

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/gitlab_list_projects for the schema, then POST the same URL with its arguments for the data.

List all accessible GitLab projects. Returns project ID, name, path, description, star count, and URL. Use gitlab_get_project to fetch detailed info.

Parameters

NameTypeRequiredDescription
_apiKeystringyesGitLab personal access token
searchstringnoSearch projects by name
ownedbooleannoIf true, only return projects owned by the user (default: false)
per_pagenumbernoNumber of projects to return (default 20, max 100)

Example call

Arguments

{
  "_apiKey": "your-gitlab-api-key"
}

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_projects","arguments":{"_apiKey":"your-gitlab-api-key"}}}'

TypeScript (@pipeworx/sdk)

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

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

More examples

{
  "_apiKey": "your-gitlab-api-key",
  "search": "frontend",
  "owned": true,
  "per_page": 50
}

Response shape

Always returns: projects

FieldTypeDescription
projectsarray
Full JSON Schema
{
  "type": "object",
  "properties": {
    "projects": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "number",
            "description": "Project ID"
          },
          "name": {
            "type": "string",
            "description": "Project name"
          },
          "full_path": {
            "type": "string",
            "description": "Full path with namespace"
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Project description"
          },
          "stars": {
            "type": "number",
            "description": "Star count"
          },
          "forks": {
            "type": "number",
            "description": "Fork count"
          },
          "url": {
            "type": "string",
            "description": "Project web URL"
          },
          "default_branch": {
            "type": "string",
            "description": "Default branch name"
          },
          "visibility": {
            "type": "string",
            "description": "Project visibility (public/private/internal)"
          },
          "last_activity": {
            "type": "string",
            "description": "Last activity timestamp"
          }
        },
        "required": [
          "id",
          "name",
          "full_path",
          "description",
          "stars",
          "forks",
          "url",
          "default_branch",
          "visibility",
          "last_activity"
        ]
      }
    }
  },
  "required": [
    "projects"
  ]
}

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 September 22, 2026