Skip to main content
Glama

get_overdue_milestones

Retrieve a list of overdue milestones in GitHub projects, optionally including related issues, to track and prioritize pending tasks effectively.

Instructions

Get a list of overdue milestones

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
includeIssuesYes
limitYes

Implementation Reference

  • Core handler function that fetches all milestones, filters those past due date and not closed/completed, sorts by due date ascending, limits the result, computes metrics for each (including issues if requested), and returns MilestoneMetrics array.
    async getOverdueMilestones(limit: number = 10, includeIssues: boolean = false): Promise<MilestoneMetrics[]> { try { const milestones = await this.milestoneRepo.findAll(); const now = new Date(); const overdueMilestones = milestones.filter(milestone => { if (!milestone.dueDate) return false; const dueDate = new Date(milestone.dueDate); return now > dueDate && milestone.status !== ResourceStatus.COMPLETED && milestone.status !== ResourceStatus.CLOSED; }); overdueMilestones.sort((a, b) => { if (!a.dueDate || !b.dueDate) return 0; return new Date(a.dueDate).getTime() - new Date(b.dueDate).getTime(); }); const limitedMilestones = overdueMilestones.slice(0, limit); const milestoneMetrics = await Promise.all( limitedMilestones.map(milestone => this.getMilestoneMetrics(milestone.id, includeIssues) ) ); return milestoneMetrics; } catch (error) { throw this.mapErrorToMCPError(error); } }
  • ToolDefinition including name, description, input schema (limit: positive int, includeIssues: boolean), and usage examples.
    export const getOverdueMilestonesTool: ToolDefinition<GetOverdueMilestonesArgs> = { name: "get_overdue_milestones", description: "Get a list of overdue milestones", schema: getOverdueMilestonesSchema as unknown as ToolSchema<GetOverdueMilestonesArgs>, examples: [ { name: "List overdue milestones", description: "Get the top 5 overdue milestones", args: { limit: 5, includeIssues: false, }, }, ], };
  • Registers the getOverdueMilestonesTool in the central ToolRegistry during built-in tools initialization.
    this.registerTool(getSprintMetricsTool); this.registerTool(getOverdueMilestonesTool); this.registerTool(getUpcomingMilestonesTool);
  • MCP server request handler dispatches 'call_tool' requests for 'get_overdue_milestones' to the ProjectManagementService implementation.
    case "get_overdue_milestones": return await this.service.getOverdueMilestones(args.limit, args.includeIssues);
  • Zod schema for input validation: limit (positive integer), includeIssues (boolean). Defines GetOverdueMilestonesArgs type.
    // Schema for get_overdue_milestones tool export const getOverdueMilestonesSchema = z.object({ limit: z.number().int().positive(), includeIssues: z.boolean(), }); export type GetOverdueMilestonesArgs = z.infer<typeof getOverdueMilestonesSchema>;

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