Skip to main content
Glama

RoomLab.app

Replace Material

replace_material
Destructive

Use when the user wants the material on a wall, floor, rug, curtain, countertop, backsplash, or another surface changed to match a reference image.

Input Schema

NameRequiredDescriptionDefault
imageNoThe room image attached by the user. Do not ask the user for file metadata.
surfaceYesSurface whose material should change, such as wall, floor, countertop, or backsplash.
image_urlNoA link or inline copy of the room image supplied by the client.
reference_imageNoThe reference image attached by the user. Do not ask the user for file metadata.
reference_image_urlNoA link or inline copy of the reference image supplied by the client.
additional_instructionsNoOptional user preferences stated in natural language. Do not ask for this when the request is already clear.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds no context beyond that — it does not say the original surface material is discarded, whether the result is a new generated image, or any cost/latency expectations for a destructive generative edit.

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?

A single sentence, front-loaded with 'Use when', with a compact surface list that carries real disambiguating information. Nothing is redundant or padded.

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?

With 100% schema coverage, an output schema, and annotations covering the destructive/open-world profile, the description only needs to establish the trigger and scope, which it does. The remaining gap is that it never mentions that one of the image/reference image pairs must be supplied, but the schema carries that.

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 100%, so the schema already documents surface, image, reference_image, image_url, reference_image_url and additional_instructions in detail. The description adds only the semantic pairing idea ('match a reference image'), which lightly clarifies the reference_image role, but nothing about which image inputs are required or how the URL variants relate.

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?

The description names a specific verb+resource ('material ... changed') and enumerates concrete target surfaces (wall, floor, rug, curtain, countertop, backsplash), which is enough to distinguish it from style-level siblings like change_room_style. It stops short of naming any sibling explicitly, so differentiation is inferred rather than stated.

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?

'Use when the user wants the material ... changed to match a reference image' gives a clear trigger condition. However, there is no when-not guidance and no named alternative for adjacent tasks (visualize_wall_colors, change_room_style, replace_furniture), leaving the agent to infer routing on its own.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources