Skip to main content
Glama

sculpt

Destructive

Deform 3D mesh vertices with brush-based operations (grab, inflate, smooth, flatten, pinch) to shape models. Subdivide mesh first for enough vertices.

Instructions

Sculpt by numbers: move the vertices under a brush. Brush: either at + radius (a sphere in the world, strongest at the centre), or where (+ mode) with spread, the number of metres around the region that still feel the brush; falloff shapes the fade. The mesh needs enough vertices: subdivide_faces first. op grab: pull the surface by the world vector move. op inflate: push it out (or in, negative) along its normals by amount metres. op smooth: relax it towards the average of the neighbours, iterations times by factor; with no brush it smooths the whole mesh; keep_boundary leaves open edges in place. For shading only use shade. op flatten: press the area onto its own average plane; strength 1 (default) is fully flat. Soles, table tops. op pinch: draw the area towards its centre in the surface plane (sharpens creases, narrows a part); strength 1 collapses it, default 0.5. Parameters of another op are ignored. The answer has vertices_moved. where picks faces (or vertices, edges) by a condition, all given keys must hold: normal ('+Z', '-X' or [x,y,z]) with angle (degrees, default 25); x, y, z ranges [min, max] (null means open) on the world centre; box [[x0,y0,z0],[x1,y1,z1]]; area [min, max]; index [...]. {} or null picks everything. Look at mesh_info first to see where the faces are.

Input Schema

NameRequiredDescriptionDefault
atNo
opYes
modeNofaces
moveNo
whereNo
amountNo
factorNo
objectYes
radiusNo
spreadNo
falloffNosmooth
strengthNo
iterationsNo
keep_boundaryNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare the safety profile (destructive, not read-only, closed-world); the description adds genuinely useful behavior beyond that: 'Parameters of another op are ignored', keep_boundary semantics, the smoothing-without-brush default, and the return value (vertices_moved). It omits any warning about the destructive nature or undo/checkpoint recovery, which is a modest gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but well organized: brush definition first, then one line per op, then the `where` selector keys. Nearly every sentence earns its place by defining a parameter's effect, though the op-by-op formatting and heavy backtick use make it longer than strictly necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter mutation tool with no output schema, the description supplies the prerequisite, per-op parameter semantics, ignored-parameter rule, `where` grammar, and the return field. It could still say more about the destructive/mutation implications and required `object`/`op`, but it is broadly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage across 14 params, the description carries the full burden and does so thoroughly: it defines at/radius vs where/mode/spread/falloff, and gives per-op meaning for move, amount, factor, iterations, keep_boundary, and strength. It even details every supported key inside `where` (normal/angle, x/y/z ranges, box, area, index), leaving essentially nothing to the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('move the vertices under a brush') and enumerates the five sculpting operations, mapping each to its own parameters. An agent can distinguish this from siblings like shade, subdivide_faces, deform, or shrinkwrap without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete prerequisite ('The mesh needs enough vertices: subdivide_faces first') and routes shading-only work to sibling 'shade'. It doesn't cover when to prefer this over deform/shrinkwrap/noise_displace, but the usage context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.