Skip to main content
Glama

Assets for three.js

Search 3D models for three.js

search_models
Read-onlyIdempotent

Search the Assets for three.js catalogue: original GLB models (London houses, shops, pubs, building sites, cranes, parks, playgrounds, sports) made for three.js and WebGL. Matches words against model names, packs, eras and settings, and filters by pack, type (a single component model, or an assembly: a supplied arrangement of component models), era, setting, price, triangle count and whether a model embeds textures. Returns each match with its store page, preview image, triangle count and how to get it (free starter pack, £5 on its own, or its pack price) with a buy link. It does not return model files or download links, and it cannot buy anything: buying happens on the store page. Read-only. Use get_model for one model's full details and list_packs for the packs and their prices.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "search_models"
  }
}

Input Schema

NameRequiredDescriptionDefault
eraNoOptional: georgian, victorian, edwardian, interwar, 1930s, post-war, contemporary or 2020s.
packNoOptional: a pack id or name from list_packs, e.g. "london-pubs" or "Tower cranes and lifting".
typeNoOptional: "model" = one component GLB (a window, a door, a crane mast section); "assembly" = a complete building, machine or scene put together from component models.
limitNoResults to return. Default 10.
queryNoOptional words to look for, e.g. "sash window", "tower crane", "corner pub", "swing". Leave empty to filter only.
offsetNoSkip this many results, for paging. Default 0.
settingNoOptional setting.
texturedNoOptional, component models only: true = the GLB embeds textures; false = PBR colours only. Assemblies are left out when this is set (their parts vary).
free_onlyNoOptional: only models that come in the free London Street Starter pack.
max_price_gbpNoOptional: the most you want to pay in pounds (VAT included) for the cheapest way to get the model: 0 for free, 5 for an assembly sold on its own, otherwise its pack price.
max_trianglesNoOptional: most high-detail triangles.
min_trianglesNoOptional: fewest high-detail triangles (an assembly counts every part it places).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered by structured data. The description still adds real value beyond them: it says no model files or download links are returned, that purchasing happens off-tool on the store page, and what each result carries (store page, preview image, triangle count, price tier). That is useful behavioural context, but it is largely a restatement of scope rather than disclosure of limits like rate limits, paging caps or error conditions, so it sits a step above adequate rather than at the top.

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 opening sentence front-loads the resource and the whole thing is information-dense, with no filler transitions. The parenthetical catalogue of model categories ("houses, shops, pubs, building sites, cranes, parks, playgrounds, sports") is longer than needed for an agent to act, which is the main trimming opportunity in an otherwise tight definition.

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?

With 12 optional parameters and no output schema, the description must carry the return contract, and it does: each match comes with store page, preview image, triangle count and price route, plus the explicit negative that no files or download links are returned. Nothing an agent needs in order to call this correctly and interpret the result is missing.

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 100%, so the baseline is 3, and the description earns an extra point by explaining what an empty query does ("Leave empty to filter only") and that matching runs against names, packs, eras and settings – search semantics the schema does not state. Pricing and type semantics are largely mirrored from the schema rather than extended, which keeps it below a 5.

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?

"Search the Assets for three.js catalogue" names a specific verb and resource, and the following clause enumerates what is searchable (original GLB models of houses, shops, cranes, parks) plus the match dimensions. It is clearly distinguishable from get_model (single-model detail) and list_packs (pack list/prices) without opening any 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?

It states the selection conditions for both siblings explicitly: "Use get_model for one model's full details and list_packs for the packs and their prices." It also sets a hard boundary on the current tool – "it cannot buy anything: buying happens on the store page" – so the agent knows what not to attempt here.

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