API & MCP
Everything a person can do on Node Compositor for Images and Short Clips, a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://luminacompositor.usefulweb.app/api/v1/calculate– run Node Compositor for Images and Short ClipsGET https://luminacompositor.usefulweb.app/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
Node Compositor for Images and Short Clips
Evaluates a Lumina compositor graph (or a preset: green-screen composite, product shot on a gradient, LUT grade, sky replacement) on your images in linear light with premultiplied alpha. Porter–Duff merges with W3C blend modes, chroma/luma/difference keys, .cube LUTs, masks and filters; returns the result and a report for every node. Short clips are processed frame by frame.
| Field | Type | Default | Description |
|---|---|---|---|
image (required) | file | — | Main image or short clip. PNG, JPEG or WebP up to 2 megapixels, or a clip (MP4, MOV, WebM) up to 10 seconds — frames are scaled to at most about 0.4 megapixels. Image input nodes with the slot "Main image" read it. |
background | file | — | Background image (optional). Read by image nodes with the slot "Background image" (green-screen and sky presets use it; without it they use a gradient). |
extra | file | — | Extra image (optional) |
preset | select (green-screen, product-shot, lut-grade, sky-replacement, custom) | "green-screen" | Graph |
graph | textarea | — | Graph JSON (for a custom graph). Format: lumina-compositor version 1 (schema at /static/apps/lumina/compositor.schema.json). Copy it from Lumina → Compositor. |
lut | file | — | .cube LUT (optional). Used by LUT nodes without their own .cube data, and replaces the warm fade in the LUT grade preset. |
format | select (png, jpeg, webp) | "png" | Output format |
quality | integer | 90 | JPEG/WebP quality |
videoFormat | select (mp4, webm-alpha, prores-4444) | "mp4" | Video output (clips only). Only used when the main input is a clip. WebM VP9 keeps transparency in browsers and most editors; ProRes 4444 (.mov) is the editing format for Final Cut, Premiere, DaVinci Resolve and After Effects. |
Every result contains
inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.
MCP (Model Context Protocol)
- Streamable HTTP endpoint:
https://luminacompositor.usefulweb.app/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
lumina_compositor - Local stdio connector:
node src/mcp-stdio.ts --tool=lumina-compositor
{
"mcpServers": {
"lumina-compositor": { "type": "http", "url": "https://luminacompositor.usefulweb.app/mcp" }
}
}