Skip to main content
Glama

blender_select_by

Read-onlyIdempotent

Find and select Blender objects by predicate such as material, collection, size, missing UVs, or loose geometry, avoiding reliance on exact names in large scenes.

Instructions

Select objects by a predicate rather than by name.

Names are what agents get wrong on a large scene. This finds every mesh with loose geometry, without a material, without UVs, larger than N metres, belonging to a collection, or matching a glob.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
byYesPredicate to select by.
axisNoFor by='size': -1 for the largest dimension, 0/1/2 for one axis.
limitNo
patternNoGlob pattern for by='name'.*
materialNoFor by='material'.
collectionNoFor by='collection'.
make_activeNo
object_typeNoFor by='type', e.g. MESH.MESH
min_dimensionNoFor by='size', smallest accepted dimension in metres.
response_formatNo'markdown' for readable output, 'json' for raw structured data.markdown

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, reducing the burden on the description. The description adds the behavioral nuance that selection is predicate-driven rather than name-based, but it does not disclose side effects like whether the current selection is replaced or how the active object is affected (though make_active parameter hints at this). It provides some added context without contradicting annotations.

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 two sentences with no wasted words. The core purpose is front-loaded in the first sentence, and the second sentence elaborates with concrete examples. Every part earns its place, making it highly scannable for an agent.

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?

Given the tool has 10 parameters but a high schema coverage (80%) and only 1 required parameter, the description provides a solid overview of the tool's capabilities and the rationale for its use. It does not explain return format or selection behavior, but those are partly handled by the response_format parameter and annotations. Overall it is complete enough for correct invocation in most scenarios, though slightly more detail on selection semantics would improve it.

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

Parameters4/5

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

Schema description coverage is 80%, so the baseline is 3. The description goes beyond the schema by semantically grouping the predicates (e.g., 'loose geometry' corresponds to by='loose', 'larger than N metres' to size with min_dimension) and explaining the intent behind the by parameter. This adds meaningful context that helps an agent select appropriate parameter values.

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 clearly states the tool selects objects by predicate rather than by name, which immediately distinguishes it from name-based selection tools like blender_select_objects. It further enumerates the specific predicates it supports (loose geometry, no material, no UVs, size, collection, glob), leaving no ambiguity about what the tool does.

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 provides a clear usage context: 'Names are what agents get wrong on a large scene' implies this tool is the right choice when selecting by name is error-prone or when objects need to be found by properties. However, it does not explicitly name alternative tools or state when not to use it, so it falls just short of full guidance.

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