Skip to main content
Glama

asset_search

Search a hosted 3D library for models, PBR textures or HDRI skies, then download the one you pick into your project with ready-made loading code.

Instructions

Searches the hosted paprika3d asset library over the network (assets.keeno.dev) for a ready-made model (57k, CC BY or CC0, as GLB and some as USD), PBR texture or HDRI sky, and puts the one you pick in the project with its loading code. A search answers one numbered line per hit (id, name, size, licence, preview image) and a contact sheet: the hits' thumbnails in one row, numbered as the lines are. pick an id from it (or its start, when no other hit shown in this project starts so) to download the file into assets/ (public/assets/ with vite) and get the code that loads it, a model at real size (or height units tall) and credited in CREDITS.md. not lists ids that missed, which the library learns from, and searches again without them; more searches the same query again for the next hits. image (a picture in the project, with crop to cut one thing out of it) ranks models by how alike they look, for the thing a reference picture shows that words miss. The library logs model searches, picks and rejections with the agent's name.

Input Schema

NameRequiredDescriptionDefault
cwdYesThe game project's folder.
notNoIds from the last search to reject.
cropNoWith image: [left, top, right, bottom] in the picture's pixels, as `reference` reads them: the one thing to find, cut out of the scene.
kindNomodel by default.
moreNoWith the same query: the next hits, past every one it has shown, none of them rejected.
pickNoAn id to download, or the start of one that no other hit shown in this project (in any session) starts with.
typeNoModels only.
imageNoModels only: a picture under cwd (refs/01.jpg) or a look baseline's name, to rank models by how alike they look to it (with query, by both); the reply shows the image searched with.
modelNoOptional: your own model name, e.g. "claude-opus-5-5", sent with model searches and picks only, so the library can learn which agents its picks suit; nothing else about the session.
queryNoWhat you need, e.g. "wooden barrel", "mossy cobblestone", "sunset sky".
sheetNofalse leaves out the contact sheet, the picture of the shown hits' thumbnails in one row, numbered as the lines are (on by default).
styleNoModels only.
formatNoModels only. In a search, only models with a file of this format; with pick, the file to download: a model with both is saved as its GLB unless this is usd, and one with only a USD file (.usdz) as that, loaded with three's USDLoader (r183 or later).
heightNoWith pick: scale a model to this many units tall.
riggedNo
maxTrisNo
animatedNo
texturesNoWith pick: false saves a model's geometry only, every texture dropped (for a model you colour or texture yourself).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and discloses key behaviors: network search against assets.keeno.dev, numbered result lines plus a contact sheet, downloading into assets/ (or public/assets/ with vite), generating loading code, scaling to real size or `height`, and writing credits to CREDITS.md. It also mentions logging of searches, picks, and rejections with the agent's name, but does not cover error handling or rate limits.

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?

The description is a single dense paragraph, but it is front-loaded with the core purpose and every sentence contributes operational detail for an 18-parameter tool. It could be more scannable with lists or line breaks, but there is little wasted text.

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?

There is no output schema, but the description explains the return format (one numbered line per hit with id, name, size, licence, preview image, plus a numbered contact sheet). It covers the main workflows and side effects, though it omits failure modes and the precise side effects of some filter parameters like `rigged`, `animated`, and `maxTris`.

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 high (83%), so the baseline is 3, but the description adds meaningful semantics beyond the schema: `kind` defaults to model, `more` searches past every hit already shown, `not` rejects ids that the library learns from, `pick` accepts an id or unambiguous prefix, and `format` has nuanced download behavior (GLB preferred unless `usd`, USDLoader for USD-only). It also clarifies that `model` is sent only with model searches and picks.

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?

The description states a specific verb and resource (searches the hosted paprika3d asset library over the network) and names the exact asset types covered (model, PBR texture, HDRI sky). It also explains the pick side effect (putting the chosen asset in the project with loading code), which distinguishes it from sibling tools like reference or look.

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?

It clearly explains when to use specific modes: `image` for matching a reference picture when words miss, `more` to continue the same query, `not` to reject ids and re-search without them, and `pick` to download and integrate a hit. It does not explicitly name sibling tools as alternatives, but the mode-level guidance is strong.

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