Skip to main content
Glama

geom_create_dynamic_mesh

Create an editable DynamicMesh actor in Unreal Editor seeded with a primitive. Configure dimensions, location, rotation, and steps for box, sphere, cylinder, plane, or empty.

Instructions

Create an editor DynamicMesh actor and seed it with a primitive mesh.

Args: actor_name: DynamicMesh actor label to create. primitive: One of "box", "sphere", "cylinder", "plane", or "empty". dimensions: Primitive dimensions in centimeters. Box/plane use X,Y,Z; sphere uses X as radius; cylinder uses X radius and Z height. location: Optional world location [x, y, z]. rotation: Optional world rotation [pitch, yaw, roll]. radial_steps: Segment count for sphere/cylinder primitives. height_steps: Vertical segments for cylinder and box-like primitives. overwrite: Delete an existing actor with the same label before creating.

Returns: Structured JSON with actor label, primitive, and mesh counts.

KB: see knowledge_base/22_GEOMETRY_SCRIPT_AND_MODELING.md#mcp-geometry-tools Example: geom_create_dynamic_mesh(actor_name="DM_CoverBlock", primitive="box", dimensions=[200, 80, 120])

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
locationNo
rotationNo
overwriteNo
primitiveNobox
actor_nameNoDM_GeneratedMesh
dimensionsNo
height_stepsNo
radial_stepsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.6/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses the destructive overwrite behavior ('Delete an existing actor with the same label before creating'), the actor-creation side effect, and the primitive seeding behavior. It stops short of discussing editor/level save implications or permission needs, but the overwrite warning is meaningful, specific behavioral transparency.

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

Conciseness5/5

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

The description is well-structured and front-loaded: purpose sentence, args list, returns, KB pointer, and example. Every section adds information the schema does not provide, especially parameter semantics and the destructive overwrite behavior. The length is justified by the number of parameters and the absence of schema descriptions.

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

Completeness5/5

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

Given 8 parameters, no annotations, and an output schema, the description is complete. It documents all parameter semantics, return contents, a knowledge-base reference, and a concrete usage example. An agent has enough context to select and invoke the tool correctly without opening the KB or guessing parameter formats.

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?

Schema description coverage is 0%, so the description must fully document the 8 parameters, and it does. It explains units ('dimensions in centimeters'), primitive-specific dimension meanings ('sphere uses X as radius; cylinder uses X radius and Z height'), segment counts, and the overwrite flag. This is richer and more actionable than 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?

The description opens with a specific verb-resource pair: 'Create an editor DynamicMesh actor and seed it with a primitive mesh.' It names the concrete artifact being created and the primitive types supported. This clearly distinguishes it from sibling geometry tools like geom_extrude or geom_boolean_op, which operate on existing meshes rather than creating primitive-seeded actors.

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?

The description makes the usage context clear: use this to create a DynamicMesh actor pre-populated with a box, sphere, cylinder, plane, or empty mesh. It does not explicitly name alternatives or state when not to use it, but the 'Create an editor DynamicMesh actor' framing gives an agent a clear decision point against mesh-mutation siblings.

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

Deploy Server

Other Tools