UNPKG

curriculum-mcp

Version:

A Model Context Protocol (MCP) server for managing online course curriculum, todos, project components, APIs, coding standards, and now, full course curriculums. This server provides tools and resources for Claude Code to interact with your project's know

202 lines 4.81 kB
export interface Unit { id: string; title: string; sequence: number; description: string; rationale: string; status: 'Draft' | 'In Development' | 'Complete' | 'Blocked'; dependsOnUnitId?: string; } export interface Lesson { id: string; unitId: string; title: string; sequence: number; status: 'Draft' | 'Ready for Dev' | 'In Development' | 'Needs Review' | 'Complete'; learningObjectives: string[]; keyConcepts: string[]; pedagogicalApproach: string; rationale: string; durationEstimateMinutes: number; dependsOnLessonIds?: string[]; } export interface LessonPhase { id: string; lessonId: string; phaseName: 'Hook' | 'Introduction' | 'Guided Practice' | 'Independent Practice' | 'Assessment' | 'Closing'; sequence: number; description: string; developerNotes?: string; } export interface AppConnection { id: string; lessonPhaseId: string; type: 'Page' | 'Component' | 'API Endpoint'; resourceIdentifier: string; usageDescription: string; } export interface Assessment { id: string; parentId: string; parentType: 'Lesson' | 'Unit'; title: string; type: 'Formative' | 'Summative' | 'Diagnostic'; format: 'Multiple Choice' | 'Code Challenge' | 'Short Answer' | 'Project'; description: string; evaluationCriteria: string[]; } export interface Task { id: string; title: string; description: string; relatedEntityId: string; relatedEntityType: 'Unit' | 'Lesson' | 'LessonPhase' | 'Assessment'; assigneeId?: string; status: 'Todo' | 'In Progress' | 'Blocked' | 'In Review' | 'Done'; priority: 'Low' | 'Medium' | 'High' | 'Critical'; blockerDescription?: string; } export interface Component { id: string; name: string; description: string; filePath: string; usageExample?: string; } export interface Api { id: string; name: string; endpoint: string; method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'; description: string; requestBody?: object; responseBody?: object; } export interface EnvironmentVariable { id: string; name: string; description: string; isPublic: boolean; } export interface StyleGuidePattern { id: string; element: string; description: string; className: string; usageExample?: string; } export interface StateManagement { id: string; library: string; storeDirectory: string; usagePattern: string; } export interface CustomHook { id: string; name: string; filePath: string; description: string; usage: string; } export interface Convention { id: string; rule: string; description: string; } export interface UnitSummary { id: string; title: string; sequence: number; status: string; } export interface LessonSummary { id: string; unitId: string; title: string; sequence: number; status: string; } export interface LessonPhaseSummary { id: string; lessonId: string; phaseName: string; sequence: number; } export interface AppConnectionSummary { id: string; lessonPhaseId: string; type: string; resourceIdentifier: string; } export interface AssessmentSummary { id: string; parentId: string; parentType: string; title: string; type: string; } export interface TaskSummary { id: string; title: string; relatedEntityId: string; relatedEntityType: string; status: string; priority: string; } export interface ComponentSummary { id: string; name: string; description: string; filePath: string; } export interface ApiSummary { id: string; name: string; endpoint: string; method: string; description: string; } export interface EnvironmentVariableSummary { id: string; name: string; description: string; isPublic: boolean; } export interface StyleGuidePatternSummary { id: string; element: string; description: string; className: string; } export interface StateManagementSummary { id: string; library: string; storeDirectory: string; } export interface CustomHookSummary { id: string; name: string; filePath: string; description: string; } export interface ConventionSummary { id: string; rule: string; description: string; } export interface Database { components: Component[]; apis: Api[]; environment: EnvironmentVariable[]; 'style-guide': StyleGuidePattern[]; state: StateManagement[]; hooks: CustomHook[]; conventions: Convention[]; units: Unit[]; lessons: Lesson[]; lessonPhases: LessonPhase[]; appConnections: AppConnection[]; assessments: Assessment[]; tasks: Task[]; } //# sourceMappingURL=types.d.ts.map