Skip to main content
Glama
ParasSolanki

Jira MCP Server

by ParasSolanki

list_issues_from_sprint

Retrieve and display issues associated with a specific sprint in Jira by providing sprint and board IDs, with options to control result quantity and detail level.

Instructions

List issues from a sprint

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sprintIdYesThe ID of the sprint
boardIdYesThe ID of the board
maxResultsNoThe maximum number of results to return, (default: 5, max: 100)
startAtNoThe starting index of the returned boards
expandNoUse this parameter to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: `schema` and `names`. Comma separated list of options.

Implementation Reference

  • The main handler function that constructs the Jira API URL for fetching issues from a specific sprint on a board, makes the request, parses the response, and returns the issues.
    export async function listIssuesFromSprint(input: ListIssuesFromSprintInput) {
      const url = new URL(
        `/rest/agile/1.0/board/${input.boardId}/sprint/${input.sprintId}/issue`,
        env.JIRA_BASE_URL,
      );
    
      if (input.expand) url.searchParams.set("expand", input.expand);
      if (input.startAt) url.searchParams.set("startAt", input.startAt.toString());
      if (input.maxResults)
        url.searchParams.set("maxResults", input.maxResults.toString());
    
      const json = await $jiraJson(url.toString());
    
      if (json.isErr()) return err(json.error);
    
      const result = listIssuesFromSprintSchema.safeParse(json.value);
    
      if (!result.success) {
        return err(new Error("Invalid response from Jira"));
      }
    
      return ok(result.data);
    }
  • Zod input schema defining parameters for the list_issues_from_sprint tool: sprintId, boardId, optional maxResults, startAt, expand.
    export const listIssuesFromSprintInputSchema = z.object({
      sprintId: z.string().describe("The ID of the sprint"),
      boardId: z.string().describe("The ID of the board"),
      maxResults: z
        .number()
        .optional()
        .describe(
          "The maximum number of results to return, (default: 5, max: 100)",
        ),
      startAt: z
        .number()
        .optional()
        .describe("The starting index of the returned boards"),
      expand: z
        .string()
        .optional()
        .describe(
          "Use this parameter to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: `schema` and `names`. Comma separated list of options.",
        ),
    });
  • Tool registration object defining the name, description, and input schema for the MCP tool.
    export const LIST_ISSUES_FROM_SPRINT_TOOL: Tool = {
      name: "list_issues_from_sprint",
      description: "List issues from a sprint",
      inputSchema: zodToJsonSchema(
        listIssuesFromSprintInputSchema,
      ) as Tool["inputSchema"],
    };
  • src/app.ts:39-48 (registration)
    Array of all tools including LIST_ISSUES_FROM_SPRINT_TOOL, used by the MCP server for listing available tools.
    export const tools = [
      // list
      LIST_PROJECTS_TOOL,
      LIST_BOARDS_TOOL,
      LIST_SPRINTS_FROM_BOARD_TOOL,
      LIST_ISSUES_FROM_SPRINT_TOOL,
    
      // create
      CREATE_ISSUE_TOOL,
    ] satisfies Tool[];
  • Top-level handler dispatch for the tool: validates input, calls listIssuesFromSprint, handles errors, and formats response.
    if (name === LIST_ISSUES_FROM_SPRINT_TOOL.name) {
      const input = listIssuesFromSprintInputSchema.safeParse(args);
    
      if (!input.success) {
        return {
          isError: true,
          content: [{ type: "text", text: "Invalid input" }],
        };
      }
    
      const result = await listIssuesFromSprint(input.data);
    
      if (result.isErr()) {
        console.error(result.error.message);
        return {
          isError: true,
          content: [{ type: "text", text: "An error occurred" }],
        };
      }
    
      return {
        content: [
          { type: "text", text: JSON.stringify(result.value, null, 2) },
        ],
      };
    }

Tool Definition Quality

Score is being calculated. Check back soon.

Install Server

Other Tools

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/ParasSolanki/jira-mcp-server'

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