jira_get_issue
Retrieve complete details of any Jira issue using its issue key. Access summary, status, assignee, and more via the Jira REST API.
Instructions
Get details of a specific Jira issue by its key (e.g., PROJ-123)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| issueKey | Yes | The Jira issue key (e.g., PROJ-123) |
Implementation Reference
- src/index.ts:56-70 (schema)Tool registration and input schema for jira_get_issue: defines the tool name, description, and input schema requiring 'issueKey' (a string like PROJ-123).
const tools: Tool[] = [ { name: 'jira_get_issue', description: 'Get details of a specific Jira issue by its key (e.g., PROJ-123)', inputSchema: { type: 'object', properties: { issueKey: { type: 'string', description: 'The Jira issue key (e.g., PROJ-123)', }, }, required: ['issueKey'], }, }, - src/index.ts:325-335 (handler)Handler for jira_get_issue: extracts the issueKey argument, calls getJiraClient().getIssue(), and returns the issue data as JSON.
case 'jira_get_issue': { const issue = await getJiraClient().getIssue(args.issueKey as string); return { content: [ { type: 'text', text: JSON.stringify(issue, null, 2), }, ], }; } - src/index.ts:56-70 (registration)Part of the tools array registered via ListToolsRequestSchema handler (lines 313-317), making jira_get_issue available as an MCP tool.
const tools: Tool[] = [ { name: 'jira_get_issue', description: 'Get details of a specific Jira issue by its key (e.g., PROJ-123)', inputSchema: { type: 'object', properties: { issueKey: { type: 'string', description: 'The Jira issue key (e.g., PROJ-123)', }, }, required: ['issueKey'], }, }, - src/jira-client.ts:105-108 (helper)Actual Jira API call: JiraClient.getIssue() makes a GET request to /issue/{issueKey} in the Jira REST API v2 and returns the response data.
async getIssue(issueKey: string): Promise<JiraIssue> { const response = await this.client.get(`/issue/${issueKey}`); return response.data; } - src/jira-client.ts:9-35 (helper)JiraIssue interface: Type definition for the issue object returned by getIssue(), including key, fields (summary, description, status, issuetype, priority, assignee, etc.).
export interface JiraIssue { key: string; fields: { summary: string; description?: string; status: { name: string; }; issuetype: { name: string; }; priority?: { name: string; }; assignee?: { displayName: string; emailAddress: string; }; reporter?: { displayName: string; emailAddress: string; }; created: string; updated: string; [key: string]: any; }; }