MCP Server Builder
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
Turn a text prompt (or reference image) into a rigged, animation-ready 3D avatar (GLB).
$ npx skills add nirholas/three.ws --skill create-3d-avatar -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install nirholas/three.ws create-3d-avatar --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/nirholas/three.ws.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/create-3d-avatar .claude/skills/create-3d-avatar && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "create-3d-avatar" agent skill from https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatar into .claude/skills/create-3d-avatar/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-3d-avatar", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatarType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add nirholas/three.ws --skill create-3d-avatar -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install nirholas/three.ws create-3d-avatar --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nirholas/three.ws.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/create-3d-avatar .agents/skills/create-3d-avatar && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "create-3d-avatar" agent skill from https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatar into .agents/skills/create-3d-avatar/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-3d-avatar", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nirholas/three.ws --skill create-3d-avatar -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install nirholas/three.ws create-3d-avatar --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nirholas/three.ws.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/create-3d-avatar .cursor/skills/create-3d-avatar && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "create-3d-avatar" agent skill from https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatar into .cursor/skills/create-3d-avatar/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-3d-avatar", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/nirholas/three.ws.git --path .agents/skills/create-3d-avatar--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add nirholas/three.ws --skill create-3d-avatar -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install nirholas/three.ws create-3d-avatar --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nirholas/three.ws.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/create-3d-avatar .gemini/skills/create-3d-avatar && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "create-3d-avatar" agent skill from https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatar into .gemini/skills/create-3d-avatar/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-3d-avatar", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install nirholas/three.ws create-3d-avatarInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add nirholas/three.ws --skill create-3d-avatar -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/nirholas/three.ws.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/create-3d-avatar .github/skills/create-3d-avatar && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "create-3d-avatar" agent skill from https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatar into .github/skills/create-3d-avatar/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-3d-avatar", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nirholas/three.ws --skill create-3d-avatar -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install nirholas/three.ws create-3d-avatar --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nirholas/three.ws.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/create-3d-avatar .opencode/skills/create-3d-avatar && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "create-3d-avatar" agent skill from https://github.com/nirholas/three.ws/tree/main/.agents/skills/create-3d-avatar into .opencode/skills/create-3d-avatar/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-3d-avatar", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
create-3d-avatarTurn a text prompt (or reference image) into a rigged, animation-ready 3D avatar (GLB).
Create 3D Avatar is an agent skill from nirholas/three.ws. Turn a text prompt (or reference image) into a rigged, animation-ready 3D avatar (GLB). Use when you or the user want to create, generate, or make a 3D avatar, character, or humanoid figure that can be posed and animated — "make a 3D avatar of a knight", "generate a character I can animate", "create a rigged astronaut". Generates the mesh and adds a humanoid skeleton in one step. Returns a GLB URL plus a pose-studio link.
Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows. The repository describes itself as: Open-source platform for 3D AI agents. Turn text or a photo into a rigged, animated GLB avatar, give it an LLM brain, memory and a wallet, and embed it anywhere with one web… The licence is MIT.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 238ef60. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
three.wsFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Create 3D Avatar loads about 1.6k tokens when it runs. Until then it costs about 111 tokens; SKILL.md has 629 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from nirholas/three.ws at commit 238ef60, republished under its MIT licence (© nirholas). 629 words, ~1,574 tokens.
.claude/skills/create-3d-avatar/SKILL.md (or your agent's skills folder).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.
| 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.
If the three.ws MCP server is connected, call the one-step avatar tool:
forge_avatar{ "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 — set true only to rig a non-humanoid subject anyway.glbUrl (or riggedGlbUrl), 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.
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" }
}
}'structuredContent returns the rigged model:
{
"kind": "avatar",
"glbUrl": "https://three.ws/cdn/creations/def456/rigged.glb",
"viewerUrl": "https://three.ws/viewer?src=https%3A%2F%2Fthree.ws%2F...",
"format": "glb",
"rigged": true,
"prompt": "a friendly cartoon astronaut in a glossy white suit"
}forge_avatar is generate-then-rig bundled. You can run the steps yourself over
POST /api/forge — generate a mesh, then rig it:
# 1. Generate the figure (see generate-3d-model/reference.md for the submit/poll shape)
# "tier": "high" matches what forge_avatar/text_to_avatar request automatically —
# it is the tier the router maps to the self-host Hunyuan3D lane for IRL realism.
curl -s -X POST https://three.ws/api/forge -H 'content-type: application/json' \
-d '{ "prompt": "a friendly cartoon astronaut in a glossy white suit", "tier": "high" }'
# 2. Rig the resulting GLB (see rig-a-model)
curl -s -X POST "https://three.ws/api/forge?action=rig" -H 'content-type: application/json' \
-d '{ "glb_url": "<glbUrl from step 1>" }'glbUrl for download / import into a 3D engine; it already carries
a humanoid skeleton and skin weights, so animation clips play on it."a tall slender elf ranger in green leather armor". Avoid scenes, props held in hand, or multiple characters.forge_avatar /
text_to_avatar already direct the generator toward relaxed, open hands with
fingers separated and visible (never a fist, never a hand hidden behind the
body or in a pocket) — do not fight that by asking for "hands on hips" or
"arms crossed" unless you accept a higher chance of fused-finger geometry.
Asking is not the same as getting: measured across six personas on 2026-09-08,
a prompt that explicitly said "hands open, fingers separated" still came back
with both hands fused into one clasped blob at the chest in one case, and with
cleanly separated fingers in another. What correlates with separated fingers is
the hands being away from the torso and from each other in the described
pose, so say where the hands are ("arms hanging at his sides, palms forward"),
not just what they are doing.high quality tier under the
hood — the self-host Hunyuan3D lane (people/organic-subject strength, portrait
realism cues on the reference image) instead of the faster draft/standard
default. This is automatic; no input needed.The full three.ws MCP server also exposes higher-fidelity, art-directed and paid
avatar lanes. The free hosted path above is the cross-platform-safe one. The rig
internals (skeleton convention, what makes a model riggable) live in the
rig-a-model skill.
rate_limited / busy — honor retryAfter and retry.not_configured — lane momentarily cold; retry shortly.rig-a-model.Never report a dead or empty link as success.
© nirholas, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/create-3d-avatar of nirholas/three.ws.
Open the folder on GitHubat commit 238ef60
Create 3D Avatar next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Create 3D Avatar this skillnirholas/three.ws | 226 | — | ~1.6k | Automated safety check: Pass | MIT | |
| MCP Server Builderanthropics/skills | 180k | 62 repos | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| Hook Development for Claude Code Pluginsanthropics/claude-plugins-official | 37k | 11 repos | ~4.1k | Automated safety check: Notes | Apache-2.0 | |
| Using Superpowersfarm-fe/farm | 5.6k | 34 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Executing Plans Inlineobra/superpowers | 296k | 2 repos | ~5.1k | Automated safety check: Pass | MIT | |
| Claude Code Agent Developmentanthropics/claude-plugins-official | 37k | 8 repos | ~2.8k | Automated safety check: Pass | Apache-2.0 |
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
anthropics/claude-plugins-official
Explains how to write Claude Code plugin hooks, both prompt-based checks and bash commands, for events such as PreToolUse, Stop and SessionStart.
farm-fe/farm
A skill your agent uses when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions
obra/superpowers
Has the agent carry out an implementation plan itself, task by task in the current session, keeping a ledger, proving each step with a test and ending with one whole-branch review.
anthropics/claude-plugins-official
Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.
Azure/azqr
Create new skills, modify and improve existing skills, and measure skill performance.
nirholas/three.ws
Add the Shaders WebGPU mouse effect used for the Tidal Commons hero: a white twinkling halftone cursor trail driven by ChromaFlow, masked through a DotGrid, finished with chromatic ripples and film…
nirholas/three.ws
Package a finished local project into an intentional GitHub repository, create a strong README and visual preview, push it safely, configure a public GitHub Pages URL when the project is compatible…
nirholas/three.ws
Audit a website or digital experience against its supplied source references for originality and plagiarism risk.
nirholas/three.ws
Turn a completed daily UI inspiration capture into exactly five original landing-page builds, one per separate Codex task, using Sites.
nirholas/three.ws
Write, rewrite, review, or continuously refine X/Twitter posts in Meng To's current voice using his deduplicated authored-post corpus, personal and product context, shared resources, and Content…
nirholas/three.ws
Create polished 60 fps 4:3 4K browser screen-recording style videos from Codex in-app browser captures, with browser-only crop, natural macOS cursor styling, deliberate click choreography…
Categories
Turn a text prompt (or reference image) into a rigged, animation-ready 3D avatar (GLB). ws. Turn a text prompt (or reference image) into a rigged, animation-ready 3D avatar (GLB).
Create 3D Avatar fits situations like: the user want to create; make a 3D avatar; humanoid figure that can be posed and animated — make a 3D avatar of a knight; generate a character I can animate.
Run `npx skills add nirholas/three.ws --skill create-3d-avatar -a claude-code`. Or copy the skill folder (.agents/skills/create-3d-avatar in nirholas/three.ws) into .claude/skills/create-3d-avatar in your project. Claude Code loads it when a task matches its description.
Run `npx skills add nirholas/three.ws --skill create-3d-avatar -a codex`. Or copy the skill folder (.agents/skills/create-3d-avatar in nirholas/three.ws) into .agents/skills/create-3d-avatar in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nirholas/three.ws --skill create-3d-avatar -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-3d-avatar, .gemini/skills/create-3d-avatar, .github/skills/create-3d-avatar and .opencode/skills/create-3d-avatar in your project.
Going by SKILL.md and its folder, Create 3D Avatar needs the command-line tools its instructions call (curl).
SKILL.md names 1 domain. In commands or code: three.ws; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Create 3D Avatar is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Create 3D Avatar: MCP Server Builder (anthropics/skills, 180k stars), Hook Development for Claude Code Plugins (anthropics/claude-plugins-official, 37k stars), Using Superpowers (farm-fe/farm, 5.6k stars) and Executing Plans Inline (obra/superpowers, 296k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
nirholas (a GitHub user) maintains it in nirholas/three.ws, which has 226 GitHub stars. The repository holds 165 skills in this directory. The repository was last updated on October 7, 2026.
Source: nirholas/three.ws on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.