Skip to main content
Glama

Polyfork low-poly 3D assets

get_variant

Turn a plain-words request ("oak cask", "taller", "five sails") into a ready call. want is matched against this asset's KNOB NAMES and OPTION VALUES, not against colour vocabulary: use the words from its -params.json into a ready createAsset() call for a remixable asset, plus a GLB URL of that exact variant. Check the returned confidence: on anything below high, tell the user what was actually applied instead of presenting it as exact.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
lookNoRestyle the mesh, independently of any knob. Deliverable families: palette = reduced|gameboy|pico8|cga|mono; shading = toon|unlit. Example {"palette":"gameboy","shading":"toon"}. Underwater, Dither, Wobble, Outline, Wireframe and Pixelate exist in the store too but are SHADERS: no glTF can carry one, so they are not offered here. If the user wants those, send them to the asset page.
wantYesthe change in the user's own words

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral burden and handles it well. It discloses that matching is against knob names and option values, that the output includes a createAsset() call and GLB URL, and that confidence must be checked and low-confidence matches reported honestly. This goes well beyond the schema and prepares the agent for the tool's real behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but somewhat rambling; the second sentence runs together multiple ideas ('matched against...', 'use the words...', 'into a ready createAsset() call...') and has awkward grammar. The first sentence is front-loaded and clear, and the confidence check is a useful final instruction, but the middle could be split into tighter sentences without losing information.

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?

The description covers the essential behavior: input semantics, output elements (createAsset call, GLB URL, confidence), and the correct handling of low-confidence results. It also covers the `look` edge case about shaders. It lacks a precise return-shape description or error behavior, but with no output schema present it still provides enough context for an agent to call and interpret results correctly.

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 coverage is 67%: `want` and `look` are described, while required `id` is not. The description adds important meaning for `want` by explaining it is matched against knob names/option values and not colour vocabulary, and clarifies that `look` restyles independently of knobs and excludes shaders. It doesn't add anything for `id`, but that parameter is fairly self-evident as an asset identifier.

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 clearly states the tool's job: turn a plain-words request into a ready createAsset() call plus a GLB URL for a variant of a specific asset. It also distinguishes the matching vocabulary (knob names and option values) from colour vocabulary, which helps separate it from related asset tools. However, it could more directly say 'get/return a variant for an asset' instead of relying on the tool name and phrases like 'ready call.'

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 gives actionable guidance: use terms from the asset's -params.json, and do not use colour vocabulary for `want`. It also explicitly tells the agent to route shader-related requests (Underwater, Dither, Wobble, etc.) to the asset page instead of using `look`. It does not name sibling alternatives like get_asset or search_assets, but the when-to/when-not-to guidance is clear enough for the main decision.

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.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool targets a distinct workflow: catalogue search, single-asset detail, kit listing/detail, variant generation, scene matching, terrain placement, preview, ownership, help, and feedback. Even the retrieval-heavy tools are separated by clear operation and output. An agent should be able to pick the right tool from descriptions alone.

Naming Consistency5/5

All tool names are snake_case action phrases with consistent get_, list_, search_, find_, preview_, and report_ conventions. Retrieval tools uniformly start with get_ or list_, and the exceptions still follow a predictable action-first structure. There is no mixed casing or synonym soup.

Tool Count5/5

At 11 tools the surface is well-scoped for a 3D asset catalogue and scene-building server. Each tool covers a distinct capability and none feels redundant or decorative. This is comfortably within the ideal range for a focused server.

Completeness5/5

The server covers the full discovery-to-scene workflow: search, inspect, kit composition, variant remixing, terrain placement, scene preview, and ownership checks. Missing catalogue entries and rough edges are explicitly handled by report_need, and get_help covers misuse, so there are no dead ends. No obvious domain operations appear absent for this server's stated purpose.

Resources