API reference

From an idea
to your scene.

Create with Bake3D. Keep working in your editor. Connect an AI assistant through MCP, or bring characters into Blender, Unity, Unreal Engine and Godot with the editor tools below.

Generate

One image or prompt becomes a textured mesh with a skeleton and skin weights.

Direct the motion

Describe the action, or choose a preset that fits the creature’s joints.

Import and play

Download a GLB or FBX with baked keyframes. Your editor owns the scene and playback.

Connect an MCP assistant

Create an API key in your account. Add Bake3D as a Streamable HTTP server at https://bake3d.ai/api/v1/mcp and configure Authorization: Bearer YOUR_KEY. Keys require Pro or Studio and use the same credit balance as the studio.

For Codex, set BAKE3D_API_KEY in the environment that starts the app, then add:

Codex configuration
[mcp_servers.bake3d]
url = "https://bake3d.ai/api/v1/mcp"
bearer_token_env_var = "BAKE3D_API_KEY"

Other MCP clients use the same endpoint and bearer header. This server negotiates protocol versions 2025-03-26, 2025-06-18 and 2025-11-25. It uses JSON responses and does not require a persistent session.

Example request to your assistant
Generate a four-legged ceramic fox with Bake3D.
Wait for the job to finish, then give it a curious head turn.
Export the animation in place at 30 fps and import it into my scene.

Bake3D creates the asset. To place it into an open editor, the assistant also needs that editor’s bridge or the integration below. An MCP connection by itself does not grant control of your desktop applications.

ToolUse it for
bake3d_accountCredits, plan and action costs
bake3d_list_projectsFind your existing characters
bake3d_generateImage or prompt to a generation job
bake3d_get_jobProgress and failure details
bake3d_get_projectRig, labels, motion and downloads
bake3d_rigRe-rig an existing mesh
bake3d_initial_animationCreate or recover the included motion
bake3d_list_animationsPick a saved animation ID for export
bake3d_list_presetsFind built-in motion IDs
bake3d_animateDescribe and save new motion
bake3d_exportDownload a rig or baked animation
bake3d_cancel_jobCancel a job and refund its charge
bake3d_delete_projectPermanently delete a project (confirm=true)

Blender

Download the Blender add-on
  1. Install the downloaded Python file from Preferences → Add-ons → Install from Disk, then enable Bake3D.
  2. Open the 3D Viewport sidebar and select Bake3D. Enter an API key, or start Blender with BAKE3D_API_KEY in its environment.
  3. Describe a character and generate it. Use Check job to read progress. Existing project IDs also work.
  4. Compose motion, choose a preset ID, use the latest saved animation, or leave both animation fields empty for the included initial motion; enable Rest pose only for an unanimated copy. Import the character and play the timeline.

The add-on calls Bake3D over MCP and imports a native armature, textured mesh and animation. Keys stay in the current session. Imports add objects and support Blender’s undo; your existing scene is preserved.

For a connected Blender MCP bridge, the registered operator is bpy.ops.bake3d.import_character(project_id="…", animation_id="…"). Set the key in the add-on first. Manual import is also available through File → Import → glTF 2.0.

Verified in Blender 4.4 with a real MCP export, an armature, embedded textures and moving keyframes. Described-motion calls wait for the service and may briefly block the editor; long generation jobs return immediately for later status checks.

Unity

Download the Unity editor tool
  1. Install com.unity.cloud.gltfast through Package Manager. The tool targets Unity 6 and glTFast 6.19.
  2. Put Bake3DWindow.cs in your project’s Assets/Editor folder. Open Tools → Bake3D → Character studio.
  3. Enter a key, generate a character and check its job. Compose motion or use a saved animation ID, then import.
  4. The tool downloads a GLB into Assets/Bake3D and instantiates the imported prefab. Expand the asset to inspect its AnimationClips. Preview a clip or assign it to your animation controller.

Use a generic skeleton for arbitrary creatures. Humanoid retargeting requires an appropriate humanoid bone mapping; it is not suitable for every morphology. Do not install two default GLB importers at once.

The editor tool compiled against Unity 6 before the saved-animation button was added on 2026-09-09; that addition has not been compiled yet. Native import and playback validation remains pending. The server export and Blender round-trip are verified separately.

Unreal Engine 5

Download the Unreal editor script
  1. Under Edit → Plugins, enable the Python Editor Script Plugin and Editor Scripting Utilities; keep the Interchange Framework plugin enabled. Restart the editor. The script targets UE 5.3 or newer (Python 3.9+).
  2. Copy bake3d_unreal.py into your project’s Content/Python folder. Put import bake3d_unreal in Content/Python/init_unreal.py for a Tools → Bake3D menu on start, or run that line in the Output Log’s Python console.
  3. Start the editor with BAKE3D_API_KEY set, or run bake3d_unreal.set_api_key("bk_live_…") in the console. The key is held in memory for the session and never written to disk or project settings.
  4. From the console: generate(prompt=…) or generate(image_url=…), wait_for_job(job_id), list_animations(project_id), list_presets(), then import_character(project_id, animation_id=…), preset_id=… or rest_pose=True. Leave the motion arguments empty for the included initial animation. Tools → Bake3D covers the account, rigged-project listing and importing the latest rigged project.

Each import downloads the GLB to Content/Bake3D and imports it with unreal.AssetImportTask through the Interchange glTF pipeline into /Game/Bake3D, requesting a Skeletal Mesh, Skeleton, materials, textures and Animation Sequences, without a physics asset. Interchange’s glTF translator converts metres to centimetres (scale 100) and Y-up to Z-up; the script leaves the pipeline’s uniform import offset at 1.0 so that conversion is not applied twice. If the glTF translator is unavailable, the script keeps the downloaded file and names the plugin to enable.

Polling from the console blocks the editor while it waits; the progress dialog’s Cancel stops waiting, not the job. Signed downloads never receive the API key and are accepted only from the Bake3D file endpoint. Read the Unreal import guide for the manual Interchange workflow and playback checks.

Tested scope: the script’s client and import logic are verified in CI with a stubbed unreal module and a local fake MCP server (HTTPS and key checks, initialize and tools/call sequence, export download rules, AssetImportTask options and destination, disabled-plugin message, menu registration). It has not been run inside Unreal Editor. Interchange’s handling of Bake3D skins, textures and clips, imported asset names and the unit conversion remain unverified; check scale, axes and root motion in your project.

Godot and other glTF tools

Download the Godot add-on

Extract the ZIP into your project and enable Bake3D under Project → Project Settings → Plugins. Open a 3D scene and the Bake3D bottom panel. Enter an API key, generate from one image URL or text, check the job, choose motion, and import. The add-on uses MCP and saves a new GLB plus a compressed native scene. Its play/pause control previews the imported motion.

For manual import, copy the GLB into your project. Match Animation → FPS to the export, and disable the AnimationPlayer’s Optimizer in Advanced Import Settings when checking exact foot contact. Native tests found that default resampling and key reduction can alter the gait. Read the Godot animation import guide for the full workflow.

Godot 4.7.2: native compilation, MCP discovery/free export, five rig imports, saved scene reloads and sampled playback comparisons verified. Visual panel inspection and paid generation from Godot remain unverified.

The same asset can be loaded in three.js and other glTF 2.0 applications. A custom client can use the export API, save the signed download, and call its host editor’s import command.