hatch-slidev-builder-mcp
Version:
A comprehensive MCP server for creating Slidev presentations with component library, interactive elements, and team collaboration features
132 lines (131 loc) • 3.92 kB
TypeScript
/**
* Process Orchestrator - Implements the Enhanced Slidev Builder Process
* Coordinates the 5-step process: Story Architecture → Main Idea → Idea Development → Slides Deck → Assets Deck
*/
import { z } from 'zod';
export declare const StoryArchitectureSchema: z.ZodObject<{
narrativeArc: z.ZodString;
audienceJourney: z.ZodString;
messageHierarchy: z.ZodObject<{
primary: z.ZodString;
secondary: z.ZodArray<z.ZodString, "many">;
supporting: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
primary: string;
secondary: string[];
supporting: string[];
}, {
primary: string;
secondary: string[];
supporting: string[];
}>;
}, "strip", z.ZodTypeAny, {
narrativeArc: string;
audienceJourney: string;
messageHierarchy: {
primary: string;
secondary: string[];
supporting: string[];
};
}, {
narrativeArc: string;
audienceJourney: string;
messageHierarchy: {
primary: string;
secondary: string[];
supporting: string[];
};
}>;
export declare const IdeaDevelopmentSchema: z.ZodObject<{
powerfulTxt: z.ZodString;
comprehensiveDocx: z.ZodString;
condensedMd: z.ZodString;
}, "strip", z.ZodTypeAny, {
powerfulTxt: string;
comprehensiveDocx: string;
condensedMd: string;
}, {
powerfulTxt: string;
comprehensiveDocx: string;
condensedMd: string;
}>;
export declare const SlidesDeckSchema: z.ZodObject<{
slidesFile: z.ZodString;
individualSlides: z.ZodArray<z.ZodString, "many">;
slideLayouts: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
slidesFile: string;
individualSlides: string[];
slideLayouts: string[];
}, {
slidesFile: string;
individualSlides: string[];
slideLayouts: string[];
}>;
export declare const AssetsDeckSchema: z.ZodObject<{
images: z.ZodArray<z.ZodString, "many">;
videos: z.ZodArray<z.ZodString, "many">;
pythonFiles: z.ZodArray<z.ZodString, "many">;
threeElements: z.ZodArray<z.ZodString, "many">;
interactiveElements: z.ZodArray<z.ZodString, "many">;
audioAssets: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
images: string[];
videos: string[];
pythonFiles: string[];
threeElements: string[];
interactiveElements: string[];
audioAssets: string[];
}, {
images: string[];
videos: string[];
pythonFiles: string[];
threeElements: string[];
interactiveElements: string[];
audioAssets: string[];
}>;
export interface ProjectInitializationRequest {
projectName: string;
initialIdea: string;
outputDir: string;
processMode: 'complete' | 'slides-only' | 'quick';
enabledSteps: Array<'story' | 'idea' | 'slides' | 'assets'>;
brandGuidelines?: string;
audience?: 'executive' | 'technical' | 'general';
presentationType?: 'business' | 'technical' | 'creative' | 'educational';
}
export declare class ProcessOrchestrator {
/**
* Initialize the complete project structure with all process steps
*/
static initializeProject(request: ProjectInitializationRequest): Promise<{
success: boolean;
projectPath: string;
stepsCompleted: string[];
message: string;
}>;
/**
* Step 0: Create Story Architecture structure
*/
private static createStoryArchitecture;
/**
* Step 1: Create Main Idea structure
*/
private static createMainIdea;
/**
* Step 2: Create Idea Development structure
*/
private static createIdeaDevelopment;
/**
* Step 3: Create Slides Deck structure
*/
private static createSlidesDeck;
/**
* Step 4: Create Assets Deck structure
*/
private static createAssetsDeck;
/**
* Create project configuration file
*/
private static createProjectConfig;
}