## Overview

Renders a single character casting portrait from a structured profile. Accepts WM Studio's casting schema (genderIdentity, raceEthnicity, eyeColor, hairStyle, outfitStyle, cinematicGenre, characterArchetype, eraSetting, …). All profile keys are optional and unknown keys are sanitized away. No reference image required.

Auth

oauth-jwt

Returns

{ imageUrl, generationId, creditsCharged, creditsRemaining, lowCreditsWarning? }

Web client

src/app/[locale]/dashboard/creative-studio/tools/casting/casting-tool-client.tsx

MCP handler

mcp-director/src/tools/studio.py

## Quick start

Invoke the tool over Streamable HTTP at `{MCP_BASE_URL}/mcp/`. The request below assumes you already minted an MCP JWT via the OAuth flow.

MCPcurlTypeScript

Copy

```
{
  "name": "studio_casting",
  "arguments": {
    "character_name": "<character_name>",
    "prompt": "<prompt>"
  }
}
```

## Parameters

| Name                  | Type   | Default | Description                                                                                                                                                             |
|-----------------------|--------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| character_name        | string | —       | Display name for the character (e.g. `Ada`).                                                                                                                          |
| prompt                | string | —       | Casting brief (e.g. `studio portrait, soft Rembrandt lighting, neutral grey backdrop`).                                                                              |
| character_profile      | object | —       | WM Studio casting schema keys: `characterType, genderIdentity, raceEthnicity, eyeColor, heightCm, weightKg, bodyType, hairStyle, hairTexture, hairColor, facialHair, outfitStyle, outfitDetails, cinematicGenre, characterArchetype, eraSetting`. |
| model                 | string | "fal-ai/flux/dev" | Provider/model id.                                                                                                                                                    |
| aspect_ratio          | string | —       | Target aspect ratio.                                                                                                                                                   |

## Examples

Cast a noir detective

json

Copy

```
{
  "name": "studio_casting",
  "arguments": {
    "character_name": "Ada",
    "prompt": "studio portrait, soft Rembrandt lighting, neutral grey backdrop",
    "character_profile": {
      "genderIdentity": "female",
      "eyeColor": "hazel",
      "hairStyle": "shoulder-length wavy",
      "hairColor": "auburn",
      "outfitStyle": "tailored beige trench coat",
      "cinematicGenre": "noir",
      "characterArchetype": "detective"
    }
  }
}
```
