Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/nirholas/three.ws/create-3d-avatarnpx skills add nirholas/three.ws --skill create-3d-avatargit clone --depth 1 https://github.com/nirholas/three.wsWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00114 | $0.01543 |
| Opus 5 | $0.00057 | $0.00772 |
| Sonnet 5 | $0.00023 | $0.00309 |
| Haiku 4.5 | $0.00011 | $0.00154 |
Grade A, and why
create-3d-avatar scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s -X POST https://three.ws/api/mcp-studio \ How it starts
The opening of the file, as written. The whole thing — 137 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Create a rigged 3D avatar
Turn a text prompt or a reference image into a rigged, animation-ready humanoid avatar (GLB). One call generates the textured mesh, then auto-rigs it — adding a humanoid skeleton and skin weights — so the model can be posed and play animation clips immediately.
The result is a glbUrl for the rigged model plus a pose-studio link that
opens the avatar ready to pose in the browser.
When to use which tool
| Goal | Use |
|---|---|
| A posable humanoid character from text/image | this skill |
| A static object / prop / creature | generate-3d-model |
| Add a skeleton to a GLB you already generated | rig-a-model |
Auto-rigging assumes a humanoid figure. A clearly non-humanoid subject
(furniture, vehicle, quadruped) is steered to generate-3d-model instead.
Fastest path — the MCP tool
If the three.ws MCP server is connected, call the one-step avatar tool:
- Tool:
forge_avatar - Input:
{ "prompt": "<character description>" }or{ "image_url": "<https URL to a reference image>" }prompt— describe a single full-body humanoid in a neutral standing pose:"a friendly cartoon astronaut in a glossy white suit".image_url— reconstruct and rig a character from a photo/render.allow_non_humanoid— settrueonly to rig a non-humanoid subject anyway.
- Returns: the rigged
glbUrl(orriggedGlbUrl), the intermediate mesh URL, a pose-studio link, and per-stage timing.
For a fast unrigged figure (no skeleton), use text_to_avatar instead — same
inputs, mesh only.
Portable path — the hosted HTTP endpoint
No MCP client needed. The free hosted lane is a public JSON-RPC endpoint at
https://three.ws/api/mcp-studio:
curl -s -X POST https://three.ws/api/mcp-studio \
-H 'content-type: application/json' \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "forge_avatar",
"arguments": { "prompt": "a friendly cartoon astronaut in a glossy white suit" }
}
}'
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 137 lines · 114 tokens per session scan A 1a6cb8974985
create-3d-avatar is a skill published in the GitHub repository nirholas/three.ws (107 stars, last pushed 4d ago), licensed Apache-2.0. It adds 114 tokens to every session and 1,543 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
blender-mcp
Control Blender directly from Hermes via socket connection to the blender-mcp addon. Create 3D objects, materials, animations, and run arbitrary Blender Python (bpy) code. Use when user wants to create or modify anything in Blender.
unreal-mcp
Automate Unreal Engine editor scenes, actors, and renders.
img2threejs
Turn an object or character reference image into a quality-gated, animation-ready procedural Three.js model built in code. Use for image-to-3D reconstruction, detail-accurate object rebuilds, stylized/likeness-maximized human characters, sculpt specs, and staged code generation.
sceneview-web
Build 3D and WebXR (AR/VR) experiences in the browser with SceneView for Web — Filament.js (WebGL2/WASM) wrapped in a Kotlin/JS DSL and a plain-JavaScript API on window.sceneview. Use whenever the user asks for "3D in the browser", "a web model viewer", "WebXR AR/VR", or any browser 3D/AR app where the dependency is…
animation-blueprint
Navigate, inspect, and author Animation Blueprints — state machines, states, transitions, and transition rules (AnimGraphService). Use when the user asks to create or edit an Animation Blueprint/AnimBP, add a state machine or states, wire transitions between states, set a state's animation, or inspect AnimGraph…
animation-montage
Create and manipulate Animation Montages — sections, slots, segments, branching points, notifies, and blend settings (AnimMontageService). Use when the user asks to create a montage (from an animation or empty), add or link montage sections, set up slots/segments, add branching points, or adjust montage blend timing.