Lazer Docs
MCP Server

Tools Reference

Complete reference for all 53 MCP tools available in the Lazer server

Tools Reference

The Lazer MCP server exposes 53 tools organized across 11 domains. Each tool validates inputs with Zod schemas and verifies resource ownership before executing.

Project Tools (5)

Manage film production projects.

ToolDescription
project_listList all projects for the authenticated user
project_getGet a project with identity and asset counts
project_createCreate a new project
project_updateUpdate project fields (name, description, etc.)
project_deleteDelete a project and all its children

Example: Create a project

{
  "tool": "project_create",
  "arguments": {
    "name": "My Short Film",
    "description": "A 5-minute sci-fi short"
  }
}

Scene Tools (7)

Manage scenes within a project.

ToolDescription
scene_listList all scenes in a project
scene_getGet a scene with shots, characters, and assets
scene_createCreate a new scene
scene_updateUpdate scene fields (heading, storyBeat, tone, etc.)
scene_deleteDelete a scene
scene_reorderReorder scenes by providing a new ID sequence
scene_update_keyframeSet the keyframe image URL for a scene

Key Fields

  • heading — Scene heading (e.g., "INT. OFFICE - DAY")
  • storyBeat — What happens in this scene
  • sourceText — Original script text
  • tone — Emotional tone (e.g., "tense", "comedic")

Shot Tools (6)

Manage shots within a scene. Each shot gets an auto-generated code (SH001, SH002, etc.).

ToolDescription
shot_listList all shots in a scene
shot_getGet a shot with characters and asset counts
shot_createCreate a shot with auto-generated shot code
shot_updateUpdate shot fields (description, shotType, cameraAngle, etc.)
shot_deleteDelete a shot
shot_reorderReorder shots within a scene

Key Fields

  • shotCode — Auto-generated identifier (SH001)
  • shotType — wide, medium, close-up, extreme-close-up, etc.
  • cameraAngle — eye-level, low-angle, high-angle, overhead, dutch
  • cameraMovement — static, pan, tilt, dolly, handheld, crane
  • description — What happens in this shot

Character Tools (6)

Manage characters within a project.

ToolDescription
character_listList all characters in a project
character_getGet a character with scene/shot assignments
character_createCreate a new character
character_updateUpdate character fields (name, description, traits, etc.)
character_update_portraitSet the portrait image URL
character_deleteDelete a character

Key Fields

  • name — Character name
  • description — Physical and personality description
  • portraitUrl — Reference portrait image
  • traits — JSON object with character traits

Relationship Tools (6)

Assign and remove characters from scenes and shots.

ToolDescription
scene_character_assignAssign a character to a scene
scene_character_removeRemove a character from a scene
scene_character_syncSync scene characters to a given set of IDs
shot_character_assignAssign a character to a shot
shot_character_removeRemove a character from a shot
shot_character_syncSync shot characters to a given set of IDs

Sync tools are bulk operations — provide the full list of character IDs and the tool adds/removes as needed.

Identity Tools (2)

Manage the film identity (visual style, tone, and branding) for a project.

ToolDescription
identity_getGet the film identity for a project
identity_upsertCreate or update the film identity

Key Fields

  • visualStyle — Overall visual direction
  • colorPalette — Color scheme description
  • moodDescription — Emotional atmosphere
  • referenceNotes — Additional reference material

Asset Tools (8)

Manage generated asset versions. Assets are immutable — each generation creates a new version.

ToolDescription
asset_listList assets with filters (type, status, shot, platform)
asset_getGet an asset with prompt package and platform details
asset_createCreate an asset version with auto-incrementing version number
asset_updateUpdate asset fields with status transition validation
asset_deleteDelete an asset version
asset_selectToggle selection on an asset version
asset_fanoutCreate the same asset across multiple platforms at once
asset_compareList all assets in a comparison group

Status Transitions

Assets follow a strict state machine:

draft → in_review → approved → final
draft → in_review → revision_requested → draft
draft → rejected
in_review → rejected

The asset_update tool validates transitions automatically. Invalid transitions are rejected with an error.

Asset Types

image, video, audio, text, 3d_model

Prompt Package Tools (3)

Manage reusable prompt packages that can be linked to assets.

ToolDescription
prompt_package_listList prompt packages for a scene
prompt_package_getGet a prompt package with linked asset count
prompt_package_createCreate a prompt package with auto-incrementing version

Key Fields

  • promptText — The main generation prompt
  • negativePrompt — What to exclude
  • parameters — Platform-specific generation parameters (JSON)
  • tags — Searchable tags

Platform Tools (4)

Manage AI generation platform registrations (Sora, Veo, Freepik, etc.).

ToolDescription
platform_listList all registered AI platforms
platform_getGet a platform with asset counts
platform_createRegister a new AI platform
platform_updateUpdate platform details

Search Tools (2)

Full-text search across assets and scenes.

ToolDescription
search_assetsSearch assets by prompt text, tags, platform, or status
search_scenesSearch scenes by storyBeat, sourceText, or tone

Example: Search for approved images

{
  "tool": "search_assets",
  "arguments": {
    "projectId": "clx...",
    "assetType": "image",
    "status": "approved",
    "query": "sunset cityscape"
  }
}

Workflow Tools (4)

High-level composite operations that span multiple entities.

ToolDescription
workflow_ingestFull asset ingest flow (create prompt package + asset version)
workflow_project_treeGet the complete project hierarchy in one call
workflow_scene_summaryGet a scene with all children expanded
workflow_production_statusAggregate production statistics across the project

Example: Production status

{
  "tool": "workflow_production_status",
  "arguments": {
    "projectId": "clx..."
  }
}

Returns counts of scenes, shots, assets by status, selected assets, and completion percentages.

Common Parameters

Most tools that operate on owned resources require:

  • projectId — The project to operate within (ownership verified)
  • sceneId — The scene within the project
  • shotId — The shot within the scene

All IDs are Prisma CUIDs (e.g., clx1234567890abcdef).

Error Handling

All tools return structured responses:

Success:

{
  "content": [{"type": "text", "text": "{\"id\": \"clx...\", ...}"}]
}

Error:

{
  "content": [{"type": "text", "text": "Not found: Scene clx... does not exist"}],
  "isError": true
}

Next Steps

On this page