studio-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| STUDIO_ROOT | No | Root directory for project state files. | ~/studio-projects |
| STUDIO_LLM_MODEL | No | Model name to use (e.g., gpt-4). | gpt-4 |
| STUDIO_LLM_API_KEY | Yes | Your API key for the OpenAI-compatible LLM endpoint. | |
| STUDIO_LLM_BASE_URL | No | Base URL for the LLM endpoint (e.g., https://api.openai.com/v1). | https://api.openai.com/v1 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| plan_shotsA | Turn a brief into a structured block-method shot plan. Plans every shot (type, camera move, duration, action) before any pixel is generated. Saves to the project's plan.json and returns it. Args: brief: plain-language description of the spot/scene. project: project name (scopes all state, e.g. "marea"). n_shots: target number of shots. |
| lock_campaignA | Lock the campaign look so every shot stays on-model. Args: project: project name. aspect: aspect ratio, e.g. "2.39:1" or "9:16". stock: film stock / look, e.g. "Kodak Vision3 500T, soft handheld". hex_palette: HEX colors defining the palette, e.g. ["#1b2a3a", "#c8a15a"]. elements: recurring elements/characters to keep consistent. audio: audio rule (default: diegetic SFX, no music). |
| qc_stillA | Style-drift QC on a generated still against the shot intent + locked look. Vision model scores intent / look / character (0-100). Pass requires every score >= threshold. Saves the verdict and returns it. An agent re-rolls the still when pass is false, using fix_suggestion. Args: project: project name. image: local path or http URL of the still to review. shot_id: which shot in plan.json this still is for. threshold: minimum passing score per dimension. |
| assembleA | Build the cut manifest — shot order, durations, and audio notes. Uses the plan for order/timing. If clips (e.g. [{"shot_id":1,"path":"..."}]) are provided (v1.1+), they are attached per shot. The actual NLE cut stays manual in v1; this is the edit blueprint. Args: project: project name. clips: optional rendered-clip refs keyed by shot_id. |
| project_statusA | Report what stages exist for a project (plan / lock / QC / manifest). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/rishbjain1/studio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server