get_checklist_summary
Generate a summary of checklist items with completion status to track task progress and monitor completion rates.
Instructions
Returns a summary of the checklist with completion status.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| include_descriptions | No | Whether to include detailed descriptions in the summary |
Implementation Reference
- src/index.ts:1182-1232 (handler)The main execution logic for the get_checklist_summary tool. Reads task data, builds a markdown summary of progress and checklist items (optionally including descriptions), and returns it as MCP content.private async getChecklistSummary(args: any): Promise<any> { try { const taskData = await this.readTaskData(); // Generate the summary const includeDescriptions = args?.include_descriptions || false; let summary = `# Task: ${taskData.task_description}\n\n`; if (taskData.context_for_all_tasks) { summary += `## Context\n\n${taskData.context_for_all_tasks}\n\n`; } summary += `## Progress: ${taskData.metadata.progress.completed}/${taskData.metadata.progress.total} (${taskData.metadata.progress.percentage}%)\n\n`; summary += '## Checklist\n\n'; taskData.checklist.forEach((item, index) => { const checkbox = item.done ? '[x]' : '[ ]'; summary += `${index}. ${checkbox} ${item.task}\n`; if (includeDescriptions) { if (item.detailed_description) { summary += ` - Description: ${item.detailed_description.replace(/\n/g, '\n ')}\n`; } // Context is intentionally excluded from summary to save context window space } }); return { content: [ { type: 'text', text: summary, }, ], }; } catch (error) { console.error('Error getting checklist summary:', error); return { content: [ { type: 'text', text: `Error getting checklist summary: ${error instanceof Error ? error.message : String(error)}`, }, ], isError: true, }; } }
- src/index.ts:397-406 (schema)Input schema definition for the get_checklist_summary tool, specifying an optional boolean parameter to include detailed descriptions.inputSchema: { type: 'object', properties: { include_descriptions: { type: 'boolean', description: 'Whether to include detailed descriptions in the summary', default: false } } }
- src/index.ts:394-407 (registration)Tool registration entry in the ListTools response, defining name, description, and input schema.{ name: 'get_checklist_summary', description: 'Returns a summary of the checklist with completion status.', inputSchema: { type: 'object', properties: { include_descriptions: { type: 'boolean', description: 'Whether to include detailed descriptions in the summary', default: false } } } },
- src/index.ts:450-451 (registration)Dispatch case in the CallToolRequest handler that routes calls to the getChecklistSummary method.case 'get_checklist_summary': return await this.getChecklistSummary(request.params.arguments);