Skip to main content
Glama

jira_get_issue

Retrieve detailed information about a specific Jira issue using its unique key, enabling users to access issue data and expanded fields for project management and tracking.

Instructions

Get details of a Jira issue by its key

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
issueKeyYesThe Jira issue key (e.g., PROJ-123)
expandNoFields to expand

Implementation Reference

  • MCP tool handler in the CallToolRequestHandler switch statement. Validates input using GetIssueSchema, calls jiraClient.getIssue(), and returns the issue as JSON text.
    case "jira_get_issue": {
      const { issueKey, expand } = GetIssueSchema.parse(args);
      const issue = await jiraClient.getIssue(issueKey, expand);
      return {
        content: [{ type: "text", text: JSON.stringify(issue, null, 2) }],
      };
    }
  • Zod schema used for input validation in the tool handler.
    const GetIssueSchema = z.object({
      issueKey: z.string().describe("The Jira issue key (e.g., PROJ-123)"),
      expand: z.array(z.string()).optional().describe("Fields to expand"),
    });
  • src/index.ts:211-229 (registration)
    Tool registration in ListToolsRequestHandler, including JSON input schema for MCP client discovery.
    {
      name: "jira_get_issue",
      description: "Get details of a Jira issue by its key",
      inputSchema: {
        type: "object",
        properties: {
          issueKey: {
            type: "string",
            description: "The Jira issue key (e.g., PROJ-123)",
          },
          expand: {
            type: "array",
            items: { type: "string" },
            description: "Fields to expand",
          },
        },
        required: ["issueKey"],
      },
    },
  • Core implementation in JiraClient class that performs the HTTP request to Jira REST API to fetch the issue details.
    async getIssue(issueKey: string, expand?: string[]): Promise<JiraIssue> {
      const params = expand ? `?expand=${expand.join(",")}` : "";
      return this.request<JiraIssue>(`/issue/${issueKey}${params}`);
    }
  • TypeScript interface defining the structure of a JiraIssue returned by the API.
    export interface JiraIssue {
      id: string;
      key: string;
      self: string;
      fields: {
        summary: string;
        description?: string;
        status: {
          name: string;
          id: string;
        };
        priority?: {
          name: string;
          id: string;
        };
        assignee?: {
          displayName: string;
          emailAddress: string;
          name: string;
        };
        reporter?: {
          displayName: string;
          emailAddress: string;
          name: string;
        };
        created: string;
        updated: string;
        issuetype: {
          name: string;
          id: string;
        };
        project: {
          key: string;
          name: string;
        };
        labels?: string[];
        components?: Array<{ name: string }>;
        fixVersions?: Array<{ name: string }>;
        [key: string]: unknown;
      };
    }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yogeshhrathod/JiraMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server