Skip to main content
Glama

extrude_faces

Extend mesh faces along their normals by a set offset to add thickness or volume across the whole mesh or current selection.

Instructions

Extrude all faces of a mesh along their normals.

Args: object_name: Name of the mesh object. offset: Extrusion distance along face normals.

selection: "ALL" to act on the whole mesh, or "CURRENT" to act only
    on what is already selected. Use the select_* tools to choose
    first. Defaults to "ALL".

Returns: Confirmation dict.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
offsetNo
selectionNoALL
object_nameYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.7.0
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / selection
      Added value: +{
      +  "default": "ALL",
      +  "enum": [
      +    "ALL",
      +    "CURRENT"
      +  ],
      +  "title": "Selection",
      +  "type": "string"
      +}
  2. First observedv0.1.0

TDQS

B3.3/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 burden. It describes the geometric operation but says nothing about edit-mode requirements, whether it mutates in place, undo behavior, or permissions. For a mesh-mutating tool with zero annotation coverage, this is a significant 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?

Uses clear Args/Returns structure with front-loaded purpose in the first sentence. Each line earns its place, though the Returns note is minimal and the format is slightly boilerplate.

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 the return value need not be explained. However, as a mesh-mutating tool with no annotations, the description omits the behavioral context (edit mode, side effects) an agent would want before invoking 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 0%, so the description must compensate and it largely does: it documents object_name, offset (extrusion distance), and explains the 'ALL'/'CURRENT' enum values plus the default. The enum meaning added here goes beyond the bare schema and meaningfully reduces ambiguity.

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 ('Extrude all faces of a mesh along their normals'), which an agent can distinguish from related mesh ops like inset_faces or fill_faces without reading a schema. It lacks explicit sibling differentiation, so full marks are not warranted.

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

Usage Guidelines3/5

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

The description gives contextual guidance for the 'selection' option, noting that 'CURRENT' requires selecting first via the select_* tools and that it defaults to 'ALL'. This is helpful prereq guidance but there is no explicit when-to-use vs alternatives framing for the tool itself.

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