Skip to main content
Glama

create_principled_material

Create a plain-surface material with colour, metallic, roughness and more set in one call.

Instructions

Create a plain-surface material with colour, metallic, roughness and more set in one call.

The usual choice for painted, metal, glass or plastic surfaces of a single colour. For a patterned surface (wood, marble, fire, veins) use create_procedural_material instead. create_material makes the same Principled BSDF with nothing set, for when you will build the node tree by hand.

Args: name: Name for the new material. color: Base color as RGBA list, default [0.8, 0.8, 0.8, 1.0]. metallic: Metallic value 0.0-1.0, default 0.0. roughness: Roughness value 0.0-1.0, default 0.5. specular: Specular IOR level 0.0-1.0, default 0.5. emission_strength: Emission strength, default 0.0. emission_color: Emission color as RGBA list, default [1.0, 1.0, 1.0, 1.0]. alpha: Alpha value 0.0-1.0, default 1.0. transmission: Transmission weight 0.0-1.0, default 0.0. ior: Index of refraction, default 1.45.

Returns: Confirmation dict with material name and all set properties.

Input Schema

NameRequiredDescriptionDefault
iorNo
nameYes
alphaNo
colorNo
metallicNo
specularNo
roughnessNo
transmissionNo
emission_colorNo
emission_strengthNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior3/5

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

No annotations at all, so the description carries the full behavioral burden. It discloses the resulting node setup (Principled BSDF) and that all listed properties are applied in one call, which is useful, but never says what happens on a name collision with an existing material, whether the material is assigned to any object (assign_material exists as a separate tool), or whether the operation is undoable.

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?

Well front-loaded: the disambiguation between the three material tools comes first, then args. Slight waste in the 'Returns' block, which restates what the output schema already declares, but the Args list is dense and earns its space.

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?

For a 10-parameter creation tool with no annotations, the description covers purpose, alternatives, and every argument, and an output schema exists so return detail is not required (the prose there is redundant but harmless). The remaining gap is post-creation behaviour — assignment to an object and name-collision handling — which the sibling set makes relevant.

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: every one of the 10 parameters is documented with units/ranges (0.0-1.0 for metallic, roughness, specular, alpha, transmission), RGBA list format for colour, and a physically meaningful default IOR. It stops short of edge cases like whether a 3-element colour list is accepted or how emission_colour interacts with emission_strength.

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?

Specific verb+resource ('Create a plain-surface material') with the key attributes named in the same sentence. It explicitly separates itself from create_procedural_material and create_material, so an agent can distinguish all three creation tools without opening a schema.

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

Usage Guidelines5/5

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

States the positive case ('usual choice for painted, metal, glass or plastic surfaces of a single colour') and the alternatives with their selecting conditions: patterned surfaces go to create_procedural_material, hand-built node trees go to create_material. Explicit when/when-not/alternative coverage.

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