Studio State
About
Stateless MCP server that keeps AI-generated characters, locations, and shots consistent across a film/video project — tells your AI assistant where the production stands, a scene's per-shot status, and marks shots fired/locked. For creators using Higgsfield, Runway, Kling, Seeda
Details
- Author
- dkf2studios
- Downloads
- 201
- Categories
- Other
Jump to
- Read-dominant: 2 of 3 tools are pure reads.
- Stateless: no server-side store or daemon state.
- Path-sandboxed: validated scene/episode arguments.
- Crash-proof and always current; re-reads files on every call.
- Never mutates canonical files; writes only to a sidecar shot_status.json.
- Expects a lightweight, file-based project layout.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Studio StateCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install Python 3.9+ and the MCP SDK (pip install "mcp[cli]"), set the STUDIO_ROOT environment variable to the path of your project folder, then run python3 server.py. Register the server in Claude Desktop via claude_desktop_config.json using the server’s file path and the STUDIO_ROOT environment variable.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"studio state": {
"studio-state": {
"command": "python3",
"args": [
"/absolute/path/to/studio-state-public/server.py"
],
"env": {
"STUDIO_ROOT": "/absolute/path/to/your_show"
}
}
}
}
}
McpServers
{
"studio-state": {
"command": "python3",
"args": [
"/absolute/path/to/studio-state-public/server.py"
],
"env": {
"STUDIO_ROOT": "/absolute/path/to/your_show"
}
}
}
studio-state — MCP server for AI film & video production state
Keep AI-generated characters, locations, and shots consistent across an entire
project — by giving Claude (or any MCP client) a single source of truth for where
your production stands.
studio-state is a small, stateless Model Context Protocol
server for people producing AI-generated film, video, episodic shows, and animation
with tools like Higgsfield, Runway, Kling, Seedance, nano-banana, Veo, and ElevenLabs.
It reads your project's plain files on every call and answers three questions an AI
filmmaking assistant constantly needs to re-establish:
- orient — "Where am I right now?" Project, phase, active episode, budget/spend
posture, open blockers, next actions, and the scene index — one call instead of a
50-line copy-paste at the start of every session.
- get_shot_status — "What's the state of this scene?" Per-shot status
(planned / pending / fired / locked / needs-rework / dropped) reconciled from your
shot plan, your canonical lock state, and the server's own working notes.
- update_shot — "Mark this shot fired/locked and attach the generation job + still."
It's the free companion tool to The Studio Method —
a complete system for getting consistent characters and zero-retry continuity out of
generative video models.
---
Why this exists
AI generation tools drift. Across a long shoot they hallucinate characters, swap faces,
reinvent backgrounds, and contradict your references — and the human becomes the only
thing holding continuity together. Most of that pain is state pain: the assistant
helping you forgets where the production stands the moment a session resets.
studio-state fixes the state half structurally. Truth lives in your files, not in a
chat history or a server-side database. Every tool call re-reads the files, so it is
crash-proof and always current, and it never mutates your canonical files — the
only thing it writes is its own per-scene shot_status.json sidecar.
What makes it safe
- Read-dominant. 2 of 3 tools are pure reads. The one writer only ever touches a
shim-owned sidecar file — your shot plans, render manifests, and state file are never
modified.
- Stateless. No server-side store, no daemon state. Kill it mid-call and nothing
corrupts (atomic sidecar writes).
- Path-sandboxed. Scene/episode arguments are validated — no path traversal out of
your project tree.
- Hardened. Reviewed adversarially across multiple frontier models before release;
malformed files return structured errors instead of crashing the assistant.
Quick start
# 1. Python 3.9+ and the MCP SDK
python3 -m pip install "mcp[cli]" # add --break-system-packages if needed
2. Try it against the bundled demo project (no setup)
python3 tests/test_acceptance.py # expect: 4/4 checks passed
3. Point it at your own project (a folder containing _pipeline/STATE.json + episodes/)
export STUDIO_ROOT="/path/to/your_show"
python3 server.py
Then register it in Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"studio-state": {
"command": "python3",
"args": ["/abs/path/studio-state-public/server.py"],
"env": { "STUDIO_ROOT": "/abs/path/your_show" }
}
}
}
Full walkthrough: INSTALL.md.
Does my project work with this?
studio-state expects a lightweight, file-based project layout:
your_show/
_pipeline/STATE.json # project phase, episode, budget, scenes
episodes/episode_001/scenes/<SCENE>/
phase_04_IRs.json # the shot plan (shot anchors + types)
phase_05_render_manifest.json # canonical lock/render state (optional)
A complete synthetic example ships in examples/demo_project/ —
copy its shape to adapt your own pipeline, or adopt the full convention via the paid pack
below.
The Studio Method (paid companion)
This tool tracks state. The hard part — getting the same character to render
consistently, shot after shot, with near-zero retries — is a method. The Studio
Method Starter Pack is the full system: the character/location/camera "bible" templates,
the pre-fire ritual, the prompt-assembly formula, and the anti-default doctrine that make
generative models hold continuity.
→ Get the Starter Pack: https://dkf2studios.gumroad.com/l/flplx
(Use code EARLY for the launch discount.)
Tools reference
| Tool | Type | Reads | Writes |
|---|---|---|---|
| orient | read | _pipeline/STATE.json | — |
| get_shot_status | read | scene IRs + render manifest + sidecar | — |
| update_shot | write | scene IRs (to validate) | shot_status.json sidecar only |
Keywords
AI filmmaking · AI video production · generative video pipeline · character consistency ·
continuity · shot tracking · render manifest · production state · Model Context Protocol ·
MCP server · Claude Desktop · Higgsfield · Runway · Kling · Seedance · nano-banana ·
ElevenLabs · AI short film · AI episodic show · previs · session orientation
License
MIT © 2026 DKF2 Studios. Contact: dkf2studios@gmail.com
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



