Skip to content

Tools Reference

Every tool is a thin adapter that validates your input and proxies to the Scenario API. Stateless, fast, and reliable.

Scene-side tools (scene summary, selection, screenshots, quick renders, camera paths, import into the open scene) are not part of this server. They live in the local MCP server of the Scenario for Blender extension, see Working in Blender?.

teams_listManagement

List Teams

List all teams available to the authenticated user. Call this first before tools that need team_id or project_id. Ar...

projects_listManagement

List Projects

List projects within a specific team. Use this after teams_list when an OAuth workflow needs a project_id. Returns: ...

searchAnalysis

Search Assets, Models & Workflows

Search for assets (images, video, 3D, audio), models, or workflows by text, visual similarity, or filters. Write-cla...

recommendAnalysis

Recommend a Model

Rank Scenario platform/public models for one generation task with real performance data (ELO, latency, cost); an LLM ...

recommend_trainingAnalysiscatalog

Recommend Training Base

Recommend a Scenario base architecture for training a custom model (LoRA or voice clone) — NOT for picking a generati...

plan_generationManagementcatalog

Plan a Generation Pipeline

Plan a multi-step generation pipeline for complex media requests (e.g. "product video with voiceover", "concept → 3D ...

skill_getAnalysis

Read a Workflow Skill

Read Scenario's workflow skills: tested procedures for common jobs, such as letter-perfect text overlays and banners,...

model_schema_getGeneration

Get Model Schema

Get the input parameter schema for any Scenario model. Call this before model_run to discover accepted fields, types,...

model_runGeneration

Run Model

Run any Scenario model to generate, edit, upscale, segment, post-process, or transform any asset type. First call mo...

prompt_sparkGeneration

Rewrite a Generation Prompt

Rewrite a draft or idea into model-specific prompts and valid generation parameters. Use for short or underspecified ...

trainManagementcatalog

Train Models

Manage custom model training: upload_images uploads a dataset, update_image replaces a training image, delete_image r...

asset_analyzeAnalysiscatalog

Analyze Asset

Analyze a Scenario asset and/or text with Scenario LLM — flexible, instruction-driven analysis (caption, describe, cl...

asset_captionAnalysiscatalog

Caption Asset

Generate a caption for a Scenario image asset. Creates a billed job unless dry_run=true. Repeated calls can create an...

asset_describeAnalysiscatalog

Describe Asset Style

Describe the visual style of a Scenario image asset (medium, palette, lighting, composition, mood) as a reusable refe...

asset_detectAnalysiscatalog

Detect Structural Map

Extract a structural control-map from a Scenario image — canny edges, depth, pose, segmentation, normal, scribble, sk...

asset_quality_gate_runAnalysiscatalog

Verify Asset Quality

Score a Scenario image asset against the Quality Gate — a generic AI-quality check plus brand-brief compliance when a...

asset_displayDisplay

Display Asset

Display a Scenario asset inline. ALWAYS use this tool to show images, textures, panoramas, videos, audio, 3D models, ...

upload_assetManagement

Upload Asset

Upload a local file to Scenario and return an asset_id for use in model_run, asset_display, or other asset-backed too...

upload_asset_completeManagement

Complete Upload

Finalize an upload started by upload_asset. For a multipart upload, call this only after every file part has been upl...

assets_listManagementcatalog

List Assets

List assets in the current project with heavy fields stripped. Args: - filters: optional — model_id, tags, type (s...

asset_getManagement

Get Asset

Get full details for one asset (all fields, including embedding and metadata). Args: - asset_id: required - team...

asset_updateManagementcatalog

Update Asset

Update an asset's name, description, or tags. Provided values replace the previous values; setting tags can remove ex...

asset_copyManagementcatalog

Copy Asset

Duplicate an asset in the same project, or copy it into another project with target_project_id (the original stays wh...

asset_downloadManagement

Download Asset

Request a download URL for an asset, optionally converting to a target format. Args: - asset_id: required - form...

asset_deleteManagementcatalog

Delete Assets

Delete one or many assets. Accepts a single ID or an array of IDs. Args: - asset_ids: required — array of one or m...

assets_get_bulkManagementcatalog

Get Assets (Bulk)

Fetch full details for multiple assets in a single request. Args: - asset_ids: required — array of asset IDs to fe...

asset_list_tagsManagementcatalog

List Asset Tags

List tags in the global tag namespace. The tag namespace is shared with models (same endpoint as model_list_tags). A...

asset_add_tagsManagementcatalog

Add Asset Tags

Add tags to an asset (additive — does not replace the existing tag set). Args: - asset_id: required - tags: requ...

asset_remove_tagsManagementcatalog

Remove Asset Tags

Remove specific tags from an asset. Only the named tags are removed; the asset's other tags stay. Confirm the tags wi...

collections_listManagementcatalog

List Collections

List collections in the current project. Args: - limit: results per page (default 20, max 100) - page_token: pag...

collection_getManagementcatalog

Get Collection

Get full details for one collection. Args: - collection_id: required - team_id, project_id: required for OAuth c...

collection_createManagementcatalog

Create Collection

Create a new collection. (No description field — the API doesn't accept one.) Args: - name: required — name for th...

collection_updateManagementcatalog

Update Collection

Update a collection's name or thumbnail. Supplied values replace the current ones; the collection's items are not cha...

collection_deleteManagementcatalog

Delete Collection

Delete a collection by ID. Args: - collection_id: required - team_id, project_id: required for OAuth callers Re...

collection_add_assetsManagementcatalog

Add Assets to Collection

Add assets to a collection. Safe to retry: assets already in the collection are skipped, not an error, and lists long...

collection_remove_assetsManagementcatalog

Remove Assets from Collection

Remove assets from a collection, up to 49 per call. Only the membership is removed; the assets themselves are not del...

collection_add_modelsManagementcatalog

Add Models to Collection

Add models to a collection. Args: - collection_id: required - model_ids: required — array of model IDs to add ...

collection_remove_modelsManagementcatalog

Remove Models from Collection

Remove models from a collection, up to 49 per call. Only the membership is removed; the models themselves are not del...

models_listManagement

List Models

List models with heavy fields stripped and deprecated capabilities filtered. Args: - filters: optional — privacy (...

model_getManagementcatalog

Get Model

Get full details for one model (deprecated capabilities filtered). The long markdown description is NOT in the base r...

model_createManagementcatalog

Create Model

Create a new model. Args: - data: required — model payload. Common fields: name, shortDescription, tags, thumbnail...

model_updateManagementcatalog

Update Model

Update an existing model's metadata. Values can replace or delete descriptions and tags or change visibility; confirm...

model_deleteManagementcatalog

Delete Model

Delete a model. Args: - model_id: required - team_id, project_id: required for OAuth callers Returns: { deleted...

model_copyManagementcatalog

Copy Model

Duplicate a model (creates a copy). Args: - model_id: required - team_id, project_id: required for OAuth callers...

model_transferManagementcatalog

Copy Model to Another Project

Copy a trained model into another project. The copy gets a new model id in the destination project; the source model ...

model_downloadManagementcatalog

Download Model

Request a download for a model's weights. Args: - model_id: required - team_id, project_id: required for OAuth c...

model_list_tagsManagementcatalog

List Model Tags

List tags in the global tag namespace. The tag namespace is shared with assets (same endpoint as asset_list_tags). A...

model_add_tagsManagementcatalog

Add Model Tags

Add tags to a model (additive — does not replace the existing tag set). Args: - model_id: required - tags: requi...

model_remove_tagsManagementcatalog

Remove Model Tags

Remove specific tags from a model. Only the named tags are removed; the model's other tags stay. Confirm the tags wit...

model_access_getManagementcatalog

Get Model Access Control

Get a team's model access control: the models-management mode plus the team-level model list, and one project's list ...

model_access_updateManagementcatalog

Update Model Access Control

Add (add_models) or remove (remove_models) models on a team's model allowlist/blocklist, at team level or across proj...

workflows_listManagement

List Workflows

List visual workflows. Terminology: In Scenario, when a user says "apps" (e.g. "list my apps"), they usually mean wo...

workflow_getManagement

Get Workflow

Get full details for one workflow. The response carries the workflow's definition fields named inputs_definition / e...

workflow_createManagementcatalog

Create Workflow

Create a new visual workflow. Lifecycle: create persists editor_info + inputs as a DRAFT. Updating editor_info alone...

workflow_updateManagementcatalog

Update Workflow

Update an existing workflow's metadata or definition. Supplied fields replace existing values and draft status unpubl...

workflow_deleteManagementcatalog

Delete Workflow

Delete a workflow. Args: - workflow_id: required - team_id, project_id: required for OAuth callers Returns: { d...

workflow_runManagement

Run Workflow

Run a workflow. Args: - workflow_id: required - inputs: input values for the run (the request body). For array-t...

workflow_approveManagementcatalog

Approve Workflow Node

Approve a pending human-approval node in a running workflow. Args: - workflow_id: required - workflow_job_id: re...

workflow_rejectManagementcatalog

Reject Workflow Node

Reject a pending human-approval node in a running workflow. Args: - workflow_id: required - workflow_job_id: req...

workflow_selectManagementcatalog

Answer Workflow Selection Step

Answer a paused selection step (user-selection node) in a running workflow: pick which candidates continue, or reject...

workflow_publishManagementcatalog

Publish Workflow

Publish a workflow: compile its stored editor_info into a runnable flow and flip status to "ready". Publishing replac...

workflow_copyManagementcatalog

Copy Workflow

Copy a workflow — retrieves the source and creates a new workflow carrying its description, flow, input definitions, ...

job_getManagement

Get Job

Get one Scenario job — compact status row (status, progress, result asset ids). Args: - job_id: required - verbo...

jobs_waitManagement

Wait For Jobs

Wait for Scenario jobs to finish — blocks server-side until every job completes or parks at a human workflow step, or...

jobs_listManagement

List Jobs

List recent Scenario jobs (summarized for compact context). Args: - filters: optional {status, type} — e.g. {"stat...

job_cancelManagement

Cancel Job

Cancel a queued Scenario inference job. The backend cancels a job only when its jobType is "inference" and its statu...

project_getManagementcatalog

Get Project

Get one Scenario project: name, description, privacy mode, avatar asset id, settings, and credit consumption for the ...

project_createManagementcatalog

Create Project

Create a new project in a Scenario team. Needs a team admin signed in through OAuth (API keys are refused), and count...

project_updateManagementcatalog

Update Project

Rename a Scenario project or change its description, privacy mode or avatar. Only the fields you pass change, replaci...

project_deleteManagementcatalog

Delete Project

Delete a Scenario project. DESTRUCTIVE and irreversible: the project and its content stop being reachable, and its mo...

team_members_listManagementcatalog

List Team Members

List a team's members and pending invitations. Args: - team_id: required — team to list members for - response_f...

team_members_addManagementcatalog

Invite Team Members

Invite people to a team by email (bulk). Each address receives an invitation email — members join when they accept. ...

team_members_updateManagementcatalog

Update Team Members

Update one or more team members (bulk): set their team role, their consumption cap, or both. Replaces existing permis...

team_members_removeManagementcatalog

Remove Team Members

Remove members from a team (bulk), and/or withdraw pending invitations. DESTRUCTIVE: removed members immediately lose...

project_members_listManagementcatalog

List Project Members

List a project's members with their project roles. Args: - project_id: required — project to list members for - ...

project_members_addManagementcatalog

Add Project Members

Add existing team members to a project (bulk). People must already be on the team — to bring in someone new, use team...

project_members_updateManagementcatalog

Update Project Member Roles

Change the project role of one or more members (bulk). Replaces their existing permissions and can revoke or broaden ...

project_members_removeManagementcatalog

Remove Project Members

Remove members from a project (bulk). Their team membership and other projects are untouched. IMPORTANT: call projec...

api_keys_listManagementcatalog

List Project API Keys

List a project's API keys. Args: - project_id: required — project to list keys for - team_id: optional — require...

api_key_getManagementcatalog

Get Project API Key

Get one project API key by id. Args: - project_id: required - key_id: required — the key's id (apiu_...) or api_...

api_key_updateManagementcatalog

Update Project API Key Role

Change a project API key's role or scopes. This replaces existing permissions and can remove access or grant broader ...

api_key_deleteManagementcatalog

Delete Project API Key

Delete a project API key. DESTRUCTIVE: the key stops working everywhere it is used — this cannot be undone. List keys...

api_key_createManagementcatalog

Get API Key Creation URL

Return the Scenario portal URL where the user can create a project API key. Despite the tool name, this is a read-onl...

memory_recallManagement

Recall Memory and Instructions

Recall the full Scenario memory stack for the signed-in user and selected workspace: user, team and project instructi...

memory_getManagementcatalog

Get Memory Layer

Read one saved Scenario instruction or memory layer, including its unchanged text and provenance. Scopes: user_instru...

memory_setManagementcatalog

Replace Memory Layer

Replace one complete saved Scenario instruction or memory layer. Destructive: previous text is overwritten, not appen...

memory_deleteManagementcatalog

Clear Memory Layer

Clear one entire Scenario instruction or memory layer. Destructive and irreversible through this tool. Scopes: user_i...

usageManagement

Usage

View Scenario usage analytics for selected projects, users, and dates. Default response: after-discount CU totals, p...

consumption_limit_getManagementcatalog

Get My Consumption Limit

Read your own consumption cap: the Creative Units (CU) you may spend this billing period, how many you have spent, wh...

diagnostics_runManagement

Run Diagnostics

Diagnose Scenario MCP problems. Runs a live self-test with the caller's own credentials to identify the failing layer...

feedback_requestManagement

Give Scenario Feedback

Open optional feedback inside the conversation. Call directly after the user agrees to give feedback; do not route th...

feedback_submitManagement

Submit Scenario Feedback

Send the user's explicit feedback to Scenario via PostHog. Only call after the user chooses to share their reviewed o...

scenario_tools_searchManagement

Search Tool Catalog

Search the Scenario MCP tool catalog by keyword — find tools by name or purpose and get their executable input schema...

scenario_tools_listManagement

List Tool Catalog

List every tool in the Scenario tool catalog — the full capability map, grouped by family (generation, jobs, assets, ...

scenario_tool_execute_readManagement

Execute Read Tool

Execute a read-class tool from the Scenario tool catalog by name. Only tools whose permission is "read" run here — w...

scenario_tool_execute_writeManagement

Execute Write Tool

Execute a write-class tool from the Scenario tool catalog by name. These tools create or modify data and can overwrit...

scenario_tool_execute_deleteManagement

Execute Delete Tool

Execute a delete-class tool from the Scenario tool catalog by name. Delete-class tools are destructive and usually ir...