AgentPMT
Blender 3D Modeling

Blender 3D Modeling

Model

Available ActionsEach successful request consumes credits as outlined below.

render_turntable25crrender_views25crrender_custom25crconvert_format25crrun_script25crcheck_printability25crfix_printability25crvoxel_remesh25crslice_for_printing25crget_task25crlist_tasks25crcancel_task25cr

Details

Full access to Blender, the industry-standard open-source 3D creation suite, running headless in the cloud. Render stunning images and turntable videos from any 3D model, convert between file formats (BLEND, GLB, FBX, OBJ, STL, DAE, PLY), set up professional studio lighting, and run custom Blender Python scripts — all without installing anything locally. Upload your 3D models and get back production-quality renders, spinning animations, processed assets, and Blender project files. Choose from four lighting presets (studio, product, outdoor, dramatic), render from multiple camera angles at once, or position the camera exactly where you want it. Perfect for game development asset previews, product visualization, architectural walkthroughs, e-commerce 3D photography, 3D printing prep, portfolio showcases, and creative projects of any kind.

Use Cases

Render turntable videos of 3D models for game asset previews, Create multi-angle product shots from 3D models for e-commerce, Convert 3D files between formats like GLB to BLEND, GLB to FBX, or OBJ to STL, Save procedurally generated scenes as Blender .blend files, Generate professional renders with studio lighting for portfolios, Preview 3D-printed models from every angle before printing, Render architectural models with custom camera positions, Create spinning animations of characters or props for social media, Apply dramatic lighting to 3D models for cinematic presentations, Run custom Blender Python scripts for advanced 3D processing, Render 3D models generated by AI tools like Meshy with proper textures and lighting, Convert game assets between Unity FBX and web GLB formats, Generate thumbnail images of 3D models for catalogs and marketplaces

Actions(12)

render_turntable25cr13 params

Generate a spinning turntable video of a 3D model. Returns a task_id immediately; use get_task to check progress and retrieve the output. Joins the strict-FIFO render queue (capacity 50); if the queue is full, returns a 429 with error_code GPU_RENDER_QUEUE_FULL and a Retry-After header.

Generate a spinning turntable video of a 3D model. Returns a task_id immediately; use get_task to check progress and retrieve the output. Joins the strict-FIFO render queue (capacity 50); if the queue is full, returns a 429 with error_code GPU_RENDER_QUEUE_FULL and a Retry-After header.

file_urlstring

Public URL of the 3D model file (BLEND, GLB, GLTF, FBX, OBJ, STL, DAE, PLY).

file_idstring

AgentPMT file storage ID for the 3D model.

framesinteger

Number of animation frames (12-120). Default: 72.

Range: 12 - 120
duration_secondsnumber

Video duration in seconds (1-30). Default: 6.

Range: 1 - 30
resolutionstring

Resolution: 720p (default), 1080p, 2k, 4k, or WxH.

samplesinteger

Render samples (1-512). Default: 8.

Range: 1 - 512
background_colorstring

Background hex color without #. Default: 1a1a1a.

lighting_presetstring

Lighting style.

Values:
studioproductoutdoordramatic
elevationnumber

Camera elevation degrees (-45 to 90). Default: 25.

Range: -45 - 90
camera_distancenumber

Optional camera distance override.

Range: 0.1 - 100
camera_lens_mmnumber

Camera focal length in mm (10-120). Default: 35.

Range: 10 - 120
fit_marginnumber

Auto-framing padding multiplier (1-3). Default: 1.25.

Range: 1 - 3
decimate_rationumber

Optional polygon-reduction ratio (0.05-1.0).

Range: 0.05 - 1
render_views25cr11 params

Render preset camera angles. Returns a task_id immediately. Joins the strict-FIFO render queue.

Render preset camera angles. Returns a task_id immediately. Joins the strict-FIFO render queue.

file_urlstring

Public URL of the 3D model file.

file_idstring

AgentPMT file storage ID.

viewsarray

Views to render. Default: front, back, left, right, top, 3quarter.

Array of: string
resolutionstring

Resolution: 720p (default), 1080p, 2k, 4k, or WxH.

samplesinteger

Render samples (1-512). Default: 8.

Range: 1 - 512
background_colorstring

Background hex color without #. Default: 1a1a1a.

lighting_presetstring

Lighting style.

Values:
studioproductoutdoordramatic
camera_distancenumber

Optional camera distance override.

Range: 0.1 - 100
camera_lens_mmnumber

Camera focal length in mm (10-120). Default: 35.

Range: 10 - 120
fit_marginnumber

Auto-framing padding multiplier (1-3). Default: 1.25.

Range: 1 - 3
decimate_rationumber

Optional polygon-reduction ratio (0.05-1.0).

Range: 0.05 - 1
render_custom25cr10 params

Render with a custom camera position. Returns a task_id immediately. Joins the strict-FIFO render queue.

Render with a custom camera position. Returns a task_id immediately. Joins the strict-FIFO render queue.

file_urlstring

Public URL of the 3D model file.

file_idstring

AgentPMT file storage ID.

camera_positionarray

Camera [x, y, z] position. Default: [3, -3, 2.5].

Array of: number
look_atarray

Camera look-at [x, y, z] target. Default: [0, 0, 0].

Array of: number
fovnumber

Camera focal length in mm (10-120). Default: 50.

Range: 10 - 120
resolutionstring

Resolution preset or WxH.

samplesinteger

Render samples.

Range: 1 - 512
background_colorstring

Background hex color without #.

lighting_presetstring

Lighting style.

Values:
studioproductoutdoordramatic
decimate_rationumber

Optional polygon-reduction ratio (0.05-1.0).

Range: 0.05 - 1
convert_format25cr4 params(1 required)

Convert a 3D model between file formats. Runs synchronously through the queue; if the queue is full, returns 429 with error_code GPU_RENDER_QUEUE_FULL.

Convert a 3D model between file formats. Runs synchronously through the queue; if the queue is full, returns 429 with error_code GPU_RENDER_QUEUE_FULL.

output_formatrequiredstring

Target format.

Values:
blendglbfbxobjstldaeply
file_urlstring

Public URL of the source 3D model.

file_idstring

AgentPMT file storage ID for the source 3D model.

apply_transformsboolean

Apply transforms before export. Default: true.

run_script25cr5 params(1 required)

Execute a custom Blender Python script. Returns a task_id immediately. Script payload limited to 65,536 bytes — oversize requests fail with error_code BLENDER_RUN_SCRIPT_TOO_LARGE.

Execute a custom Blender Python script. Returns a task_id immediately. Script payload limited to 65,536 bytes — oversize requests fail with error_code BLENDER_RUN_SCRIPT_TOO_LARGE.

scriptrequiredstring

Blender Python script (≤64 KiB). Has access to bpy, MODEL_PATH, OUTPUT_DIR.

file_urlstring

Optional model URL — exposed as MODEL_PATH.

file_idstring

Optional AgentPMT file storage ID — exposed as MODEL_PATH.

output_typestring

Expected output class. Default: image.

Values:
imagevideomodelall
script_timeout_secondsinteger

Override the per-subprocess timeout in seconds.

Range: 600 - 1800
check_printability25cr6 params

Run a structured 3D-printability analysis using Blender's object_print3d_utils addon. Read-only — no upload, no mesh mutation. Returns a task_id immediately.

Run a structured 3D-printability analysis using Blender's object_print3d_utils addon. Read-only — no upload, no mesh mutation. Returns a task_id immediately.

file_urlstring

Public URL of the 3D model file.

file_idstring

AgentPMT file storage ID.

checksarray

Subset of checks to run. Default: all six.

Array of: string
thickness_min_mmnumber

Wall-thickness threshold in mm. Default: 0.5.

Range: 0.05 - 10
overhang_angle_degnumber

Overhang angle threshold in degrees. Default: 45.

Range: 10 - 89
distort_angle_degnumber

Face-distortion angle threshold in degrees. Default: 45.

Range: 5 - 89
fix_printability25cr9 params(1 required)

Light-touch repair using Blender's object_print3d_utils clean operators. For mostly-clean inputs (CAD exports, few stray non-manifolds). Use voxel_remesh for structurally-broken inputs.

Light-touch repair using Blender's object_print3d_utils clean operators. For mostly-clean inputs (CAD exports, few stray non-manifolds). Use voxel_remesh for structurally-broken inputs.

output_formatrequiredstring

Target format for the cleaned export.

Values:
stlglbobjply
file_urlstring

Public URL of the 3D model file.

file_idstring

AgentPMT file storage ID.

auto_fix_non_manifoldboolean

Run the addon's clean-non-manifold operator. Default: true.

auto_fix_distortedboolean

Run the addon's clean-distorted operator. Default: true.

checksarray

Subset of checks to run. Default: all six.

Array of: string
thickness_min_mmnumber

Wall-thickness threshold in mm. Default: 0.5.

Range: 0.05 - 10
overhang_angle_degnumber

Overhang angle threshold in degrees. Default: 45.

Range: 10 - 89
distort_angle_degnumber

Face-distortion angle threshold in degrees. Default: 45.

Range: 5 - 89
voxel_remesh25cr4 params(1 required)

Rebuild a model into a watertight manifold via OpenVDB voxel remesh. The right tool for structurally-broken inputs. Output is guaranteed manifold; surface detail smaller than the voxel size is smoothed away. Pre-flight rejects requests whose grid cell count exceeds 5,000,000 with error_code BLENDER_VOXEL_GRID_TOO_LARGE — the response message includes the minimum-safe voxel_size for the input, and the report context exposes bbox_x/y/z, voxel_size, cells, max_cells, and min_safe_voxel_size for runbooks.

Rebuild a model into a watertight manifold via OpenVDB voxel remesh. The right tool for structurally-broken inputs. Output is guaranteed manifold; surface detail smaller than the voxel size is smoothed away. Pre-flight rejects requests whose grid cell count exceeds 5,000,000 with error_code BLENDER_VOXEL_GRID_TOO_LARGE — the response message includes the minimum-safe voxel_size for the input, and the report context exposes bbox_x/y/z, voxel_size, cells, max_cells, and min_safe_voxel_size for runbooks.

output_formatrequiredstring

Target format for the remeshed export.

Values:
stlglbobjply
file_urlstring

Public URL of the 3D model file.

file_idstring

AgentPMT file storage ID.

voxel_sizenumber

Optional explicit voxel size in the same units as your model (typically mm). Smaller = finer detail and longer compute. Omit to auto-scale to ~1.3% of the longest bounding-box dimension.

Range: 0.01 - 100
slice_for_printing25cr6 params

Slice a 3D model with PrusaSlicer and return G-code, parsed metadata, and a Blender-rendered printbed preview PNG. Returns a task_id immediately.

Slice a 3D model with PrusaSlicer and return G-code, parsed metadata, and a Blender-rendered printbed preview PNG. Returns a task_id immediately.

file_urlstring

Public URL of the 3D model file.

file_idstring

AgentPMT file storage ID.

printer_profilestring

Bundled PrusaSlicer profile name. Default: prusa_mk4_pla_020.

Pattern: ^[a-z0-9_]+$
layer_height_mmnumber

Override the slicer's layer height in mm.

Range: 0.05 - 0.6
infill_density_pctinteger

Override infill density percent (0-100).

Range: 0 - 100
support_materialboolean

Override the support-material toggle.

get_task25cr1 param(1 required)

Check the status of a render task and retrieve download links when complete. Non-terminal responses include queue_position (0 when running, 1+ when queued), queue_eta_seconds, and queue_stats {queue_total_running, queue_total_queued, queue_total_capacity}. Caller-driven failures (GPU_RENDER_QUEUE_FULL, BLENDER_VOXEL_GRID_TOO_LARGE, BLENDER_RUN_SCRIPT_TOO_LARGE, GPU_RENDER_TASK_CANCELED, BLENDER_SLICER_PROFILE_INVALID) report at warning severity and are safe to retry with corrected inputs; subprocess / memory / timeout failures (GPU_RENDER_BLENDER_NONZERO_EXIT, GPU_RENDER_BLENDER_TIMEOUT, BLENDER_SUBPROCESS_MEMORY_LIMIT, GPU_RENDER_CONTAINER_RESTARTED, GPU_RENDER_UNEXPECTED_ERROR) report at error severity — retry once but escalate if it recurs.

Check the status of a render task and retrieve download links when complete. Non-terminal responses include queue_position (0 when running, 1+ when queued), queue_eta_seconds, and queue_stats {queue_total_running, queue_total_queued, queue_total_capacity}. Caller-driven failures (GPU_RENDER_QUEUE_FULL, BLENDER_VOXEL_GRID_TOO_LARGE, BLENDER_RUN_SCRIPT_TOO_LARGE, GPU_RENDER_TASK_CANCELED, BLENDER_SLICER_PROFILE_INVALID) report at warning severity and are safe to retry with corrected inputs; subprocess / memory / timeout failures (GPU_RENDER_BLENDER_NONZERO_EXIT, GPU_RENDER_BLENDER_TIMEOUT, BLENDER_SUBPROCESS_MEMORY_LIMIT, GPU_RENDER_CONTAINER_RESTARTED, GPU_RENDER_UNEXPECTED_ERROR) report at error severity — retry once but escalate if it recurs.

task_idrequiredstring

Task ID returned from a render action.

list_tasks25cr1 param

List render tasks for the current user, most recent first.

List render tasks for the current user, most recent first.

limitinteger

Maximum tasks to return (1-100). Default: 20.

Range: 1 - 100
cancel_task25cr1 param(1 required)

Cancel a queued or running render task. Idempotent: cancelling an already-terminal task returns an error explaining that. Queued tasks transition immediately; running tasks transition once the SIGTERM grace window closes (≤30s). The task ends with status='failed' and error_code='GPU_RENDER_TASK_CANCELED'. Poll get_task to confirm the terminal state.

Cancel a queued or running render task. Idempotent: cancelling an already-terminal task returns an error explaining that. Queued tasks transition immediately; running tasks transition once the SIGTERM grace window closes (≤30s). The task ends with status='failed' and error_code='GPU_RENDER_TASK_CANCELED'. Poll get_task to confirm the terminal state.

task_idrequiredstring

Task ID returned from a render action.

Frequently Asked Questions

How do I connect this tool to an external agent?

Install commands

npm install -g @agentpmt/mcp-router
agentpmt-setup

Hosted MCP config

{
  "mcpServers": {
    "agentpmt": {
      "type": "streamable-http",
      "url": "https://api.agentpmt.com/mcp",
      "headers": {
        "Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
        "x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
      }
    }
  }
}

How does an external agent use this tool?

Agent prompt

Call the AgentPMT-Tool-Search-and-Execution tool with action 'get_schema' and tool_id 69c43a6b87d290b84efb81ab ("Blender 3D Modeling"). Then call the same tool with action 'call_tool', tool_id 69c43a6b87d290b84efb81ab, and the parameters needed for my request.

Looking for help integrating AI into your business? Set up a free consultation.