reset_progress
Permanently delete all study progress, including answers, mastery data, and review schedules. This action cannot be undone.
Instructions
WARNING: Permanently deletes ALL your study progress including answers, mastery data, and review schedules. This cannot be undone.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| confirmed | Yes | Must be true to confirm the reset |
Implementation Reference
- src/tools/reset-progress.ts:6-27 (handler)The main handler function for the reset_progress tool. Deletes all user progress data (answers, domain_mastery, review_schedule, session_state, study_sessions, handout_views, exam_attempts) across 7 tables, gated by a boolean 'confirmed' parameter.
export function registerResetProgress(server: McpServer, db: Database.Database, userConfig: UserConfig): void { server.tool( 'reset_progress', 'WARNING: Permanently deletes ALL your study progress including answers, mastery data, and review schedules. This cannot be undone.', { confirmed: z.boolean().describe('Must be true to confirm the reset') }, async ({ confirmed }) => { if (!confirmed) { return { content: [{ type: 'text' as const, text: 'Reset cancelled. Your progress is safe.' }] }; } const userId = userConfig.userId; db.prepare('DELETE FROM answers WHERE userId = ?').run(userId); db.prepare('DELETE FROM domain_mastery WHERE userId = ?').run(userId); db.prepare('DELETE FROM review_schedule WHERE userId = ?').run(userId); db.prepare('DELETE FROM session_state WHERE userId = ?').run(userId); db.prepare('DELETE FROM study_sessions WHERE userId = ?').run(userId); db.prepare('DELETE FROM handout_views WHERE userId = ?').run(userId); db.prepare('DELETE FROM exam_attempts WHERE userId = ?').run(userId); return { content: [{ type: 'text' as const, text: 'All progress has been reset, including exam history. You can start fresh with start_assessment.' }] }; } ); } - src/tools/reset-progress.ts:10-10 (schema)Input schema for reset_progress: requires a boolean 'confirmed' parameter that must be true to proceed with the reset, with Zod validation.
{ confirmed: z.boolean().describe('Must be true to confirm the reset') }, - src/tools/index.ts:13-42 (registration)Import of registerResetProgress from the reset-progress module.
import { registerResetProgress } from './reset-progress.js'; import { registerStartPracticeExam } from './start-practice-exam.js'; import { registerSubmitExamAnswer } from './submit-exam-answer.js'; import { registerGetExamHistory } from './get-exam-history.js'; import { registerFollowUp } from './follow-up.js'; import { registerStartCapstoneBuild } from './start-capstone-build.js'; import { registerCapstoneBuildStep } from './capstone-build-step.js'; import { registerCapstoneBuildStatus } from './capstone-build-status.js'; import { registerDashboard } from './dashboard.js'; export function registerTools(server: McpServer, db: Database.Database, userConfig: UserConfig): void { registerSubmitAnswer(server, db, userConfig); registerGetProgress(server, db, userConfig); registerGetCurriculum(server, db, userConfig); registerGetSectionDetails(server, db, userConfig); registerGetPracticeQuestion(server, db, userConfig); registerStartAssessment(server, db, userConfig); registerGetWeakAreas(server, db, userConfig); registerGetStudyPlan(server, db, userConfig); registerScaffoldProject(server, db, userConfig); registerResetProgress(server, db, userConfig); registerStartPracticeExam(server, db, userConfig); registerSubmitExamAnswer(server, db, userConfig); registerGetExamHistory(server, db, userConfig); registerFollowUp(server, db, userConfig); registerStartCapstoneBuild(server, db, userConfig); registerCapstoneBuildStep(server, db, userConfig); registerCapstoneBuildStatus(server, db, userConfig); registerDashboard(server, db, userConfig); } - src/tools/index.ts:33-42 (registration)Registration call: registerResetProgress is invoked with server, db, and userConfig inside the registerTools function.
registerResetProgress(server, db, userConfig); registerStartPracticeExam(server, db, userConfig); registerSubmitExamAnswer(server, db, userConfig); registerGetExamHistory(server, db, userConfig); registerFollowUp(server, db, userConfig); registerStartCapstoneBuild(server, db, userConfig); registerCapstoneBuildStep(server, db, userConfig); registerCapstoneBuildStatus(server, db, userConfig); registerDashboard(server, db, userConfig); }