Skip to main content
Glama

Asset Import

asset_import
Idempotent

Imports Poly Haven CC0 assets into Maya by fetching FBX files and textures, auto-wiring PBR channels, enforcing polycount limits, and returning grouped bounding-box reports.

Instructions

Import a Poly Haven CC0 model into Maya (find ids via asset_search).

Pipeline: host downloads FBX + textures from the Poly Haven whitelist (https-only, size caps, per-file md5 verify) into the platformdirs cache -> Maya imports the local FBX (explicit meters unit handling) -> texture maps auto-wire by PH naming convention (diff/albedo -> color sRGB; rough/metal -> Raw single-channel; nor_gl -> bump2d normal) -> polycount gate -> group as GRP_asset_ -> bbox/metadata report.

Idempotent by default: a second call with the same asset_id reports the existing group instead of duplicating (force=True re-imports).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNoRe-import even when GRP_asset_<id> already exists.
asset_idYesPoly Haven asset id (case-sensitive, e.g. 'Camera_01').
resolutionNoTexture tier '1k' (default), '2k', '4k', '8k'.1k
session_keyNoMaya session key.
max_polycountNoFace-count guard (default 100000); imports over the limit are deleted and rejected.
allow_high_polycountNoOverride the polycount guard (the override is disclosed in the audit log).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.1

TDQS

A4.9/5.0
Behavior5/5

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

The annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds rich behavioral context beyond those flags: download safety (https-only, size caps, md5 verification), cache location, local FBX import with meter handling, automatic texture wiring rules, polycount gating, grouping, and bbox/metadata reporting.

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?

The first sentence front-loads the tool's purpose. The pipeline is expressed as a compact arrow chain, and the idempotency behavior is stated without wasted words. Every sentence earns its place.

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?

Given a mutation tool with an output schema, annotations covering safety and idempotency, and full parameter descriptions, the definition is complete enough for an agent to call it correctly. The pipeline, safeguards, and idempotency contract are all disclosed.

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 100%, so the baseline is 3. The description adds meaning beyond the schema by directing agents to resolve asset_id via asset_search and by explaining that over-limit imports are deleted and rejected, which contextualizes max_polycount and allow_high_polycount.

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?

States a specific verb and resource: 'Import a Poly Haven CC0 model into Maya.' It also explicitly names the sibling tool used to find ids ('asset_search'), so an agent can distinguish this import tool from the search tool immediately.

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?

Provides clear usage context: find ids via asset_search first, then use this tool to import. It also specifies when to set force=True by explaining the default idempotent behavior and what happens on repeated calls.

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