Bounded Blender inspection, authored/evidence rendering, and verified Poly Haven texture/HDRI acquisition.
Server has well-structured tool definitions with explicit schemas, descriptions, and annotations. Most tools follow verb_noun naming (blender_*, poly_haven_*). Descriptions are detailed and domain-specific (50-250 chars), explaining WHAT the tool does and WHEN to use it. Input schemas use Zod with proper type constraints (enums, min/max, length limits). However, output schemas are not documented, responses are JSON-stringified without declared structure. Error handling returns JSON but lacks recovery guidance (no 'try X instead' messages). Some parameter descriptions could be more explicit about constraints (e.g., landmarks array structure is complex but not fully explained in prose). Tool composition is good, tools chain naturally (search → download, inspect → compare). No security issues detected (no secrets in params, read-only hints present).
Bounded SceneIR diff: compare baseline and candidate .blend files for topology, hierarchy, material, and spatial changes. Requires the bas-runtime binary. Writes a new JSON file with baseline, candidate, and diff results.
Render geometry through an authored reference camera and return a reference/silhouette/overlay image. Optional explicit white-foreground mask enables missing/excess coverage and IoU. Does not infer camera, foreground or 3D quality. Match pose/crop first; read-only source, new output directory.
Read-only evaluated-mesh diagnostics: counts and bounded world-space locations of degenerate faces and zero-length edges. Element indices refer to evaluated meshes, not editable source indices. Open boundaries are not classified as defects. Writes a new JSON file.
Fit scale/focal length and lens shift from 3-32 explicit 2D/3D correspondences. Fixed camera pose and geometry; saves a candidate .blend in a new directory. Review with blender_compare_reference before retaining parameters in durable source. This does not solve camera pose or prove model similarity.
Import one local animated FBX with its skeleton into a new standalone .blend. Keeps actions and reports frame ranges. No retargeting or modification of existing scenes. Output directory must not exist. Match fps to the Mixamo download setting.
Output schemas not documented. Tools return JSON-stringified results without declared field structure. LLMs cannot plan downstream calls or extract specific fields reliably.
Error handling lacks recovery guidance. Errors return JSON with process/report but no actionable next steps (e.g., 'Try X instead' or 'Check Y'). LLMs cannot self-correct.
Complex parameter structures (landmarks array with nested objects) lack prose explanation of expected format. Description says 'Array of 3-32 landmark correspondences' but does not explain the object schema (name, objectName, referenceUv, localPoint).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 69 | 2025-06-18+ | v2 |
Bounded SceneIR analysis: object hierarchy, mesh topology, material coverage, and spatial relationships. Requires the bas-runtime binary (bun run setup:runtime). Writes a new JSON file with scene structure and analysis results.
Prepare a Mixamo search URL and browser workflow. Requires host browser tools to read live results, preview and download; does not itself search the catalog or handle Adobe credentials.
Render a .blend with authored cameras and materials. Produces PNG images and optional JSON metadata. Read-only source, new output directory.
Download a texture or HDRI from Poly Haven by asset ID. Saves to a specified directory with metadata JSON.
Search Poly Haven for textures and HDRIs by category, tag, or free-text query. Returns paginated results with download URLs and metadata.
poly_haven_search returns paginated results but description does not state result limit or explain pagination behavior. LLMs may not know how many results to expect or how to iterate.
blender_inspect_asset and blender_compare_assets accept 'options' object with undocumented fields (object_id, include_descendants, offset, limit, proximity, etc.). No schema or description of valid keys/values.