{"ok":true,"site":{"host":"storyroom-roan.vercel.app","url":"https://storyroom-roan.vercel.app/","type":"live","desc":"StoryRoom — An agent-native filmmaking workspace with WebMCP integration. The Agent Proposes. The Human Decides.","tools":[{"name":"get_story_context","kind":"answer","impl":"imperative","description":"Retrieve the project's essential context: title, genre, logline, director's intent, characters, locations, scene index, and relevant story facts.","title":"Get Story Context","inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_current_scene","kind":"answer","impl":"imperative","description":"Retrieve the complete record for a scene by number or ID, including screenplay text, characters, location, time of day, and emotional goal.","title":"Get Current Scene","inputSchema":{"type":"object","properties":{"sceneId":{"type":"string","description":"Scene number (e.g. \"4\", \"scene-4\", or \"The Report\")"}},"required":["sceneId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"search_scenes","kind":"answer","impl":"imperative","description":"Search across scene screenplay text, titles, summaries, and character appearances. Supports filtering by character, location, and time of day.","title":"Search Scenes","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Free-text search query (matches dialogue, action, scene summaries)"},"character":{"type":"string","description":"Optional character filter (e.g. \"Riya\", \"Arjun\", \"Kabir\")"},"location":{"type":"string","description":"Optional location filter (e.g. \"Cafe\", \"Editing Studio\", \"Railway Station\")"},"timeOfDay":{"type":"string","description":"Optional time of day filter (e.g. \"DAY\", \"NIGHT\", \"DAWN\")"}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_character","kind":"answer","impl":"imperative","description":"Retrieve detailed character profile, personality, relationships, emotional arc, and the list of scenes they appear in.","title":"Get Character Profile","inputSchema":{"type":"object","properties":{"characterName":{"type":"string","description":"Character name or ID (e.g. \"Riya\", \"Arjun\", \"Kabir\", \"char-riya\")"}},"required":["characterName"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"check_continuity","kind":"answer","impl":"imperative","description":"Audit the screenplay for contradictions: character age mentions vs profiles, inconsistent location naming, timeline discrepancies, and prop label variations.","title":"Check Continuity","inputSchema":{"type":"object","properties":{"sceneId":{"type":"string","description":"Optional scene identifier to scope continuity checks to a single scene"}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"analyze_scene","kind":"act","impl":"imperative","description":"Evaluate a scene's pacing, emotional intensity, dialogue subtext, visual storytelling, and alignment with Director's Memory creative rules.","title":"Analyze Scene Pacing & Subtext","inputSchema":{"type":"object","properties":{"sceneId":{"type":"string","description":"Scene number or ID to analyze (e.g. \"scene-4\")"}},"required":["sceneId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"propose_rewrite","kind":"act","impl":"imperative","description":"Draft a revised screenplay version that increases restraint, subtext, or tension per Director's Memory. Does NOT overwrite live script; creates a pending revision for human approval.","title":"Propose Screenplay Rewrite","inputSchema":{"type":"object","properties":{"sceneId":{"type":"string","description":"Scene number or ID to rewrite (e.g. \"scene-4\")"},"instruction":{"type":"string","description":"Creative instruction or reasoning for the rewrite (e.g. \"Make dialogue more restrained\")"}},"required":["sceneId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"apply_revision","kind":"act","impl":"imperative","description":"Commit a director-approved screenplay revision to the project. Requires that the revision has already received explicit director approval via the StoryRoom UI. Returns HUMAN_APPROVAL_REQUIRED if called on unapproved/pending revisions.","title":"Apply Approved Revision","inputSchema":{"type":"object","properties":{"revisionId":{"type":"string","description":"The unique ID of the already-approved revision to commit (e.g. \"rev-xxxx\")"}},"required":["revisionId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Media & Personal","apiSurface":"spec","toolCount":8}}