Skip to main content
Glama
domainjon

Blender Universal & Token-Efficient MCP Server

by domainjon

blender_create_object

Add a 3D primitive or entity to a Blender scene. Specify type, name, location, scale, rotation, and collection for precise placement.

Instructions

Creates a new 3D primitive or entity in the Blender scene. Supported primitive_type: 'cube', 'uv_sphere', 'ico_sphere', 'cylinder', 'cone', 'plane', 'torus', 'monkey', 'circle', 'camera', 'light', 'empty', 'collection'. Location and scale are 3D floats [X, Y, Z]. Rotation is [X, Y, Z] in degrees.

Input Schema

NameRequiredDescriptionDefault
nameNo
scaleNo
locationNo
rotationNo
primitive_typeNocube
collection_nameNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

C2.9/5.0
Behavior2/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, and it only covers parameter formats. It never states whether the object is persisted to the scene, what happens on a name collision, whether the operation is undoable, or whether it requires an active/live Blender connection. For a scene-mutating tool this is a substantial 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?

The purpose sentence is front-loaded and the primitive list, though long, is high-value enumerable data. The location/scale/rotation unit clause is compact and earns its place; only minor tightening is possible.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and the primitive/unit documentation covers the core calling path. But for a 6-parameter mutation tool with zero schema coverage and no annotations, the missing name/collection_name semantics and absent usage context leave it adequate rather than complete.

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

Parameters3/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 compensate. It usefully enumerates the 13 valid primitive_type values (better than the schema, which declares only a default) and specifies that location/scale are 3D floats and rotation is in degrees. However, name and collection_name remain completely undocumented in both places.

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

Purpose4/5

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

States a specific verb and resource ('Creates a new 3D primitive or entity in the Blender scene') and the object classes it produces. It implicitly contrasts with blender_modify_object/blender_inspect_object through the word 'creates', but never names a sibling or draws the boundary explicitly, so it falls short of a 5.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites (e.g. whether a Blender session must be running), and no mention of alternatives such as blender_modify_object for editing existing objects. The agent must infer all routing from the name alone.

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