{"ok":true,"site":{"host":"slush-filmmaker.vercel.app","url":"https://slush-filmmaker.vercel.app/","type":"live","desc":"A creative workspace for founders. Shape your story, explore cinematic templates, and build alongside your AI agent.","tools":[{"name":"list_templates","kind":"answer","impl":"imperative","description":"List available founder film template concepts. Effect: read.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/studio"]},{"name":"preview_template","kind":"act","impl":"imperative","description":"Open a visual template preview in the visible interface. Effect: write (UI only). Does not generate video.","inputSchema":{"type":"object","properties":{"templateId":{"type":"string","enum":["slush_founder"]}},"required":["templateId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/studio"]},{"name":"open_studio","kind":"act","impl":"imperative","description":"Open the Slush Filmmaker studio dashboard in the visible browser tab. Use after a valid OpenAI key is connected. Effect: write (navigation).","inputSchema":{"type":"object","properties":{"templateId":{"type":"string","enum":["slush_founder"]}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/studio"]},{"name":"start_film_creation","kind":"act","impl":"imperative","description":"Open the studio with a selected template. Effect: write (navigation/template). Creates no video and incurs no generation charges.","inputSchema":{"type":"object","properties":{"templateId":{"type":"string","enum":["slush_founder"]}},"required":["templateId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/studio"]},{"name":"get_studio_state","kind":"answer","impl":"imperative","description":"Read the current local demo project, template, scenes, selection, website, BYOK/agentified flag, pending proposal, activity, current studio tab, and timeline digest. Effect: read.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"get_timeline","kind":"answer","impl":"imperative","description":"Read the Editor NLE timeline: totalDuration, playhead, selectedSceneId, scenes with absolute start/end, and all tracks/clips. Call before/after timeline edits. Times are CURRENT TIMELINE seconds. Effect: read.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"propose_timeline_edits","kind":"act","impl":"imperative","description":"Main timeline editor (Panoptik-style batch). Applies one atomic ops[] batch to the live Editor timeline and opens Editor. Ops (CURRENT TIMELINE seconds): {op:'update_scene',sceneId,title?,caption?,duration?}; {op:'reorder_scenes',sceneIds}; {op:'add_scene',title,caption?,duration?,afterSceneId?}; {op:'delete_scene',sceneId}; {op:'split_scene',sceneId,at}; {op:'select_scene',sceneId}; {op:'seek',t}; {op:'upsert_clip',trackId,clip:{id?,label,start,duration,sceneId?}}; {op:'update_clip',trackId,clipId,label?,start?,duration?}; {op:'delete_clip',trackId,clipId}; {op:'open_editor'}. trackId enum: founder|product|broll|titles|vo|music|sfx|captions (not scenes — use scene ops). Re-read get_timeline after. Effect: write.","inputSchema":{"type":"object","properties":{"plan":{"type":"string"},"ops":{"type":"array","items":{"type":"object","additionalProperties":true},"minItems":1}},"required":["ops"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"select_scene","kind":"act","impl":"imperative","description":"Select an existing storyboard scene in the visible editor (opens Editor). Effect: write (UI selection).","inputSchema":{"type":"object","properties":{"sceneId":{"type":"string"}},"required":["sceneId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"open_studio_tab","kind":"act","impl":"imperative","description":"Switch the visible studio sidebar view. Use while chatting to take the founder to the right place (e.g. Projects, Editor, Templates, Overview). Effect: write (UI navigation).","inputSchema":{"type":"object","properties":{"tab":{"type":"string","enum":["Overview","Templates","Projects","Editor","Assets","Docs"]}},"required":["tab"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"new_project","kind":"act","impl":"imperative","description":"Call whenever the founder asks to start / begin / create a new project or fresh film. Creates a fresh untitled founder film (resets scenes/website/brief/pending proposal) and navigates the visible UI to the project detail (Editor). Effect: write + navigation.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"list_fal_models","kind":"answer","impl":"imperative","description":"Read enabled fal.ai image models from the catalog (key, cost tier, bestFor/avoidFor). Call before generate_scene_image when choosing a model. Effect: read.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]},{"name":"generate_scene_image","kind":"transact","impl":"imperative","description":"Paid/fal.ai: generate a cinematic still and add it as a NEW Assets source card (does not overwrite or auto-apply to timeline scenes). Requires fal.ai BYOK. Pick modelKey from list_fal_models (default flux-schnell). Routing: draft→flux-schnell/seedream-5-lite; hero→flux-2-pro; same character+refs→nano-banana-2. Effect: write + paid.","inputSchema":{"type":"object","properties":{"sceneId":{"type":"string"},"prompt":{"type":"string"},"modelKey":{"type":"string","description":"Catalog key e.g. flux-schnell | seedream-5-lite | flux-2-pro | nano-banana-2"},"aspect":{"type":"string","description":"e.g. 16:9 | 1:1 | 9:16"},"refUrls":{"type":"array","items":{"type":"string"},"description":"Reference image URLs (nano-banana-2)"}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/studio","pages":["/studio"]}],"category":"Media & Personal","apiSurface":"spec","toolCount":12}}