Skip to main content
Glama
kunwarVivek

mcp-github-project-manager

create_sprint

Create a new development sprint in GitHub Projects by specifying title, description, dates, and associated issues for structured project planning.

Instructions

Create a new development sprint

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYes
descriptionYes
startDateYes
endDateYes
issueIdsYes

Implementation Reference

  • Main handler function for create_sprint tool. Validates input parameters, constructs Sprint data object with PLANNED status, and delegates creation to GitHubSprintRepository.
    async createSprint(data: {
      title: string;
      description: string;
      startDate: string;
      endDate: string;
      issueIds?: string[];
    }): Promise<Sprint> {
      try {
        // Create data object that matches the expected type
        const sprintData: Omit<Sprint, "id" | "createdAt" | "updatedAt"> = {
          title: data.title,
          description: data.description,
          startDate: data.startDate,
          endDate: data.endDate,
          status: ResourceStatus.PLANNED,
          issues: data.issueIds?.map(id => id.toString()) || []
        };
    
        return await this.sprintRepo.create(sprintData);
      } catch (error) {
        throw this.mapErrorToMCPError(error);
      }
    }
  • Zod schema defining input validation for create_sprint tool parameters: title, description, startDate, endDate, and optional issueIds.
    export const createSprintSchema = z.object({
      title: z.string().min(1, "Sprint title is required"),
      description: z.string().min(1, "Sprint description is required"),
      startDate: z.string().datetime("Start date must be a valid ISO date string"),
      endDate: z.string().datetime("End date must be a valid ISO date string"),
      issueIds: z.array(z.string()).default([]),
    });
    
    export type CreateSprintArgs = z.infer<typeof createSprintSchema>;
  • Registration of createSprintTool in the central ToolRegistry singleton instance.
    this.registerTool(createSprintTool);
  • ToolDefinition export for create_sprint including name, description, schema reference, and usage examples.
    export const createSprintTool: ToolDefinition<CreateSprintArgs> = {
      name: "create_sprint",
      description: "Create a new development sprint",
      schema: createSprintSchema as unknown as ToolSchema<CreateSprintArgs>,
      examples: [
        {
          name: "Create two-week sprint",
          description: "Create a two-week sprint with initial issues",
          args: {
            title: "Sprint 1: User Authentication",
            description: "First sprint focused on user authentication features",
            startDate: "2025-06-01T00:00:00Z",
            endDate: "2025-06-15T00:00:00Z",
            issueIds: ["101", "102", "103"]
          }
        }
      ]
    };
  • MCP server dispatcher routes 'create_sprint' tool calls to ProjectManagementService.createSprint method.
    case "create_sprint":
      return await this.service.createSprint(args);
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/kunwarVivek/mcp-github-project-manager'

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