Skip to main content
Glama
458,051 tools. Updated 2026-08-14 20:18

"Blender Scene Generation and Importing into Unreal Engine" matching MCP tools:

  • Generate one actor-grounded narrative first frame from one to four existing LetMeActForYou actor_ids plus location, wardrobe, pose, and composition. Uses actor headshots as image references and returns a stored image_url. For multi-shot continuity, first generate a wide scene reference, then pass its scene_frame_id as continuity_scene_frame_id while specifying a fresh camera setup in composition and fresh blocking in pose for every shot. Pass only the actor_ids that should be visible in that shot. Pass composition_reference_url to preserve a Blender previs frame's camera and blocking while replacing proxy geometry with actors and the finished set. Defaults to Gemini; pass provider='grok' to use Grok Imagine. Use this before animation when a close-up headshot is not enough.
    Connector
  • Render an picsart_media_video_create/picsart_media_video_revise code_url to a final MP4, up to 3840x2160 — use for output above 1920x1920 (the mp_* Scene tools, e.g. picsart_media_export, cap at 1920x1920). Resolutions: hd (1280x720), full_hd (1920x1080, default), ultra_hd (3840x2160, the one output size no mp_* tool can produce). Cost: 5 credits (full_hd), 10 credits (ultra_hd); hd not separately measured, expected no higher than full_hd. IMPORTANT: duration_seconds is currently capped conservatively — 15s for hd/full_hd, 10s for ultra_hd — because a 30s render measured ~32 minutes of real wall time in testing regardless of resolution; requests above the cap are refused up front rather than risking a charged, uncompleted render. If the clip will be composited into an MP Scene afterward (picsart_media_patch_scene, picsart_media_export, etc.), render at hd/full_hd — MP composition itself caps at 1920x1920, so a 4K render only matters as a final, standalone output, never as a scene input.
    Connector
  • Instantiate a scene template with the supplied parameter bindings. Two modes: `reference` (DEFAULT, canonical) packages an `MpSceneRefContent` snippet (kind:'scene_ref' with bindings + optional timeScale/trim/fit) to drop into a parent scene's `layers[]`; at translate/preview time the ref becomes its OWN nested composition (keeps its resolution/duration, fit/transform honoured — the template stays a reusable parameterized unit). For a STANDARD library template (`mpscene://montage`, …) the parent needs NO `scenes` entry; the translator resolves it from the registry. `bootstrap` returns a complete resolved standalone `MpScene` (substitutes every `$param`, synthesizes asset entries for asset-typed parameters, strips the `parameters` declaration) — use it to bake an editable starting scene. `inline` MERGES the template's resolved concrete layers + assets INTO a target `scene` you pass (no scene_ref) and returns it — the 'bring a preset's editable layers into my composition' op (ids prefixed so nothing collides, assetId refs rewired, brought-in layer starts offset by `at`). Use `picsart_media_describe_scene_template` first to learn what parameters the template accepts. Pure: returns either `sceneRef` or `scene` plus the applied parameter map.
    Connector
  • Enumerate the model_ids the sealed engine exposes, with the engine sha stamped in-response. Purpose: Discover the model catalog and record the sealed engine sha alongside your inference results. Use when: You are wiring a client for the first time and need model_id values for kirk_score_book / kirk_score_book_batch calls, or you want a machine-readable catalog with attestation. Do not use when: You need per-model hyperparameter detail — those are intentionally not exposed on the customer surface. Capability class(es): C5 (engine sha attested on every response). Path fit: Validation via MCP (this tool). Production integrations run in-process under sealed-engine attestation — same binary sha as this endpoint. Contact Kavara for deployment options. Cost: 0 IU. Free tool.
    Connector
  • Import a Revit/BIM model into the Twinmotion visualization pipeline: downloads the source file from a public URL, uploads it to an APS OSS transient bucket, and kicks off an SVF2 + thumbnail translation job. Returns the base64 URN (project_id) used by every other tm_* tool. When to use: when a user wants to prepare a Revit (.rvt), IFC (.ifc), or other BIM/CAD model for real-time visualization in Unreal Engine / Twinmotion — typically the first step before rendering stills, defining scenes, or exporting FBX/glTF/OBJ geometry for a UE import. Also use when you need thumbnails or view metadata from a source file that has not yet been translated by APS. When NOT to use: not for MEP clash review (use navisworks-mcp), not for quantity takeoff or cost estimation (use qto-mcp), not for Twinmotion presets editing — Twinmotion itself has no public REST API, so scene/material authoring must happen manually in the UE editor after FBX/USD export. APS scopes required: data:read data:write data:create bucket:read bucket:create viewables:read. Uses Model Derivative API (translation) + OSS (upload). Twinmotion has no public REST API; all automation is APS Model Derivative + manual Unreal Engine export. Rate limits: APS default ~50 req/min per app per endpoint; Model Derivative translation jobs ~60 req/min; large .rvt/.nwd/.ifc files are often multi-GB and translation can take 5–60 min — poll the manifest with exponential backoff (start 5s, cap 60s) rather than retrying this tool. Worker request ceiling is ~100MB body; extremely large files may need signed-URL upload instead. Errors: 401 = APS token failed (check APS_CLIENT_ID/APS_CLIENT_SECRET, re-auth); 403 = scope missing (bucket:create/data:write not granted — have user re-consent); 404 = file_url unreachable; 409 = bucket key collision (rare — retry, tool uses timestamp); 413/507 = file too large for worker memory (advise signed-URL upload); 422 = unsupported source format (only Autodesk-accepted types: rvt, ifc, nwd, dwg, dgn, 3dm, stp, etc.); 429 = back off 60s before retrying; 5xx = APS upstream outage, retry with backoff. Side effects: CREATES a new transient OSS bucket (scanbim-viz-<timestamp>, auto-expires in 24h), CREATES an object in OSS, STARTS a translation job consuming APS cloud credits. NOT idempotent — each call creates a new bucket + URN. Writes a row to usage_log D1 table.
    Connector
  • Engine version, API contract number, and health. Free (not quota-counted). Call once at the start of a session to confirm the engine is reachable and which contract it serves.
    Connector

Matching MCP Servers

Matching MCP Connectors

  • B2B and local lead gen: verified emails, site contacts, Maps and Yellow Pages leads.

  • Auditable US clean-energy tax-credit scenarios for 45Q, 45V, 45Y, 48E, and 45X.

  • Render UGC video scenes as ad-ready clips, metered per second of video (the estimate shows the exact price before anything renders). Pass 3 to 6 scenes (5 to 8 seconds each, one action per scene, spoken lines at most 20 words; empty spoken_line for silent characters). Consecutive scenes pack into single TAKES of up to 15 seconds, one generation each. HOW CHARACTER IDENTITY WORKS, read carefully: all characters are described in TEXT (avatar_id resolves to its persona brief; or write the persona field yourself, covering one character or a whole ensemble). The video model rejects every image that contains a person, so no photo can anchor a face. Text keeps a character IDENTICAL only WITHIN a take; ACROSS takes it preserves the look and styling but the exact face can drift, and neither avatar_id nor persona prevents that. Structure your script so scenes where the same character must be recognizably identical sit adjacent and fit one take (15s or less); treat cross-take appearances as different shots of a matching character, and review the result. reference_image_urls (up to 9 https images) keeps real products or props on-model in every take; these images must contain no people. Without confirm, it validates the contract and returns the per-scene price estimate in EUR, and makes nothing. With confirm=true it starts the metered render and returns a job_id: rendering runs in the background over a few minutes, so poll clips_status with that id to get per-scene clip URLs plus the uncut takes. Paid plans only.
    Connector
  • List which treaty pairs, PE families, and compiled-rule counts the LR Labs engine covers, plus the structured-fact schema. Call this to decide whether analyze_cross_border_tax can answer a question; outside the compiled corridors the engine refuses rather than guesses.
    Connector
  • Apply a named text-animation preset (typewriter, fade_in_chars, slide_up_lines, ...) to a text layer in an MP Scene. Returns the updated scene with the animation appended to the layer's `content.animations[]`. Discoverable presets and their parameter shapes are listed under `supports.textAnimationPresets` in `picsart_media_get_capabilities`. Agents wanting custom shapes can write `MpTextAnimation` entries directly into a scene without going through this tool. Pure: takes the full scene by value, returns a new scene; no server-side state.
    Connector
  • Enumerate the curated MP Scene template catalog. Each entry summarises a reusable, parameterized scene (title cards, lower thirds, product cards, ...). Use this to discover templates by id/category/aspect before describing or applying one. Returns `{ templates: [{ id, displayName, description, category?, width, height, parameterCount }, ...] }`. Pure: no inputs, no state.
    Connector
  • Render a finished ad IMAGE and return its served URL. refImages (local paths or URLs) force product-accurate compositing (drops a real product into the scene). MULTI-BRAND CAUTION: useBrand hydration pulls the SAVED workspace brand — when working a brand that is NOT the saved one (a fresh draft_brand), pass that brand's own productImages/logo as refImages (and useBrand:false) or the output composites the WRONG brand's product. NOTE that the saved-brand hydration also decides the ENGINE: attaching product photos routes the render to the compositing model, so a `model` you named is only honoured when no references ride — pass raw:true (or useBrand:false) to render on exactly the model you asked for. model = a catalog id from hermoso_capabilities (omit for the default). RAW MODEL ACCESS: raw:true dispatches your prompt to the model BYTE-IDENTICAL — no rewriting, no appended guidance, no negative prompt, no brand references attached on your behalf. Credits, the durable delivery of the finished asset and the per-model validation are unchanged. Fast (seconds). Spends credits.
    Connector
  • Enroll in the Entry Vault so the engine can enter you into contests with NO per-entry signing. Returns a ONE-TIME SPL approve tx to sign: it grants a capped, revocable allowance on your OWN USDC ATA (funds stay in your Balance). When the engine is fee payer you need no SOL. Revoke anytime with revoke_entry_vault. Can't sign from chat? The omniology.ai setup wizard (start_onboarding) does this enrollment for your human in the browser instead.
    Connector
  • Query verified U.S. capacity factor — how hard a fleet actually runs — by joining EIA-860M capacity and EIA-923 generation. Requires `data_month`: one ISO month start, e.g. "2026-01-01". If the user names no month, ask which one (or state the month you chose); if a month is not covered, the error lists the months that are — do not retry blindly. capacity_factor = net generation (MWh) / (operating nameplate capacity (MW) × hours in the month), computed over plant×fuel present in BOTH sources, so scope is auto-aligned. Optional `group_by` of `state` and/or `fuel_group`, and `state`/`fuel_group` filters. Returns the capacity factor per group with its generation and capacity, a `coverage` declaration (what share of in-scope capacity/generation matched), and a citation to BOTH the capacity and the generation source row. Basis is nameplate; storage is excluded; the capacity snapshot is matched to the month. Does not determine per-generator capacity factor, a net-summer/winter basis, or months absent from either source.
    Connector
  • Browse available video templates - curated Scene arrangements (bed + overlay + sane defaults) that render through the Scene composition from a small controls object. Call this before clipform_render_video_template to see template names and their exposed controls. For a fully custom layer stack, assemble Scene layers directly via clipform_render_composition instead.
    Connector
  • Apply a named effect (gaussian_blur, drop_shadow, stroke, ...) to a visual layer in an MP Scene, with catalog defaults filled for any omitted params. Returns the updated scene with the effect merged into the target layer's effects[] -- re-applying the same effect id REPLACES it (idempotent), so params can be tuned without stacking duplicate effects. Each param is validated by kind and numeric range; an unknown effect id, unknown param, or out-of-range value is rejected with a clear error. Discoverable effect ids and their parameter shapes (ranges, defaults) are listed under `supports.effects` in `picsart_media_get_capabilities`. Pure: takes the full scene by value, returns a new scene; no server-side state.
    Connector
  • Resolves where every layer ACTUALLY LANDS in the root composition at a given time — without rendering pixels. Runs the engine's Scene Query System and returns each layer's final geometry in root-composition space: `box {x,y,width,height}` (top-left pixels), `center`, `rotationDeg`, paint-order `zIndex`, `visible`/`active`, an `onCanvas` coverage flag (`full`/`partial`/`off`), `timing`, and composition/parent/nesting. This is the cheap, structured answer to 'what does my composition look like, spatially?' — use it instead of (or before) checking a rendered frame (`picsart_media_contact_sheet`) to verify positions, sizes, overlap, off-canvas layers, and stacking order, since reasoning over numbers beats eyeballing a PNG. Coordinates are ALWAYS top-left pixels in root space for BOTH engines — the query layer unifies Jet's pixel coords and V3's internal normalized coords, so a layer WITH RESOLVED GEOMETRY reports the same box on `jet` or `v3` (the `engine` arg only changes the translation path). Text is the exception (see limitations). Nested children (scene_ref/look comps) are returned too, namespaced (e.g. `a__bg`) with `nestingLevel` and `composition`; inactive layers at the queried time come back marked `active:false` with their box omitted. Set `verbose:true` to also get raw 4x4 transform matrices and the per-component transform chain (for transform-editing tools); omit it for layout reasoning. Determinism is deterministic — identical (scene,time,engine) returns an identical report. Limitations: (1) text layers — the query system does not resolve laid-out glyph bounds, so a text layer's POSITION/center is accurate but its box size is a placeholder (Jet 0x0, V3 ~2000x1); a `notes[]` entry flags any layer with a degenerate dimension. (2) multi-group V3 scenes may need a `sceneContext` (e.g. { canvasGroupId }); single-composition scenes do not. (3) GEOMETRY ONLY — this is NOT a render/export gate. The query is GL-free and never resolves effects, assets, codecs, or engine-specific support, so a clean layout here does NOT guarantee the scene renders or exports. A clean report carries this caveat in its `scope` field — confirm renderability with picsart_media_contact_sheet / picsart_media_export.
    Connector
  • Generates the case for a brand's colours, not just the colours themselves: three genuinely different, archive-grounded candidate palettes from a brand brief, each scored for distinctiveness against named competitors, checked for accessibility, and labelled with exactly what each colour can and cannot legitimately claim (documented archive anchor vs analogue vs original brand colour). Returns a brand_ref (valid 24h) plus a claim_id per colour -- resolve those into full source/permitted-claim/do_not_say text with brand_guideline_claims (the response's own claim_detail_available_via field always names it explicitly). Follow with brand_guideline_select to record which candidate was chosen. TIMING (2026-08-07): real generation cost ranges roughly 60-280 seconds depending on retrieval/generation path. This call races generation against a safe ~55s window: a fast generation returns the full result exactly as described above, unchanged. A slower generation instead returns a compact {"status": "processing", "brand_job_ref": ..., "poll_after_seconds": ...} -- generation keeps running server-side regardless, and is never lost. Call brand_guideline_status with that brand_job_ref to retrieve the completed result (brand_ref, project_id, candidate summary) once ready; poll no more often than poll_after_seconds suggests.
    Connector
  • Calculates total landed cost per unit for a Shopify merchant importing goods. Applies 2026 regulatory surcharges (US Section 122 +10%, EU de minimis €3/item), incoterm responsibility adjustments (EXW/FOB/DDP), CIF insurance, duty and brokerage, and financial carry cost over lead time. Returns unitLandedCost, costUpliftRatio, marginErosionPct (only when unitSellingPrice is provided), full cost breakdown by layer, sensitivity drivers, risk warnings, and recommended actions. Pass baseDutyRate as a decimal (e.g. 0.12 for 12%) — surcharges are applied automatically.
    Connector
  • Prepare a model for an animated walkthrough / video export by verifying the manifest is complete, then starting a secondary Model Derivative job that produces OBJ geometry (suitable for ingestion into offline rendering pipelines, Blender, or Unreal Engine). Also returns the list of available named views so the operator can stitch them into a camera path. Does NOT itself produce an mp4 — video encoding happens in the downstream UE/Twinmotion pipeline. When to use: when a user wants a walkthrough/flythrough video of a BIM model (e.g. 'make a 30-second tour of Tower A') — this tool gets the geometry into a UE-ingestible form (.obj, plus suggests FBX/glTF/USD naming like TowerA_walkthrough.fbx for the exported asset) and enumerates named views to guide camera path authoring. When NOT to use: not to actually encode video (no runtime renderer in this worker — output must be finished in Unreal/Twinmotion/Blender), not before tm_import_rvt, not if the manifest is still 'inprogress' (the tool will short-circuit and return status='pending'). Not for still images (use tm_render_image) or clash animations (use navisworks-mcp). APS scopes required: data:read data:write viewables:read. Write scopes are needed because this kicks off a new Model Derivative translation job (OBJ + thumbnail). Rate limits: APS default ~50 req/min; Model Derivative translation jobs ~60 req/min. OBJ derivatives of large BIM models can be multi-GB and take 10–45 min — rely on manifest polling with exponential backoff, not re-calling this tool. Errors: 401/403 = token/scope (data:write commonly missing); 404 = URN not found; 409 = OBJ derivative already queued (treat as success); 422 = input format does not support OBJ output (some IFC variants / proprietary formats — fall back to FBX/glTF via a different derivative format); 429 = back off 60s; 5xx = APS upstream. Side effects: STARTS a new translation job on an existing URN (consumes APS cloud credits). Writes usage_log. NOT idempotent per-call (each call creates a new job record), but APS will dedupe identical output requests internally if manifest already contains the derivative.
    Connector
  • COMPACT overview of ONE engine: every action with its description, required params and what it returns — but NOT the full param detail (kept lean so a 90-action engine stays token-cheap). Call this after search_engines to pick the right ACTION, then get_action_schema(engine, action) for that action's full params before call_engine.
    Connector