mcp-3d-modeling-agent
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| blender_scene_infoA | Get current scene information including name, frame range, render settings, and object count |
| blender_scene_newC | Create a new scene |
| blender_scene_clearA | Remove all objects from the current scene |
| blender_scene_set_frame_rangeC | Set the animation frame range |
| blender_get_versionB | Get Blender version information |
| blender_object_createA | Create a primitive object (cube, sphere, cylinder, plane, cone, torus, monkey, circle, grid, empty, camera, light) |
| blender_object_deleteB | Delete an object by name |
| blender_object_listA | List all objects in the scene |
| blender_object_getC | Get detailed properties of an object |
| blender_object_transformB | Set the location, rotation, and/or scale of an object |
| blender_object_duplicateC | Duplicate an object |
| blender_object_joinC | Join multiple objects into one |
| blender_object_separateC | Separate an object by loose parts, materials, or selection |
| blender_object_parentC | Set parent-child relationship between objects |
| blender_object_selectC | Select objects by name or pattern |
| blender_material_createC | Create a new material |
| blender_material_assignC | Assign a material to an object |
| blender_material_set_colorC | Set the base color of a material |
| blender_material_set_principledC | Configure Principled BSDF shader parameters |
| blender_material_add_textureC | Add an image texture to a material |
| blender_material_listB | List all materials in the file |
| blender_modifier_addA | Add a modifier to an object with optional preset configuration |
| blender_modifier_removeC | Remove a modifier from an object |
| blender_modifier_applyA | Apply a modifier permanently to the mesh geometry |
| blender_modifier_configureC | Configure modifier parameters |
| blender_modifier_listA | List modifiers on an object, or list all available modifier types |
| blender_keyframe_insertC | Insert a keyframe for an object property, optionally setting its value |
| blender_keyframe_deleteC | Delete a keyframe from an object property |
| blender_keyframe_listC | List all keyframes for an object |
| blender_action_createA | Create a new action (animation data container) and optionally assign to object |
| blender_action_listA | List all actions in the Blender file |
| blender_animation_playB | Play or pause the animation playback |
| blender_animation_goto_frameA | Jump to a specific frame in the timeline |
| blender_render_imageB | Render the current frame to a file |
| blender_render_animationC | Render the animation to files |
| blender_render_set_engineB | Set the render engine |
| blender_render_set_resolutionB | Set the render resolution |
| blender_render_screenshotA | Capture the current viewport as an image |
| blender_export_gltfB | Export scene or selected objects to glTF/GLB format |
| blender_export_fbxB | Export scene or selected objects to FBX format |
| blender_export_objB | Export scene or selected objects to OBJ format |
| blender_export_stlA | Export scene or selected objects to STL format (for 3D printing) |
| blender_export_usdB | Export to Universal Scene Description (USD) format |
| blender_import_fileA | Import a 3D file (auto-detects format: glTF, FBX, OBJ, STL, USD, PLY, DAE, ABC, SVG) |
| blender_polyhaven_searchC | Search Poly Haven for free HDRIs, textures, or 3D models |
| blender_polyhaven_downloadC | Download and apply a Poly Haven asset |
| blender_ai_generate_modelC | Generate a 3D model using Hyper3D Rodin AI. Supports text-to-3D and image-to-3D. Requires RODIN_API_KEY environment variable. |
| blender_ai_model_statusB | Check the status of an AI model generation job and optionally import the completed model |
| blender_ai_list_backendsB | List available AI model generation backends with status (installed, available, capabilities) |
| blender_ai_set_backendB | Set the preferred AI backend for model generation (e.g., 'comfyui', 'rodin', 'triposr') |
| blender_ai_configure_backendB | Configure settings for a specific AI backend (API keys, URLs, model paths, device, timeout) |
| blender_ai_generate_model_syncA | Generate a 3D model and wait for completion (synchronous). Combines generate + poll + optional import in one call. Returns the final model when done. |
| blender_ai_generate_textureC | Generate a PBR texture set (diffuse, roughness, normal, metallic) from a text prompt using SDXL and apply it to a Blender object |
| blender_ai_generate_texture_syncA | Generate PBR texture and wait for completion (synchronous). Returns texture file paths when done. |
| blender_ai_generate_reference_imageB | Generate a concept art / reference image from a text prompt using SDXL (useful for image-to-3D workflows) |
| blender_ai_inpaint_textureC | Generate inpainted content for a masked region of an existing texture using SDXL |
| blender_ai_texture_from_renderB | Generate a texture from a depth or normal render of a Blender object using ControlNet guidance |
| blender_msfs_create_lod_hierarchyB | Create LOD (Level of Detail) hierarchy from a base object for flight simulator content optimization |
| blender_msfs_decimate_for_lodB | Decimate a mesh to a target ratio for LOD creation |
| blender_msfs_setup_lod_distancesC | Configure LOD switching distances for flight simulator |
| blender_msfs_get_lod_infoB | Get information about an LOD hierarchy including vertex counts and distances |
| blender_msfs_setup_materialB | Set up a material with flight simulator-specific PBR properties and extensions |
| blender_msfs_create_glass_materialB | Create a glass material optimized for flight simulator (cockpit glass, windows) |
| blender_msfs_create_emissive_materialA | Create an emissive/light material for flight simulator (gauges, displays, lights) |
| blender_msfs_get_material_presetsA | Get list of available flight simulator material presets (vehicle_paint, chrome, glass, etc.) |
| blender_msfs_create_collision_meshC | Create a simplified collision mesh from a source object for physics interactions |
| blender_msfs_create_collision_boxB | Create a box collision primitive for an object (most efficient for physics) |
| blender_msfs_create_collision_convexB | Create a convex hull collision mesh (balance between accuracy and performance) |
| blender_msfs_tag_collision_typeA | Tag an existing mesh as a collision object |
| blender_msfs_add_animation_tagB | Add an animation tag/event marker for flight simulator animation events |
| blender_msfs_setup_visibility_animationC | Set up visibility animation for an object (show/hide during frame ranges) |
| blender_msfs_configure_animation_loopC | Configure animation looping behavior for flight simulator |
| blender_msfs_list_animation_tagsA | List all animation tags in the scene |
| blender_msfs_export_modelA | Export model(s) in flight simulator-compatible glTF format with LODs, collision, and animations |
| blender_msfs_validate_for_exportC | Validate model(s) for flight simulator compatibility and report issues |
| blender_msfs_get_export_settingsA | Get available flight simulator export settings and recommendations |
| blender_msfs_batch_export_lodsC | Export LOD hierarchy with proper structure (single file or separate files per LOD) |
| blender_msfs_livery_setup_paint_modeC | Set up an object for texture painting with UV map and paint texture |
| blender_msfs_livery_create_paint_layersB | Create paint layer images for livery workflow (primer, base_color, cheatline, belly, details, decals, weathering, clearcoat) |
| blender_msfs_livery_load_template_overlayB | Load a reference template image as overlay for painting |
| blender_msfs_livery_export_uv_layoutA | Export UV layout as an image for painting reference in external editors |
| blender_msfs_livery_set_paint_brushB | Configure paint brush settings with presets (soft_airbrush, hard_edge, detail_brush, smudge, clone, fill) |
| blender_msfs_livery_sample_colorA | Sample a color from an image at specific coordinates for matching reference livery colors |
| blender_msfs_livery_get_paint_presetsA | Get available paint presets for livery painting (layers and brushes) |
| blender_msfs_livery_get_aircraft_templatesA | Get list of supported aircraft templates (FBW A32NX, Fenix, PMDG, iniBuilds, etc.) |
| blender_msfs_livery_get_template_infoA | Get detailed template information for an aircraft including texture sizes and UV regions |
| blender_msfs_livery_download_templateC | Download or generate template files for an aircraft at correct resolution |
| blender_msfs_livery_analyzeB | Analyze a livery image for colors, patterns, and design elements |
| blender_msfs_livery_transferB | Transfer livery design between different aircraft types with UV remapping |
| blender_msfs_livery_extract_colorsA | Extract color palette from livery image for recreating designs |
| blender_msfs_livery_map_elementsB | Map design elements (cheatline, logo, registration) between aircraft templates |
| blender_msfs_livery_export_texturesB | Export livery textures from an object in PNG, TARGA, or for DDS conversion |
| blender_msfs_livery_create_packageA | Create MSFS livery package folder structure with manifest.json and layout.json |
| blender_msfs_livery_convert_to_ddsC | Convert texture to DDS format for MSFS (requires texconv) |
| blender_msfs_livery_validate_packageB | Validate a livery package structure for MSFS compatibility |
| blender_mesh_extrudeB | Extrude faces, edges, or vertices along an offset vector. The most fundamental mesh modeling operation - creates new geometry by extending existing elements outward. |
| blender_mesh_insetA | Inset faces to create border loops. Essential for panel lines, window frames, recessed details on hard surfaces. |
| blender_mesh_bevelA | Bevel edges for smooth transitions and rounded corners. Can target specific edges or auto-select all sharp edges. |
| blender_mesh_loop_cutA | Add edge loops (loop cuts) to a mesh for topology control. Adds resolution to specific areas without subdividing the whole mesh. |
| blender_curve_createA | Create a Bezier, NURBS, or Poly curve from control points. Curves enable smooth profiles, body panels, pipe routing, and organic shapes. |
| blender_curve_to_meshA | Convert a curve to mesh with optional bevel (tube) or extrude (flat panel). A curve with bevel_depth becomes a tube; with extrude becomes a flat panel. |
| blender_curve_from_mesh_edgeA | Extract a curve from mesh edge indices. Useful for creating curves that follow existing geometry for pipe routing or profile extraction. |
| blender_boolean_opA | Perform a boolean operation (union, difference, intersect) between two objects in a single call. Optionally apply immediately and hide the tool object. |
| blender_mesh_from_dataA | Create a mesh object from raw vertex/face data using mesh.from_pydata(). Useful for procedural geometry. |
| blender_object_set_originB | Set the origin (pivot point) of an object |
| blender_object_apply_transformsA | Apply (bake) object transforms to mesh data so location/rotation/scale reset to identity |
| blender_execute_scriptA | Execute arbitrary Python/bmesh script in Blender's context. Enables real mesh modeling with vertices, edges, faces, extrusion, bevel, and full Blender API access. The script can import bmesh, mathutils, math, etc. Set a 'result' variable in the script to return data. |
| blender_render_multi_angleA | Render an object from multiple angles (front, right, top, perspective) for visual feedback. Uses Workbench engine for speed. Returns file paths to rendered PNG images. |
| blender_analyze_viewportA | Render multi-angle views and analyze with Ollama vision model. Returns structured feedback with quality score, issues, and fix suggestions for iterative mesh refinement. |
| blender_refine_iterationA | Run one iteration of the AI refinement loop: render object from multiple angles, analyze with vision model, check for convergence. Returns score, issues, and whether to continue refining. |
| blender_refine_create_sessionB | Create a new refinement session to track iterative improvement of a 3D model |
| blender_refine_get_sessionC | Get details and iteration history of a refinement session |
| blender_refine_list_sessionsA | List all refinement sessions with their status and iteration counts |
| blender_ai_evaluateA | Evaluate any render or output (model, texture, animation) using Ollama vision with category-specific criteria. Returns structured scores and improvement suggestions. |
| blender_ai_refineA | Run one iteration of AI self-refinement: render object, evaluate with vision model, return scores and suggestions. Call repeatedly in a loop, applying suggestions between calls, until converged. |
| blender_ai_mesh_cleanupA | Clean up a generated mesh: remove doubles, fix normals, remove loose geometry, remove degenerate faces. Essential post-processing step after AI model generation. |
| blender_ai_mesh_decimateA | Reduce polygon count of a mesh while preserving shape. Supports COLLAPSE, UN_SUBDIVIDE, and PLANAR methods. Can target specific vertex groups and optionally preserve UVs. |
| blender_ai_mesh_remeshA | Retopologize a mesh using VOXEL or SMOOTH methods. Controls voxel size, octree depth, and smoothing. Useful for converting AI-generated meshes to clean topology. |
| blender_ai_mesh_optimizeA | Run full optimization pipeline on a mesh: cleanup, decimation, auto-UV, and normal smoothing in one call. Convenience wrapper for post-generation processing. |
| blender_ai_auto_uvA | Generate UV maps for a mesh using SMART or LIGHTMAP projection. Controls angle limit, island margin, area weighting, and aspect correction. |
| blender_ai_fix_mesh_issuesA | Fix common mesh problems: non-manifold edges, holes, inverted normals, interior faces. Useful for repairing AI-generated meshes before export. |
| blender_ai_mesh_statsA | Get detailed statistics about a mesh: vertex/edge/face counts, bounding box dimensions, non-manifold edges, UV layers, material slots, and more. |
| blender_ai_probe_backendsA | Probe all AI backends and report capabilities: which ComfyUI 3D generation nodes are available (SF3D, TripoSR, TripoSG, InstantMesh, Hunyuan3D, CRM, Zero123Plus), GPU VRAM, queue status. |
| blender_ai_pipeline_generateA | Full AI pipeline: reference photo/prompt -> 3D model generation -> import to Blender -> mesh cleanup -> UV unwrap -> texture -> optional MSFS prep. Quality tiers: quick (SF3D, 15s blob), standard (TripoSG, good single-image), multiview_quality (Zero123Plus+InstantMesh, best structure), vehicle_components (multi-view + part separation). Returns pipeline status with results from each stage. |
| blender_ai_pipeline_statusB | Get status of a pipeline run or resume from last successful stage. |
| blender_mesh_selectA | Multi-criteria mesh selection engine. Select vertices, edges, or faces by index, position range, normal direction, material, edge angle, or face area. Supports grow/shrink and linked selection. Returns selected indices for piping to subsequent edit operations. |
| blender_mesh_select_traitB | Select mesh elements by geometric trait: non-manifold edges, boundary edges, loose vertices, interior faces, faces by side count, ungrouped vertices, or non-planar faces. Essential for finding problem areas. |
| blender_mesh_select_linked_flatA | Flood-select connected coplanar faces from a seed face. Selects entire flat panels by expanding to neighboring faces within an angle threshold. Ideal for selecting body panels. |
| blender_mesh_select_shortest_pathA | Select shortest path between two mesh elements. Useful for selecting edge loops or vertex paths along the mesh surface. |
| blender_mesh_get_selectionA | Query current mesh selection state without modifying it. Returns indices of selected vertices, edges, or faces. |
| blender_mesh_select_edge_loopsB | Select complete edge loops or edge rings through a given edge. Fundamental for hard surface modeling — loops define the flow of geometry. |
| blender_shade_smoothA | Set smooth, flat, or auto-smooth shading on an object. Auto-smooth applies smooth shading while keeping edges sharper than the angle threshold as flat — essential for mechanical surfaces. |
| blender_mesh_creaseA | Set edge crease values for subdivision surface control. THE hard surface modeling tool — crease=1.0 keeps edges sharp through subdivision, crease=0.5 creates softer feature lines. |
| blender_mesh_mark_sharpA | Mark or clear sharp edges. Sharp edges override auto-smooth angle for precise normal control on specific edges. |
| blender_mesh_mark_seamB | Mark or clear UV seams on edges. UV seams define where the UV map is cut for unwrapping. Essential for texture mapping preparation. |
| blender_mesh_dissolveA | Remove vertices, edges, or faces while preserving surrounding geometry. Unlike delete, dissolve merges the surrounding geometry to fill the gap. |
| blender_mesh_mergeA | Merge vertices together — close gaps, join geometry, remove doubles. Supports merge to center, first, last, or by distance threshold. |
| blender_mesh_bridgeA | Bridge two edge loops to create connecting faces — connect body panels, create tubes between openings, join separate mesh islands. |
| blender_mesh_fillA | Fill boundary edges with faces — cap holes, close open geometry. Supports n-gon fill, triangle fan, and grid fill. |
| blender_mesh_subdivideB | Subdivide selected edges/faces to add resolution. Add geometry where needed without subdividing the entire mesh. |
| blender_mesh_edge_slideA | Slide edges along their connected faces to fine-tune edge loop position. Non-destructive repositioning of topology. |
| blender_mesh_tris_to_quadsA | Convert triangles to quads — clean up triangulated meshes to get cleaner quad topology. Pairs adjacent triangles based on angle and UV matching. |
| blender_mesh_knife_projectA | Project a curve or mesh outline onto a target surface to cut panel lines. The cutter object is projected along the view/normal onto the target. |
| blender_mesh_bisectA | Cut mesh with an infinite plane defined by a point and normal. Can optionally clear geometry on either side and fill the cut. Perfect for splitting vehicles into sections. |
| blender_mesh_separate_selectedB | Separate selected faces into a new object — extract body panels, components, or regions into independent objects. |
| blender_mesh_splitA | Split edges or faces without separating into a new object — creates hard boundaries within the mesh by duplicating shared vertices. |
| blender_silhouette_compareA | Render object silhouette and compare against a reference image. Returns a difference score and overlay image for proportion verification. |
| blender_measureA | Measure distances, bounding box dimensions, edge lengths, and vertex-to-vertex distances in world units. |
| blender_reference_image_setupA | Load a reference image as a background empty for modeling viewport overlay. Position it on a specific axis plane for tracing geometry. |
| blender_array_along_curveA | Instance objects along a curve path — rivet lines, bolt patterns, cable runs. Uses Array + Curve modifiers for parametric control. |
| blender_scatter_on_surfaceB | Scatter objects on a mesh surface using a particle system — bolts, rivets, damage marks, vegetation. Control count, randomization, and area restriction. |
| blender_collection_instanceB | Place collection instances at specific locations — efficient placement of repeated complex objects like wheel assemblies, control panels, or structural details. |
| blender_mesh_proportional_transformA | Move, rotate, or scale vertices with proportional falloff affecting neighbors — organic shape refinement, smooth deformations, sculpt-like adjustments via MCP. |
| blender_mesh_shrinkwrapA | Snap vertices to another object's surface — conform details to body panels, project geometry onto curved surfaces. |
| blender_mesh_flattenA | Flatten selected vertices to a plane — clean up bumpy surfaces, create perfectly flat areas on body panels. |
| blender_sculpt_setupB | Enter sculpt mode with configuration. Supports MULTIRES (subdivision levels), DYNTOPO (dynamic topology for adaptive detail), and SIMPLE mode. Can configure symmetry axes for mirrored sculpting. |
| blender_sculpt_mesh_filterA | Apply global mesh filters to a sculpt-mode object. Unlike brush strokes, mesh filters affect the entire mesh uniformly and work reliably over MCP. Useful for smoothing, sharpening detail, adding surface noise, inflating, or relaxing topology. |
| blender_sculpt_mask_by_topologyA | Create sculpt masks based on topology features. Masks control which parts of the mesh are affected by sculpting operations. CAVITY masks concave areas, ALL fills the entire mask, NONE clears it, RANDOM creates a random mask pattern. Optional blur smooths mask edges. |
| blender_sculpt_face_set_createA | Create face sets by grouping faces based on criteria. Face sets partition the mesh into regions for isolated sculpting. LINKED groups connected geometry, MATERIAL groups by material assignment, NORMAL groups by face orientation, SHARP_EDGES splits at sharp edges, UV_ISLAND groups by UV islands. |
| blender_sculpt_multires_reshapeA | Manage multiresolution modifier levels for sculpting. SUBDIVIDE adds a level, UNSUBDIVIDE removes the highest level, REBUILD reconstructs subdivisions, APPLY_BASE applies sculpted changes to the base mesh, DELETE_HIGHER removes levels above current, DELETE_LOWER removes levels below current. |
| blender_sculpt_to_retopoA | Pipeline tool: convert a high-poly sculpt to a retopologized low-poly mesh with optional displacement map baking. Creates a duplicate, applies remesh (voxel or quadriflow), auto-UV unwraps, and optionally bakes displacement from the original. Essential for game-ready asset production. |
| blender_sculpt_extract_maskA | Extract the masked region of a sculpt as a separate mesh object. Creates a new mesh from faces above the mask threshold, optionally adding thickness via solidify. Useful for creating armor plates, panel lines, or detail pieces from sculpted forms. |
| blender_sculpt_remesh_voxelA | Apply voxel remesh to create a uniform topology. Converts the mesh to a voxel representation and back, producing evenly-spaced quads. Useful for cleaning up boolean results, imported meshes, or preparing for sculpting. Smaller voxel_size = higher detail but more polygons. |
| blender_armature_createA | Create an armature from a list of bone definitions. Each bone specifies head/tail positions, optional parent, connection state, and roll angle. Use this for precise skeleton construction from known bone positions. |
| blender_autorig_presetA | One-call auto-rig generator. Creates a complete bone hierarchy for common use cases: BIPED (humanoid), QUADRUPED (four-legged), VEHICLE (wheels + steering), MECHANICAL_ARM (IK chain), TURRET (rotate + elevate), WHEEL_ASSEMBLY (axle + spin), DOOR_HINGE (limited rotation), PISTON (stretch-to pair), LANDING_GEAR (retract chain). Optionally auto-weights the mesh and configures for MSFS export. |
| blender_constraint_addA | Add a constraint to a bone or object. Supports IK, copy transforms, tracking, stretch-to, limits, floor, and child-of constraints. Specify either bone_name (for pose bone constraint) or object_name (for object constraint), plus target and type-specific settings. |
| blender_constraint_presetA | Apply preset constraint setups that require multiple coordinated constraints. IK_ARM: IK chain with pole target. IK_LEG: IK with foot roll. PISTON_PAIR: two bones with mutual stretch-to. WHEEL_SPIN: rotation driver. DOOR_SWING: limit rotation constraint. TURRET_TRACK: two-axis tracking. |
| blender_bone_shape_assignB | Assign a custom wireframe control shape to a bone for rig visualization. Creates (or reuses) a wire mesh shape and assigns it as the bone's custom_shape. Shapes: CIRCLE, SQUARE, CUBE, SPHERE, ARROW, DIAMOND, CROSS. |
| blender_pose_library_saveA | Save the current pose of an armature as a named pose. Stores bone transforms (location, rotation, scale) as custom properties on the armature. Optionally filter to save only specific bones. |
| blender_pose_library_applyA | Apply a previously saved pose to an armature. Supports blending with the current pose via blend_factor (0=keep current, 1=full saved pose). Useful for creating animation keyframes from preset poses. |
| blender_rig_validateA | Validate an armature rig for export compatibility. Checks bone naming conventions, hierarchy structure, constraint setup, deform bone flags, and scale/orientation. Returns a list of issues and a compatibility score for the target format. |
| blender_physics_rigid_body_addA | Add a rigid body physics simulation to an object. Makes it participate in physics as either an active (affected by forces) or passive (static collider) body. |
| blender_physics_rigid_body_batchA | Add rigid body physics to multiple objects at once. Optionally designate a ground/floor object as a PASSIVE collider. |
| blender_physics_simulateB | Run the physics simulation for a frame range. Optionally apply results to make the final positions permanent (freezes simulation). |
| blender_physics_cloth_addA | Add cloth simulation to a mesh object. Supports material presets (silk, cotton, denim, etc.), vertex group pinning, collision objects, and wind. |
| blender_physics_soft_body_addA | Add soft body simulation to a mesh object. Soft bodies deform under forces while trying to maintain their shape. |
| blender_physics_fluid_quickA | Quick fluid simulation setup with a domain and flow object. Creates a Mantaflow-based liquid or gas simulation. |
| blender_annotation_addA | Add 3D annotation strokes to the scene as a grease pencil annotation layer. Useful for marking up geometry, drawing guides, or highlighting areas of interest. |
| blender_annotation_textA | Add a 3D text annotation at a specific location. Creates a font/text object that can be used as a label or callout. |
| blender_annotation_dimensionA | Add a dimension line between two 3D points showing the distance measurement. Creates endpoint markers, a connecting line, and a text label with the calculated distance. |
| blender_annotation_clearA | Clear annotation layers. Can clear a specific layer by name or all annotation layers at once. |
| blender_grease_pencil_createA | Create a grease pencil object with one or more strokes. Grease pencil objects are persistent 2D/3D drawing objects in the scene. |
| blender_grease_pencil_markupA | Overlay markup annotations (arrows, circles, rectangles, text) on a rendered image. Uses Pillow if available, otherwise falls back to Blender compositor. |
| blender_material_inspect_graphA | Return the full shader node graph of a material as structured JSON. Lists every node (name, type, location, input values/connections, output connections) and every link (from_node, from_output, to_node, to_input). |
| blender_material_node_addA | Add a shader node to a material's node tree. Supports any Blender node type (e.g. ShaderNodeTexNoise, ShaderNodeMixRGB, ShaderNodeBump, ShaderNodeMapping, ShaderNodeNormalMap, ShaderNodeValToRGB, etc.). Optionally set location and input default values. |
| blender_material_node_connectA | Connect two nodes in a material's shader graph via their socket names. Creates a link from an output socket on one node to an input socket on another. |
| blender_material_node_group_createA | Create a reusable shader node group with defined inputs and outputs. The group can later be instanced inside any material via a ShaderNodeGroup node. |
| blender_material_procedural_presetA | Create a complex procedural material from a named preset with one call. Builds a full shader node tree. Presets: VEHICLE_PAINT, BRUSHED_METAL, CHROME, RUBBER, CARBON_FIBER, ASPHALT, TARMAC, WORN_METAL, GLASS, PLASTIC_GLOSSY, PLASTIC_MATTE, CONCRETE, FABRIC, REFLECTIVE_TAPE, LED_DISPLAY, RUST, GOLD, COPPER, SCRATCHED_PAINT, SNOW, WATER, WOOD, BRICK. |
| blender_material_convert_to_pbrB | Convert a material's existing node tree to a clean Principled BSDF setup. Analyzes current nodes to extract color, roughness, metallic, etc., then rebuilds as a standard PBR graph compatible with the target format. |
| blender_material_preview_renderA | Render a material preview on a standard shape. Creates a temporary scene with the chosen shape, assigns the material, renders it, and returns the output path. |
| blender_measure_surface_areaA | Calculate total surface area of a mesh object, with optional per-material breakdown. Reports area in scene units squared (typically m^2). Supports local or world-space calculation. |
| blender_measure_volumeA | Calculate the enclosed volume of a mesh object. Returns volume in scene units cubed (typically m^3). Also reports whether the mesh is manifold (watertight). |
| blender_measure_clearanceA | Measure the minimum, average, and maximum distance between two mesh objects. Detects intersection (overlap) and returns the closest point pair. Useful for collision/clearance checks. |
| blender_validate_dimensionsA | Check an object's bounding-box dimensions against expected values with a configurable tolerance. Reports per-axis pass/fail with deviations. |
| blender_calibrate_from_referenceA | Scale an object uniformly so that a known real-world dimension matches along a chosen axis. Applies transforms afterwards so scale returns to (1,1,1). |
| blender_measure_edge_angleA | Measure dihedral angles (face-to-face) at mesh edges. Optionally filter to specific edge indices and flag edges outside a threshold range. Angles are in degrees. |
| blender_validate_mesh_qualityA | Run a comprehensive mesh quality audit. Returns an overall score (0-1), per-check pass/fail results, and a list of blocking issues that would prevent clean export. |
| blender_collection_createB | Create a new collection. Collections organize objects into logical groups in the scene hierarchy. |
| blender_collection_listA | List all collections in the scene with their full hierarchy, objects, visibility, and render state. Returns a nested tree structure. |
| blender_collection_moveB | Move one or more objects to a target collection. Can optionally remove them from their current collections. |
| blender_collection_visibilityA | Toggle collection visibility, renderability, and selectability in the current view layer. |
| blender_undoA | Undo the last operation in Blender. Equivalent to Ctrl+Z. |
| blender_redoA | Redo the last undone operation in Blender. Equivalent to Ctrl+Shift+Z. |
| blender_saveA | Save the current Blender file. The file must have been saved at least once before (has a filepath). |
| blender_save_asA | Save the current Blender file to a new path. Creates parent directories if needed. |
| blender_bake_pbr_batchA | Bake ALL PBR texture channels in one call. Switches to Cycles, iterates over requested channels (DIFFUSE, ROUGHNESS, METALLIC, NORMAL, AO, EMISSION, DISPLACEMENT, COMBINED), creates temp images, configures bake settings, and saves each map to disk. Returns a dict mapping channel name to output file path. |
| blender_bake_highpoly_to_lowpolyA | Bake detail from a high-poly mesh onto a low-poly mesh using 'selected to active'. Ideal for transferring normals, AO, and other maps from a sculpt or subdivision model to a game-ready low-poly mesh. |
| blender_bake_from_multiresA | Bake maps from a Multiresolution modifier (normals or displacement). Uses Blender's multires bake mode to transfer detail from higher subdivision levels to a texture. |
| blender_bake_to_vertex_colorsA | Bake lighting or material information directly to vertex colors. Creates a vertex color layer, bakes to a temporary image, then transfers pixel data to per-vertex colors via UV lookup. Useful for mobile/performance rendering where texture lookups are expensive. |
| blender_bake_curvatureA | Bake a curvature map from mesh geometry. Calculates per-vertex curvature using the dot product of vertex normals vs averaged neighbor normals. Maps concave areas to dark, convex to bright (or both). Useful for edge wear, dirt accumulation, and procedural texturing masks. |
| blender_bake_id_mapA | Bake a color ID map where each material, object, or face set is assigned a distinct flat color. Temporarily overrides materials with emission shaders, bakes EMIT, then restores originals. Essential for texture painting workflows and Substance Painter masks. |
| blender_geonode_create_groupA | Create a new Geometry Nodes node group with typed inputs and outputs. A Geometry input and Geometry output are always added automatically. Returns the group name and socket layout. |
| blender_geonode_applyA | Apply an existing Geometry Nodes group to an object as a modifier and optionally set input values. Returns the modifier name and current input state. |
| blender_geonode_scatter_instancesC | One-call scatter: build a complete Geometry Nodes setup that distributes instances of one object across the surface of another. Supports density, Poisson-disk spacing, random scale range, random rotation, and normal alignment. |
| blender_geonode_array_gridA | Parametric array patterns via Geometry Nodes. Instances an object in LINEAR, GRID_2D, RADIAL, or HEXAGONAL arrangements. The modifier is applied to object_name. |
| blender_geonode_deform_curveB | Deform a mesh along a curve using Geometry Nodes. The mesh is stretched or fitted along the curve length. Useful for roads, rails, cables, and profile sweeps. |
| blender_geonode_extrude_profileA | Extrude a 2D profile mesh along a curve path using the Curve to Mesh node. Creates a new object with the extruded geometry. Great for pipes, railings, moulding, and trim. |
| blender_geonode_inspectA | Read the current Geometry Nodes setup on an object. Returns the node group name, all input names/types/current values, and output names. Useful for introspection before tweaking values with geonode_apply. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SekaiNoOwari77/mcp-3d-modeling-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server