jira_get_statuses
Retrieve available issue statuses globally or per project, including categories and workflow details, by providing project key or issue type ID.
Instructions
Retrieves available statuses (global or project-specific, e.g., To Do, In Progress, Done). Returns status categories and workflow information.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| projectKey | No | Project key to get statuses for specific project | |
| issueTypeId | No | Issue type ID to get statuses for specific issue type |
Implementation Reference
- src/tools/get-statuses.ts:33-61 (handler)The main handler function handleGetStatuses that validates input, calls the API helper, and formats the response.
export async function handleGetStatuses(input: unknown): Promise<McpToolResponse> { try { const validated = validateInput(GetStatusesInputSchema, input); if (validated.projectKey && validated.issueTypeId) { log.info( `Getting statuses for project ${validated.projectKey} and issue type ${validated.issueTypeId}...` ); } else if (validated.projectKey) { log.info(`Getting statuses for project ${validated.projectKey}...`); } else { log.info('Getting global statuses...'); } const getParams: any = {}; if (validated.projectKey !== undefined) getParams.projectKey = validated.projectKey; if (validated.issueTypeId !== undefined) getParams.issueTypeId = validated.issueTypeId; const statuses = await getStatuses(getParams); log.info(`Found ${statuses.length} status(es)`); return formatStatusesResponse(statuses); } catch (error) { log.error('Error in handleGetStatuses:', error); return handleError(error); } }