Skip to main content
Glama

Prompt-to-Scene

v0.14: coherent art and playable game flows. An original apothecary set, explicit existing-game adapters, collect/craft/use/save rules, dynamic native inventory and image-backed project asset reuse. Workflow, examples and limits.

Build styled props in Blender with your AI, compare real 3D drafts, refine parts, and send the result straight to Unity or Unreal.

简体中文 · Download · Beginner setup · Asset organization · Verified results

Connect Codex / DeepSeek Harness → Blender → Unity / Unreal Editor. Your existing AI client interprets the request; Blender runs locally. The bridge prepares materials, imports native assets, places instances and verifies the result. Python is bundled in the download. No additional modeling subscription is required.

v0.14 supports styled props, linked game items, game images, three native UI templates, interaction, room furnishing and asset organization. Modeling needs Blender; image import and organization need only the engine editor. Image generation uses an available host image tool or an explicitly configured provider.

Actual model orbit and part picking

Actual retained Blender geometry in the workbench. The connected item includes a matching rendered icon, native data and pickup.

Install

Windows x64 · macOS Apple Silicon

  1. Extract the download and open Prompt-to-Scene. Keep both Windows EXE files together.

  2. Select an engine project and click Connect / 连接并准备项目. The app locates Blender and installs the bridge.

  3. Click Install Codex plugin or Install Harness plugin, restart that client and start a new chat.

Keep the editor open outside Play mode. Restart UE once after installing the bridge. Say:

“Use Prompt-to-Scene. Set a cozy art style for this project and show me three chair designs before publishing one.”

Or open 进入创作工作台 → 模型创作, describe your asset, and use 生成制作指令 to copy the brief into your AI chat. Ordinary requests can build directly without a mandatory selection step. Generate example crate / 生成示例木箱 tests the complete pipeline without AI.

Community binaries are unsigned on Windows and ad-hoc signed, not notarized, on macOS. First-launch guidance and client setup: beginner guide. Source users can run uv sync --locked and uv run prompt-to-scene-app. Other MCP clients can use manual setup.

Related MCP server: Blender MCP

v0.13: from assets to usable game pieces

Open 我的作品 / Creations to describe a new item or try the complete bundled herbalist potion without a paid API. create_game_item runs model → icon → native data/pickup; create_game_ui creates ordinary editable inventory, HUD or pause controls. Updates keep stable references and manual data/layout edits. Local image edits preserve every pixel outside the selected rectangle. Art samples retain accepted/avoid decisions and feed subsequent briefs.

Native Unity inventory at runtime

These are integration templates: Unity includes example pickup counts; UE exposes ItemData and OnInteracted for the project's inventory. Settings, persistence and arbitrary menu/ability systems remain game-specific. The 3D workbench approximates materials; use native rendering for final appearance. Host image generation remains capability-dependent.

v0.9: a project workshop inside the engine

  • Save naming, folders, geometry/texture budgets, LODs and collision once per project.

  • Drop source models into the designated inbox; settled revisions are prepared and imported automatically while the editor/app is running. Unchanged files are skipped and failed items can be retried.

  • Open the Unity EditorWindow or UE Editor Utility Widget from the engine menu or asset context menu. Work on the current selection, review naming plans and undo changes.

  • Capture native thumbnails and measurements, let the connected AI describe them, correct labels and search by intended use. An optional vision endpoint supports batch descriptions; no filename-only visual recognition claims.

  • Preview reference colors, roughness and texture scale on separate variants, compare actual renders, then selectively apply material slots or restore original assignments.

项目管家教程与边界. Unity material adaptation targets prefabs; UE targets static meshes with supported material parameters. The UE widget is bundled as an engine-only asset built with UE 5.7.2; users do not need the maintainer C++ builder.

v0.8: automatic project asset naming and organization

Open Workshop → 整理 / Organize → Scan and preview → Apply. Scan the whole Unity Assets or UE /Game, or a single imported pack.

  • Native asset types determine folders and prefixes: models, materials, textures, prefabs/Blueprints, animations, audio and more. For example, oak albedo.png → Textures/T_Oak_BaseColor.png.

  • Review every old/new path and skip reason. Preserve source groups, exclude folders, supply semantic names or move without renaming.

  • Resolve collisions with numbered suffixes. Unity retains GUIDs; UE uses one native rename batch to maintain references. Library annotations follow moves and undo.

  • Persistent history supports undo after editor restarts. Changed assets and occupied destinations stop the operation. Scripts, scenes, special loading folders and managed plugin assets stay in place.

Tell Codex or DeepSeek Harness: “Organize this project's assets by type and normalize their names. Keep ThirdParty in place.” No extra AI service is needed. Default names use filenames and native type information; you or the current AI host can supply semantic overrides. Custom code/config path strings are not rewritten. Complete guide and limits.

Actual asset organization workbench

v0.7: build, reuse and test a playable scene

Feature

Implemented behavior

Interactive props

Beveled, textured door/chest/pickup templates; separate moving geometry; Unity prefab components and UE child Blueprints. Range checks, aim-and-E demo input and project event hooks.

Protected updates

Preserve native material assignments, interaction settings, root attachments and instance identity. Preview missing-slot conflicts before publication; incompatible updates stop before replacing native content.

Scene looks

Four lighting/sky/color presets, a fixed presentation camera, native comparisons and restoration of saved lighting. Built-in, URP and UE adapters.

Modular levels

Rooms, corridors and stairs with matched ports, connected graphs, dimensional validation and native sampled capsule clearance. Staged replacement keeps the old blockout if validation fails.

Real play checks

Enter Unity Play / UE PIE, exercise interactions and clearance, capture before/after, measure actual frame intervals, collect runtime errors and return to Edit mode.

Project asset reuse

Search local models, prefabs and compatible Blueprints by name/tags/size; native thumbnails, original-reference placement and source/license annotations.

Try “Make an interactive wooden door, apply a warm scene look and check that it opens in Play mode”, or “Find an existing chest in this project before generating another one.” Workbench tabs: 玩法 / 关卡 / 素材库, with scene looks in 视觉. Complete guide.

UE users need no C++ compiler. The shipped Blueprint template was saved with UE 5.7.2 and must remain available through the plugin's content. This is template instantiation, not arbitrary Blueprint generation. Levels are blockouts, not NavMesh/controller traversal guarantees. Asset search uses keywords, not image embeddings. Play measurements describe the current editor/machine.

v0.6: one workbench, six workflow improvements

Feature

Implemented behavior

Unified workbench

Local UI plus optional MCP App; shared task cards, editor object selection, real previews, cancellation and workflow resume. Normal tools also work without an embedded UI.

Furnished scene kits

Build and arrange three matching kits, arbitrary upright yaw, surface alignment, face-anchor placement, saved layout reuse and undo.

Art review loop

Persistent reference images/notes, native diagnostics, same-camera evidence and at most two concrete repairs with automatic recapture. No fabricated aesthetic score.

External part editing

Group source meshes, edit or replace one part, independent locks, preserved untouched geometry, validated bake reuse and native material-only updates.

Usage-aware preparation

Native geometry/material/texture/LOD measurements; mobile, scene and hero presets. Texture memory is labeled as an estimate; no inferred FPS.

Optional model generation

Meshy text/image adapters or a documented self-hosted API, 1–3 candidates, saved remote IDs, preview → preparation → native import. Paid provider use is explicit.

Say “Make and furnish a reading corner rotated 35 degrees”, “Only change this imported model's rim”, or “Compare this prop to our saved art reference and fix the specific differences.” Full v0.6 guide · Provider contract and test boundaries.

v0.5: existing models into game assets

Improvement

What is implemented

Asset intake

Local GLB/glTF, FBX and Blender files, plus credited Poly Haven CC0 search/download. Models produced by another AI tool enter the same workflow.

Game preparation

Retained original; size/axis correction; measured simplification; opaque PBR and source-normal baking; native Unity LODGroup / UE LODs; box/convex/no collision. Failed geometry budgets never enter the import queue.

Better visual iteration

Three curated matching kits, three structural variants for each of nine recipes, consistent source studio framing, native before/after captures with a saved camera, and selection-driven recipe edits.

Try: “Prepare this GLB for 8,000 triangles, make its largest dimension 1.5 meters, generate LODs and send it to Unity.” Or “Find a Poly Haven ceramic vase and show its prepared preview before importing.” File intake never bills generation services. The optional v0.6 generation adapter is a separate, explicitly selected workflow. Usage guide.

Six foundation authoring features

Feature

What it does

Project art direction

Persistent Cozy, Heritage or Workshop defaults, palette, wear and quality. Adopt a retained recipe's style or bind existing engine materials without editing them.

Designed prop library

Nine parametric recipes: crate, table, chair, sign, stool, bench, barrel, cabinet and shelf. Silhouette alternatives, bevels, supports and hardware.

Automatic material preparation

UV generation and actual base-color, roughness, metallic and tangent-normal baking for curated wood/metal/paint/stone. Packed Unity metallic/smoothness maps and explicit UE material inputs.

Semantic edits and locks

Change the backrest, seat, legs or other named parts. Geometry and material locks remain independent through whole-asset revisions.

Contextual placement

Real scene bounds; around/along/under/right/front layouts, conservative overlap checks, optional under-anchor fitting, repeated instances and placement undo.

Draft comparison

Two or three real 3D alternatives with studio/front/back views. Drafts stay outside engine assets and scenes; the chosen design is baked and published.

These features are available through both AI hosts and the local workshop. Installed clients expose three entrypoints; game_workflow discovers and invokes all 69 tools. Legacy full discovery remains available for manual clients. Tool contract.

Refine by conversation

“Make a matching table, chair and cabinet set.”

“Make this chair's backrest 15% taller; keep the seat and legs.”

“Lock the backrest geometry before changing the project style.”

“Put four chairs around the table I selected, then show the actual engine preview.”

“Fit the stool under the selected table.”

“Tint only the selected instance green.”

“Undo that placement,” or “Restore this asset's previous model.”

Semantic edits update shared assets. Instance transforms and tints run directly in the editor. Revisions preserve native asset identity, existing instance transforms and tool-created tint overrides. Unity prefab-root components and Unreal Actor labels/tags survive. Save your scene normally.

Background jobs, exact-request receipts, cancellation, source history and engine PNG previews remain available. Source restore and instance undo have different scopes; neither provides whole-project rollback.

Supported scope

Static meshes, PBR with emission/alpha-cutout/ordinary alpha blending, Unity Built-in/URP, and UE native Static Mesh assets. Custom shapes use AI-authored Blender Python or existing GLB/glTF, FBX and Blender files. Each revision retains source/provenance and reports geometry/material/UV/budget checks.

Automatic baking covers recipe surfaces and common Principled PBR graphs. Refraction, mixed shaders, skeletal rigs/animation, HDRP and arbitrary Blueprint generation are outside this release. Image-to-3D requires an optional external provider; no inference model is bundled. Shape error uses bidirectional surface sampling, not a guaranteed maximum distance; inspect textures and silhouettes. Collision is approximate: UE falls back to a native 26-DOP convex hull with an explicit warning if decomposition produces no hulls. Recipe candidates are deterministic structural alternatives; service candidates depend on the provider. Layout supports upright yaw with conservative oriented bounds, not exact concave collision. Reports do not score beauty. Generated Python is trusted local code.

Asset contract · Unreal details · Authoring walkthrough in Chinese

Verification and development

Real Blender 4.2.0, Unity 2022.3.62f3c1 Built-in + URP 14.0.11, and Unreal 5.7.2 are exercised on macOS Apple Silicon. The tests cover baked maps, actual unchanged-part geometry, material reuse, identity, instance overrides, layout/undo, isolated drafts and native previews. Host tests invoke real Codex app-server and Harness ToolRuntime tools without an LLM request.

Portable Windows/macOS binaries are checked separately. Windows package checks do not establish Windows Unity/UE compatibility. Exact matrix and reproduction commands.

uv sync --locked
uv run prompt-to-scene-app
uv run pytest -q
uv run ruff check .

MIT licensed. Contributions and reproducible engine compatibility reports are welcome.

Available Tools

69 tools
adapt_asset_materialsA

Preview a reference look on Unity prefabs or UE static meshes; selectively apply/undo material slots.

Reference can be a native material or model. Fields: color, roughness, texture_scale. Preview creates separate material/asset variants and real before/after renders. Inspect unsupported-field warnings; do not claim visual equality across different shaders. Apply uses selected row IDs, preserves geometry/textures, and refuses changed assignments.

Inputs: mode, paths, fields, plan_id, +2 more.

apply_usage_presetB

Prepare a retained source for mobile_prop, scene_prop or hero_prop with measured LODs.

Uses the preset's triangle budget, texture resolution and LOD ratios. Reduction may fail explicitly when its deviation limit cannot be met; existing imported geometry stays usable.

Inputs: asset_id (required), preset.

arrange_propsA

Place managed props relative to a selected real scene anchor, with collision checks/undo.

items: [{asset_id, count=1, object_id?}], up to 32 instances. Relations: around, along, under, right, front. fit can shrink under-anchor props. Uses oriented bounds for upright objects and any horizontal anchor yaw. Existing instances move, extra ones are duplicated. If inspection is queued, retry with inspection_request_id. If arrangement is queued, poll its exact request with get_task_status; do not submit the layout again.

Inputs: items (required), fit, gap, relation, +4 more.

build_assetA

Execute trusted bpy code in background Blender; save .blend and queue engine import.

Use stable asset_id (lowercase letters/digits/_/-) to update the same asset. Position is engine XYZ meters, applied ONLY when first placing the asset. Each script builds a complete asset from scratch. Delete default scene objects, create an Export collection, link meshes to it. Static PBR, emission and alpha mask/blend; supported designed graphs bake automatically. Unsupported materials fail explicitly. No paid model API or additional Blender MCP required.

Inputs: asset_id (required), blender_python (required), collider, position.

build_levelA

Plan/build/check/remove a connected modular level with real collision clearance.

settings: modules=[{cell:[grid_x,grid_y,floor],kind:room|corridor|stair,direction:0..3}], cell_size, story_height, door_width/height, player_radius/height, max_step, position, yaw. Directions: south/east/north/west. Stairs need a lower and upper connected landing. Max 24 modules. Disconnected/too-small plans fail before editor mutation. Native checking uses sampled standing capsules, not a baked NavMesh or a complete character-controller simulation.

Inputs: level_id (required), mode, settings.

cancel_taskC

Request cancellation. A native import already in progress may finish; check status.

Inputs: request_id (required).

capture_reviewA

Capture a native before/after comparison with identical saved camera framing.

Capture before, wait for completion, modify asset, then capture after with the same review_id and view. get_review lists capture tasks; get_preview(request_id) returns images. Engine project lighting remains visible; Blender source previews use the studio rig.

Inputs: asset_id (required), view, stage, review_id.

choose_variantC

Publish the selected draft at final quality with automatic textures and engine import.

Inputs: index (required), study_id (required), quality, position.

compose_sceneA

Build and furnish a small scene, or save/place a reusable layout in this project.

create builds a matching kit then places it around its table; selected upright anchors supply position/yaw. An explicit position is metres in engine axes. mode=save records selected instances (or asset_ids) as template; mode=place duplicates saved instances. Poll the returned workflow ID. Interrupted workflows resume without repeating completed stages. Result has undo_id. Arbitrary horizontal yaw is supported, tilted anchors are not.

Inputs: kit, yaw, mode, prefix, +4 more.

configure_asset_visionC

Configure an optional OpenAI-compatible vision endpoint. Credentials stay in the OS store.

Inputs: model, api_key, endpoint.

configure_interactionB

Attach/update door/chest/pickup behavior. Pivot/offset are local engine XYZ meters.

A door/chest requires a separate prepared moving asset. The first UE attachment converts the plain managed StaticMeshActor to a native Blueprint; later revisions keep that Actor.

Inputs: kind (required), asset_id (required), uses, angle, +9 more.

connect_projectB

Connect the chosen project for both clients and install its bridge with a backup.

Unity takes a project folder; UE takes a folder or .uproject. Restart UE after installation.

Inputs: project_path (required), blender_path, install_bridge.

create_interactive_propA

Build a door, chest or pickup with Blender geometry and native gameplay behavior.

Dimensions are width/depth/height in meters; position uses target engine axes. Retains separate base/moving meshes and a reusable Unity prefab or UE Blueprint. Poll this workflow until completed. Aim the game camera and press E for the optional demo, or bind your own input.

Inputs: kind (required), asset_id (required), color, position, +1 more.

create_propB

Create an art-directed prop using the saved project style and automatic PBR baking.

inspect_library lists nine recipes, parameters, parts and quality settings. Omit quality to inherit the project. New assets are placed near the camera; revisions keep transforms.

Inputs: kind (required), asset_id (required), quality, collider, +2 more.

create_prop_setB

Create up to eight matching designs with one saved style. Each needs kind and asset_id.

Optional fields: parameters, position, collider. Poll every returned task; after all imports use arrange_props for copies/placement. Partial submission reports already-started tasks.

Inputs: items (required).

create_style_kitB

Create a curated reading_corner, village_market or makers_workshop set.

Each uses matching art direction and purpose-designed structures, placed in a spaced row. A new prefix is required. Does not change project-wide defaults. Poll each task to imported.

Inputs: kit (required), prefix (required), quality.

create_variantsA

Generate two or three real 3D drafts with identical studio lighting and three views.

Drafts stay outside the engine assets/scenes. Use only when exploring alternatives is useful; normal create_prop publishes directly. Wait with get_variants, view get_studio_preview, and publish the user's chosen candidate with choose_variant.

Inputs: kind (required), asset_id (required), count, parameters.

describe_project_assetsB

Capture actual model thumbnails and metadata. Optional vision labels require a configured endpoint.

Without a provider, poll this job, call get_asset_evidence on each evidence request_id, inspect the image, then save_asset_description. Never claim content recognition from filenames alone.

Inputs: paths (required), allow_remote, use_provider.

design_assetA

Save/read an asset design tied to the game's context and reference notes.

Omit description to read. role: environment/interactable/hero. Supply concrete decisions (silhouette, structure, materials, story, avoid) derived from gameplay and world context. Default route is custom Blender modeling; specify recipe_kind only if a listed form fits. Build the same asset_id to retain this immutable brief with its source revision. Existing recipe revisions keep their original design; planning alone does not rebuild geometry. Follow the returned design, then inspect a real render. No model API or beauty score is used.

Inputs: asset_id (required), role, decisions, description, +2 more.

edit_imported_partA

Group, edit, lock or replace parts of an imported static model.

inspect_asset.report.parts lists source parts. members groups existing named parts into part. Changes: scale/offset/rotation XYZ in Blender Z-up, linear color RGB, roughness, metallic. replacement_path is a local GLB/glTF/FBX/BLEND fitted to the chosen part bounds. Unlock explicitly before changes. Untouched parts and engine instances retain identity. A single fused mesh is one part: this tool does not invent semantic segmentation.

Inputs: part (required), asset_id (required), changes, members, +3 more.

edit_prop_partA

Edit or lock one named part of a recipe or imported model; inspect_asset lists parts.

Changes: scale XYZ factors, offset XYZ meters, rotation XYZ degrees, color linear RGB, material wood/metal/paint/stone, roughness and wear. Part coordinates are Blender Z-up. Recipe transforms pivot at the bottom center; imported parts use their bounds center. Locks retain their saved geometry/material on later changes; explicitly unlock before changing locked properties.

Inputs: part (required), asset_id (required), changes, lock_geometry, +1 more.

edit_sceneA

Direct engine edit: transform, tint, ground or focus, without a Blender rebuild.

selected scope changes selected managed instances only. asset scope changes all LOADED instances of asset_id in this scene. transform values: move=[x,y,z] meters, rotate=[x,y,z] degrees, scale=[x,y,z] multipliers. tint values: color=[r,g,b] linear, optional material= original Blender material name. Result contains undo_id for restoring the edit.

Inputs: operation (required), scope, values, asset_id.

edit_selected_propA

Resolve the engine selection and edit a named recipe part without typing an asset ID.

Changes the selected asset's shared recipe (all its instances). Requires exactly one selected managed asset. If inspection is queued, resume with inspection_request_id. Imported static models also support named-part geometry/material edits and locks.

Inputs: part (required), changes, lock_geometry, lock_material, +1 more.

game_art_directionA

Read/save gameplay, world, style_notes, view and construction for this game.

Interpret the user's description with the current AI host; do not require a form. view: isometric/top_down/third_person/first_person. construction: handcrafted/salvaged/machined. Partial updates retain omitted fields. detail: auto/readable/balanced/closeup; match_game_style learns from actual reference images. Text guides custom modeling; structured choices also affect recipe geometry/surfaces. This changes future briefs, not already imported assets. Use set_project_style for palette.

Inputs: settings.

game_workflowC

One entry for a game-development task. Search/describe only the capability needed.

Start with context and find_assets/find_designs, then produce a saved plan containing recipe/custom/source/template/interactive items. A single task tracks building, importing, gameplay attachment, optional room furnishing and review. Retry with resume, not a new plan. review_images returns actual images; inspect them before saving feedback or repairing parts. Existing tools are also available by their exact action name through this gateway.

Inputs: query, action, values, operation.

generate_modelA

Generate 1-3 textured GLB candidates, then use the existing preparation/import pipeline.

Configure providers in the local app. Meshy consumes credits: allow_paid only when user authorization covers this provider/count. Self-hosted adapter implements docs/PROVIDERS.md. Optional 1-4 PNG/JPEG references. Default candidates stay outside the scene for review; publish_prepared selects one. Saved provider IDs survive interruption without resubmission. Cancellation stops local work; an already submitted provider task may still consume credits.

Inputs: prompt (required), asset_id (required), position, provider, +5 more.

get_art_referenceA

Return the saved reference image for client visual review; notes are in open_workbench.

Inputs: no named parameters.

get_asset_evidenceC

Return the native thumbnail that supports an asset description.

Inputs: evidence_id (required).

get_asset_statusA

Read an engine receipt, optionally wait up to 30s for a specific build request.

Pass the build's request_id to prevent stale success. A wait timeout remains queued/unknown; superseded means another revision is current. Imported includes paths, geometry and scene.

Inputs: asset_id (required), request_id, wait_seconds.

get_previewB

Return an engine PNG. Retry queued captures with their request_id.

For a completed playcheck with captures, view='before' returns the initial image; the default returns the post-interaction image.

Inputs: view, asset_id, request_id.

get_project_styleB

Read persistent art direction shared by Codex, Harness, new props and prop sets.

Inputs: no named parameters.

get_reviewC

Return before/after native capture task states without creating another capture.

Inputs: review_id (required).

get_studio_previewA

Return an actual Blender source render (studio/front/back), including isolated drafts.

Clearly label as Blender studio, not an engine screenshot. get_preview shows the game scene.

Inputs: asset_id (required), request_id (required), view.

get_task_statusB

Query or wait up to 30 seconds for any editor action, preview or build task.

Inputs: request_id (required), wait_seconds.

get_variantsC

Read each candidate's exact status, report and preview views; no aesthetic score.

Inputs: study_id (required).

import_assetA

Prepare and import local GLB/glTF/FBX/BLEND or a selected Poly Haven model.

source={provider: local, path: absolute_file} or {provider: polyhaven, id: catalog_id}. settings: triangle_budget, texture_size (256/512/1024/2048), max_deviation_percent, lod_ratios (decreasing list), collision (convex/box/none), target_size (largest dimension in meters), unit_scale, up_axis (auto or +/-X/Y/Z), ground. File importers honor format axes; up_axis is an explicit correction AFTER that conversion. Original file is unchanged. Common opaque Principled PBR graphs and glTF ORM inputs are baked; rigs/transparency/mixed shaders fail explicitly. preview_only makes an isolated prepared draft; use its source with publish_prepared when accepted. Poll the exact request, inspect report and before/studio views. Poly Haven downloads retain CC0 provenance. No generation service is billed.

Inputs: source (required), asset_id (required), position, settings, +1 more.

inspect_assetB

Read source script, recipe parameters and successful revisions before editing.

Inputs: asset_id (required).

inspect_libraryC

List curated styles, quality budgets, recipe parameters and semantic part names.

Inputs: no named parameters.

inspect_performanceA

Read actual native triangles, vertices, material slots, textures and LOD counts.

If queued, retry with request_id. Presets mobile_prop/scene_prop/hero_prop expose budgets. Texture bytes are an RGBA8+mip estimate, not measured VRAM. Shared meshes are identified; FPS and draw calls require an actual engine profiler and are never inferred here.

Inputs: preset, asset_id, request_id, wait_seconds.

inspect_sceneB

Read the active scene and actual selected managed props to resolve 'this object'.

Inputs: no named parameters.

inspect_targetC

Inspect engine, coordinates, Blender, editor heartbeat and pending/completed assets.

Inputs: no named parameters.

list_generation_providersA

List optional configured Meshy/self-hosted generation adapters; never return secrets.

Inputs: no named parameters.

list_projectsA

Discover saved/local projects, Blender and recipe defaults without a connection.

Inputs: no named parameters.

manage_asset_inboxC

Scan the designated source inbox, inspect jobs, or explicitly retry failed revisions. Originals are retained.

Inputs: mode, paths.

match_game_styleA

Recognize this project's look using actual images and the current AI host's vision.

First pass evidence IDs from describe_project_assets, or use_reference for set_art_brief's saved image. Returns the images and a source_token. Inspect them; then call again with that token and analysis using the returned schema. Applies inferred palette, material roughness, shape parameters, detail density and art notes to future designs. Confidence below 0.6 keeps current defaults. No external vision service is invoked and existing assets are not changed. The host interprets images; the tool validates/saves the interpretation, not a beauty score.

Inputs: analysis, evidence_ids, source_token, use_reference.

open_workbenchA

Show the unified task, selection, preview, generation and review workbench.

MCP Apps-capable hosts can display this in chat. Other clients can use all normal tools and the double-click local app; an embedded UI is never required for the workflow.

Inputs: no named parameters.

organize_project_assetsA

Automatically name/classify project assets through native Unity/UE moves; supports undo.

scan: inventory Assets or /Game, optionally one subfolder; poll get_task_status. plan: use scan_id equal to the completed scan request_id. settings: destination, rename (bool), group_by ('type' or 'source'), exclude (project paths), overrides ({old_path:semantic_name}), rules ({kind:{folder,prefix}}). inspect: paginated exact plan; history: recent plans. apply/undo: use the saved plan_id then poll. Applies collision-resolved names, verifies stale candidates, preserves GUID/native references and records inverse moves. Native files are saved; unrelated scene edits are not rolled back. Protected folders, scripts, scenes/data/unknown types stay in place with reasons. Unreal keeps required redirectors. Code/config string paths are not rewritten; exclude those resources. No model provider, visual AI guessing or paid calls.

Inputs: mode, limit, scope, offset, +3 more.

prepare_assetB

Reprocess an imported asset from retained source with measured simplification and LODs.

Uses import_asset settings. A failed error/budget check queues nothing. Existing engine identities/instances survive successful reimport. Geometry locks apply to recipe edits; explicit preparation may reduce geometry. Review source before/studio and engine captures.

Inputs: asset_id (required), settings.

project_conventionsC

Read/save shared naming, folder, preparation and intake defaults, or suggest prefixes from a native scan.

Inputs: mode, scan_id, settings.

protect_assetB

Inspect/set/clear custom material overrides and persistent root attachment points.

bindings: [{slot, material_path}] in Assets/ or /Game/. sockets: [{name, position, rotation}] use engine XYZ meters/degrees. Missing protected slots block later imports. Generated material property edits and arbitrary generated hierarchy changes are outside the preservation contract.

Inputs: asset_id (required), mode, sockets, bindings.

publish_blendB

Publish the Export collection of an existing saved .blend without modifying the original.

Use this after another Blender tool has modeled and saved an asset. Same material contract and queued/result semantics as build_asset. Blender file auto-execution is disabled. Use publish_prepared for a reviewed import_asset preview to retain preparation/provenance.

Inputs: asset_id (required), blend_file (required), collider, position.

publish_preparedB

Send an accepted isolated import_asset preview to the engine, retaining its original.

Pass the completed preview's asset_id and request_id. Materials, LOD settings and source attribution survive publication; the retained original remains available for reprocessing.

Inputs: asset_id (required), request_id (required).

repair_qualityA

Apply a concrete part repair to a completed quality review, then recapture and recheck.

At most two repairs including automatic grounding; rejects assets changed outside this review. Wait for the returned review request, then inspect its fresh before/after images.

Inputs: part (required), changes (required), request_id (required).

restore_assetC

Reimport a previous successful source, retaining scene instances.

Inputs: asset_id (required), revision.

resume_workflowC

Resume an interrupted composition, quality or generation task using its saved stages.

Inputs: request_id (required).

reuse_project_assetB

Preview or place an existing project model/prefab/Blueprint by its returned native path.

Reuses the original native asset; does not duplicate asset files or claim new authorship. get_preview(request_id) reads the preview PNG after the action completes.

Inputs: path (required), mode, position.

review_asset_updateD

Read native protected slot conflicts before publishing a completed prepared candidate.

Inputs: asset_id (required), candidate_request_id (required).

review_qualityB

Measure native issues and capture same-camera before/after with a two-repair limit.

auto_fix aligns to a detected collision surface only when the measured gap is <=0.5m. Visual findings need client vision, using get_preview and get_art_reference. No aesthetic score or visual-pass claim is generated. repair_quality applies concrete part edits and refreshes the comparison automatically. Poll the exact workflow via get_task_status.

Inputs: asset_id (required), preset, auto_fix.

revise_propA

Change shared recipe dimensions or apply the current project style; preserve locked parts.

This changes every instance using this asset. For one instance use edit_scene instead. apply_design uses this asset's saved design_asset brief, including construction details. Omit it to retain the original design. Geometry/material locks remain independent.

Inputs: asset_id (required), quality, parameters, apply_design, +1 more.

run_playcheckB

Run interaction/range/geometry and optional level-clearance checks in real Play/PIE.

Requires Edit mode. Restores Edit mode after completion/cancellation; existing game scripts run normally. Poll the same ID; inspect development.passed, checks and warnings. Frame deltas are measured on this editor/machine, not a target-device benchmark. No paid AI is used.

Inputs: capture, duration, level_id, asset_ids.

save_asset_descriptionA

Index a visual description: name, object_type, description, materials[], style, uses[], confidence.

Keep uncertainty visible. Only set corrected for an explicit user correction. Corrections are protected from later automatic runs. This updates search metadata, not native filenames. To rename, use the saved name as an organize_project_assets override for the selected path.

Inputs: description (required), evidence_id (required), corrected.

search_assetsA

Search CC0 Poly Haven models by English tags; returns credited sources and thumbnails.

Uses a cached catalog, no API key. Choose a result and import_asset with source={provider: polyhaven, id: returned_id}. Search never downloads model files.

Inputs: limit, query, offset.

search_project_assetsA

Index project meshes/prefabs, then rank names, tags, materials, notes and desired size.

First call queues the native index. Poll then call again with the same request_id and query. Returns paths, dimensions, measured geometry and declared license. Preview before placement using reuse_project_asset(mode='preview'). This is local keyword search with Chinese aliases.

Inputs: size, limit, query, request_id.

set_art_briefC

Persist a reference image and art direction; optionally adopt a recipe style/palette.

Use the client's vision for interpretation. Images are reference evidence, not a claim of automatic style extraction or reconstruction. Existing assets require explicit edits.

Inputs: notes, overrides, image_path, reference_asset.

set_project_styleA

Remember art direction for future assets; existing assets change only on explicit revision.

Presets: cozy, heritage, workshop. Quality: draft/mobile/desktop/hero. Overrides: palette (wood/metal/paint/stone linear RGB), roundness/taper/wear 0..1, material_bindings (role -> existing Assets/ or /Game/ material path). Reused materials remain untouched. reference_asset adopts an existing recipe's style. Use client vision for reference images, then propose concrete palette/shape values; this tool does not reconstruct images.

Inputs: preset, quality, overrides, reference_asset.

set_scene_lookA

Apply/inspect/capture/restore warm_cartoon, cool_scifi, moonlit or neutral scene lighting.

Owns a native lighting/sky/post-process/camera rig; saves prior lighting for restore. The presentation camera stays fixed across preset changes. Poll request; get_preview(request_id) reads captures. Existing scene lights are disabled while the owned look is active.

Inputs: mode, preset, position.

tag_project_assetC

Save searchable local annotations and user-declared source/license for an asset path.

Inputs: path (required), tags, notes, source, +1 more.

undo_scene_editC

Restore a tool edit's instance transforms/material overrides in its original scene.

Inputs: undo_id (required).

workbench_actionD

Perform a workbench button action. Uses the same validated workflows as normal tools.

Inputs: action (required), values.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.7/5.0

    Scored across 69 tools

    Disambiguation2/5

    Heavy overlap across creation tools (create_prop, create_prop_set, create_variants, generate_model, build_asset, design_asset, create_style_kit, create_interactive_prop), editing tools (edit_scene, revise_prop, edit_selected_prop, edit_prop_part, edit_imported_part, adapt_asset_materials), and publish/review tools (publish_blend vs publish_prepared vs import_asset; capture_review vs review_quality vs repair_quality vs get_preview vs get_studio_preview). Long descriptions help somewhat but an agent must read carefully to pick correctly. Boundaries are genuinely blurred between many of these.

    Naming Consistency4/5

    Almost everything follows a snake_case verb_noun pattern (create_prop, edit_scene, inspect_asset, list_projects, get_preview). A few noun-phrase names deviate (game_art_direction, project_conventions, game_workflow, open_workbench), but the convention is otherwise predictable and readable.

    Tool Count1/5

    69 tools is far beyond what any single-purpose server should expose, and the surface splits one pipeline across many near-duplicate verbs. The count alone would be an extreme mismatch even for a broad asset pipeline, and overlap compounds the problem.

    Completeness4/5

    Coverage of the game-asset lifecycle is unusually thorough: create, design, import, prepare, edit, arrange, review, performance-check, protect, resume, undo and restore are all present. Minor gaps exist (no explicit asset deletion or PR-like review-comment analog), but agents have workarounds.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI assistants to drive a live Blender session over MCP by creating and transforming primitives, building and assigning materials, inspecting scenes and objects, capturing viewport screenshots, and executing arbitrary bpy Python. Commands are relayed over a local TCP bridge to a Blender add-on and executed on Blender's main thread, supporting multiple simultaneous AI clients.
      MIT