Skip to main content
Glama
wc970321-collab

sketchup-mcp

create_shape

Draw a flat polygon face from ordered [x,y,z] mm points in a new SketchUp group, then optionally extrude it by a push/pull thickness to create a solid for floors, slabs, or outlines.

Instructions

Draw a flat face from a polygon (list of [x,y,z] mm points, >= 3 coplanar points) in a new group. pushpull (mm) extrudes it into a solid (e.g. draw a floor outline, then pull it up to the slab thickness). Returns: {id, persistent_id, type, name, tag, material, bounds_mm{min,max,size}}.

Input Schema

NameRequiredDescriptionDefault
tagNo
nameNo
colorNo
pointsYesPolygon vertices [[x,y,z],...] mm, >= 3 coplanar points, in order around the perimeter
materialNo
pushpullNoExtrusion thickness (mm); a horizontal face is pulled up along +Z

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations declare the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=false), so the description's added context is the real value here: it discloses that geometry is created inside a new group and that pushpull turns the face into a solid. It does not describe failure behavior for non-coplanar or self-intersecting points, which is the main remaining behavioural gap for a mutating geometry tool.

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?

Two front-loaded sentences plus a compact return-field list; the polygon constraint and the extrusion behaviour appear before the return signature. Minor redundancy with the schema's own points description ('coplanar points') is the only waste.

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?

There is no output schema, so the description correctly enumerates the returned fields (id, persistent_id, type, name, tag, material, bounds_mm). Units are stated for both geometric inputs and the group-creation side effect is disclosed, which is enough for an agent to invoke this confidently in a local SketchUp context.

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?

With schema description coverage at only 33%, the description carries most of the load and does so for the two parameters that matter: points (mm, >= 3 coplanar, ordered around the perimeter) and pushpull (mm, extrudes into a solid). It leaves tag, material, color and name undefined, so an agent receives no hint about whether tag/material must reference existing list_tags/list_materials entries or what color format is accepted.

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 ('Draw a flat face from a polygon') plus the optional extrusion outcome, which is far more informative than the bare name create_shape. It does not explicitly name or contrast with the sibling tools create_box or create_lines, so an agent must infer the distinction from the polygon-input requirement rather than being told it.

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 parenthetical '(e.g. draw a floor outline, then pull it up to the slab thickness)' gives a concrete usage scenario, which implies when the tool is appropriate. However, there is no explicit when-not guidance and no routing to alternatives such as create_box for box geometry or insert_component for pre-built objects.

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