hy3d-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HY3D_PY | No | Python interpreter with the worker packages (opencv-python, numpy, trimesh, pillow, scipy) installed. | ~/git/repos/trellis-mac/.venv/bin/python |
| HY3D_OUT | No | Directory where generated 3D models are written. | ~/hy3d-output |
| HY3D_REPO | No | Path to the Hunyuan3D-MLX repository checkout. | ~/git/repos/hunyuan3d-mlx |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| generate_modelA | Turn a concept image into a textured 3D model (GLB). paint=False skips texturing (shape only, ~20s vs ~3-4 min). auto_cutout keys out a plain background first unless the input already carries real transparency. finish=True applies the game-look texture pass (see finish_model) after generation. texture_size: 512|1024|2048. Blocks while an earlier generation is running (single-job queue). |
| prepare_conceptA | Key a plain-background concept image out to a centered square RGBA PNG. Standalone version of generate_model's auto_cutout, for callers that want the intermediate. Refuses inputs whose corners disagree (busy background). Warns when the opaque fraction looks like a bad key. |
| finish_modelA | Apply the game-look texture pass to a generated GLB. Geometry untouched. Tones the albedo (gamma/contrast/saturation), extracts saturated accents and blackhat panel seams into a dedicated glTF emissive texture. Separated from generation so it can be re-run with new knobs without regenerating. seam_pinstripes 0-1 (0 disables); defaults are the values proven on the AEGIS fleet. |
| render_previewA | Offscreen renders of a GLB, no engine needed. views: subset of iso/front/back/top/side (default [iso]). Needs pyrender in the worker venv; the error message says how to add it if missing. |
| server_statusA | Health check and first-run diagnostic. Validates every setup requirement (binary, metallib, weights, weight layout, worker venv); each failing check carries the exact fix. Also reports queue depth and the last job. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool addresses a distinct stage: concept preparation, model generation, texturing/finishing, preview rendering, and server diagnostics. There is no functional overlap or ambiguity between them.
Four of five tools follow a clear verb_noun pattern (prepare_concept, generate_model, finish_model, render_preview). server_status breaks the pattern slightly but remains readable and predictable within the set.
Five tools are well-scoped for the server's purpose, covering the essential pipeline without redundancy or bloat. Each tool has a clear role and earns its place.
The full lifecycle from concept image to finished model preview is covered: prepare concept, generate model, optionally finish texturing, and render preview. server_status adds operational coverage. No critical gaps are apparent.