gitlab_list_project_issues
Retrieve issues from a GitLab project to track development progress. Filter by state to view opened, closed, or all issues for project management.
Instructions
Lists issues in a GitLab project.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| projectPath | Yes | The path of the GitLab project. | |
| state | No | Filter issues by state. |
Implementation Reference
- src/gitlab.service.ts:644-652 (handler)Core handler function that executes the GitLab API call to list issues for a project, optionally filtered by state.// New tool: List Project Issues async listProjectIssues(projectPath: string, state?: 'opened' | 'closed' | 'all'): Promise<any[]> { const encodedProjectPath = encodeURIComponent(projectPath); let endpoint = `projects/${encodedProjectPath}/issues`; if (state) { endpoint += `?state=${state}`; } return this.callGitLabApi<any[]>(endpoint); }
- src/index.ts:828-846 (registration)Tool registration in the MCP server's allTools array, including name, description, and input schema.{ name: 'gitlab_list_project_issues', description: 'Lists issues in a GitLab project.', inputSchema: { type: 'object', properties: { projectPath: { type: 'string', description: 'The path of the GitLab project.', }, state: { type: 'string', enum: ['opened', 'closed', 'all'], description: 'Filter issues by state.', }, }, required: ['projectPath'], }, },
- src/index.ts:1954-1968 (handler)MCP server request handler that processes tool calls for gitlab_list_project_issues and delegates to GitLabService.case 'gitlab_list_project_issues': { if (!gitlabService) { throw new Error('GitLab service is not initialized.'); } const { projectPath, state } = args as { projectPath: string; state?: 'opened' | 'closed' | 'all' }; const result = await gitlabService.listProjectIssues(projectPath, state); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; }