gitlab_list_issues
Pack: gitlab · Endpoint: https://gateway.pipeworx.io/gitlab/mcp
Search issues in a GitLab project by project ID. Returns issue ID, title, state (open/closed), labels, assignee, and URL. Filter by status and labels.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
_apiKey | string | yes | GitLab personal access token |
project_id | string | yes | Project ID or URL-encoded path |
state | string | no | Filter by state: “opened”, “closed”, or “all” (default: “opened”) |
search | string | no | Search issues by title or description |
per_page | number | no | Number of issues 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_issues","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_issues', {
"_apiKey": "your-gitlab-api-key",
"project_id": "123"
});
More examples
{
"_apiKey": "your-gitlab-api-key",
"project_id": "123",
"state": "closed",
"search": "bug",
"per_page": 30
}
Response shape
Always returns: issues
| Field | Type | Description |
|---|---|---|
issues | array |
Full JSON Schema
{
"type": "object",
"properties": {
"issues": {
"type": "array",
"items": {
"type": "object",
"properties": {
"iid": {
"type": "number",
"description": "Issue internal ID"
},
"title": {
"type": "string",
"description": "Issue title"
},
"state": {
"type": "string",
"description": "Issue state (opened/closed)"
},
"labels": {
"type": "array",
"items": {
"type": "string"
},
"description": "Issue labels"
},
"assignee": {
"type": [
"string",
"null"
],
"description": "Assignee username"
},
"author": {
"type": [
"string",
"null"
],
"description": "Author username"
},
"url": {
"type": "string",
"description": "Issue web URL"
},
"created_at": {
"type": "string",
"description": "Creation timestamp"
},
"updated_at": {
"type": "string",
"description": "Last update timestamp"
}
},
"required": [
"iid",
"title",
"state",
"labels",
"assignee",
"author",
"url",
"created_at",
"updated_at"
]
}
}
},
"required": [
"issues"
]
}
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.