Bake3D MCP server
Let a compatible assistant coordinate 3D generation, rigging, animation and export. Keep your project and job IDs to continue the same work across sessions.
Connection
Use Streamable HTTP at https://bake3d.ai/api/v1/mcp with Authorization: Bearer YOUR_API_KEY. Create a key in Account → API; API access requires Pro or Studio. Store the key in the client’s credential configuration.
The endpoint negotiates MCP versions 2025-03-26, 2025-06-18 and 2025-11-25, returns JSON responses and does not require a persistent session. Read the client configuration example or the complete workflow guide.
Available tools
| Tool | Purpose | Cost |
|---|---|---|
| bake3d_account | Read balance, plan and action costs. | Free |
| bake3d_list_projects | Search your full library and page through project IDs. | Free |
| bake3d_get_project | Read the rig, saved animation and asset downloads. | Free |
| bake3d_generate | Start from one image URL, up to four image URLs of the same subject (imageUrls), an uploaded image asset ID or a text prompt. | 25 mesh + 10 rig |
| bake3d_get_job | Read progress and terminal status. | Free |
| bake3d_initial_animation | Create or recover the current rig’s included introduction. | Free · bounded retries |
| bake3d_rig | Start a new rigging job for an existing mesh. | 10 credits |
| bake3d_list_animations | List a project’s saved animations with id, name, duration and kind. | Free |
| bake3d_list_presets | List motion preset IDs; with projectId, how each fits that rig (amplitude factor or reason). | Free |
| bake3d_animate | Describe motion and save an animation on the project. | 5 credits |
| bake3d_export | Request a rigged or animated GLB or FBX download. | Free |
| bake3d_cancel_job | Cancel an active job and refund its charge. | Free |
| bake3d_delete_project | Permanently delete a project, its files and animations. Requires confirm=true. | Free · irreversible |
Tool schemas are returned by MCP tools/list. Generation and described-motion calls spend credits; submit once per intended result. Accepted jobs that fail are refunded. bake3d_delete_project is the only tool that removes data: it is owner-only, refuses projects with a running job, requires confirm: true, and cannot be undone or refunded.
Find an existing project
Use bake3d_list_projects to search the full account by title or category. It accepts q, filter (all, active, ready, needs-work), sort (updated, created, name), and limit (1–100; default 25). Pass the returned nextCursor as cursor with the same search options to continue. Stop when it is null. Start without a cursor to refresh the library after projects change.
{
"q": "vehicle",
"filter": "ready",
"sort": "name",
"limit": 25
}From job to playable animation
- Call
bake3d_generatewith exactly one source. PassimageUrls(one to four angles of the same subject, the first being the primary reference) when the user has several views; the job’soutput.viewssays how many the geometry engine used, and a fallback engine keeps only the primary image. Save the returned project ID and job ID. - Poll
bake3d_get_jobevery 3–5 seconds until succeeded, failed or canceled. Inspect an error before retrying. - Read the project and its
initialAnimationId, or callbake3d_list_animationsfor the saved clips with their IDs, durations and kinds (initial, described, preset, edited). The generation workflow attempts an included introductory motion;bake3d_initial_animationcan recover it. Usebake3d_animatewhen you want a different described action. - Call
bake3d_exportfor the included motion, or pass a specific saved animation ID. Download the signed GLB URL within two hours, or request a fresh export link.
{
"projectId": "YOUR_PROJECT_ID",
"prompt": "Turn the head slowly and wag the tail gently",
"durationSeconds": 4,
"loop": true
}{
"projectId": "YOUR_PROJECT_ID",
"animationId": "YOUR_ANIMATION_ID",
"fps": 30,
"rootMotion": false
}Set rootMotion: false for an in-place clip. Export accepts 24, 30 or 60 fps. Choose a saved animationId or a presetId; omit both to use the included initial animation when available. Set restPose: true for an unanimated copy. Set format: "fbx" for a binary FBX 7.4 file (skeleton, skin weights with up to four influences per vertex, embedded base-colour texture, one baked clip per file; verified in Blender 4.4). Presets are fitted to the actual rig: each plays at the largest amplitude its skin deformation budget allows (bake3d_list_presets with projectId reports the factor), and a preset that would tear the skin even at 30% amplitude, or that needs parts the rig lacks, returns HTTP 422 with the reason. Included-motion recovery allows three jobs per rig per UTC day and six starts per account in 24 hours; it does not spend credits.
Editor import and limits
Bake3D returns the asset. An editor bridge, the Bake3D add-on or a manual import places it in your scene. See the Blender, Unity, Unreal and Godot instructions for setup and validation status.
Server animation export currently supports one skeleton, up to 256 joints, clips up to 30 seconds and source files up to 24 MiB. Motion composition accepts durations from 0.5 to 20 seconds. Review the rig and deformation before production use.