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 skills add dcc-mcp/dcc-mcp-houdini --skill houdini-huskgit clone --depth 1 https://github.com/dcc-mcp/dcc-mcp-houdiniWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/dcc-mcp/dcc-mcp-houdini/houdini-husk)<a href="https://agentmods.dev/skills/dcc-mcp/dcc-mcp-houdini/houdini-husk"><img src="https://agentmods.dev/badge/skills/dcc-mcp/dcc-mcp-houdini/houdini-husk/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/dcc-mcp/dcc-mcp-houdini/houdini-husk"><img src="https://agentmods.dev/badge/skills/dcc-mcp/dcc-mcp-houdini/houdini-husk.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What 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.1 | $0.00055 | $0.00738 |
| Opus 5 | $0.00028 | $0.00369 |
| Sonnet 5 | $0.00011 | $0.00148 |
| Haiku 4.5 | $0.00006 | $0.00074 |
Grade A, and why
houdini-husk scanned grade A with 0 findings 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
houdini-husk
Typed husk command-line rendering tools for USD/Hydra workflows. Scene export
and option authoring stay affinity: main; native Husk launch, polling, and
cancellation are affinity: any. The render process runs below an isolated
hython worker so Karma cannot occupy Houdini's UI thread.
Tool groups
render:render_with_husklaunches and returns a durablejob_id;get_husk_jobpolls bounded output evidence andcancel_husk_jobterminates only an adapter-owned worker tree.checkpoint:create_checkpoint(save intermediate USD state),create_snapshot(export stage as USD for offline rendering).options:set_husk_options— configure or browse husk CLI options (renderer, threads, GPU, debug flags) on LOP/ROP nodes.
Tracer-bullet flow
set_husk_options(list_options=true, category="render")→ browse available optionscreate_snapshot(source_path="/stage", snapshot_path="/tmp/scene_snapshot.usd", flatten=true)(a LOP orlopnetunder/objis also accepted)set_husk_options(node_path="/stage/karmarenderproduct1", options={"threads": 8, "verbose": true})create_checkpoint(usd_file="/tmp/scene_snapshot.usd", checkpoint_path="/tmp/checkpoint_001.usd")render_with_husk(usd_file="/tmp/scene_snapshot.usd", output_path="/tmp/render/beauty.$F4.exr", renderer="karma", resolution=[1920, 1080], frame_range=[1, 120])→job_idget_husk_job(job_id="...")untilstateis terminal → inspectrender_outcome,render_errors,warnings,written_files, andoutput_verification; verified partial files do not override procedural errors.
Terminal diagnostics scan the completed stderr file using bounded reads, not
just its display tail. Error/warning lists retain at most 32 records of 1000
characters each. An unreadable configured stderr log reports STDERR_SCAN_FAILED
and cannot establish a clean render. Polling still returns compact log tails.
use_hython_fallback=true is rejected because in-process rendering can freeze
the Houdini event loop. Export a USD snapshot and use the isolated native Husk
path instead.
What ships with it
10 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- scripts/_husk_common.py 4.7 KB runs code
- scripts/_husk_jobs.py 2.9 KB runs code
- scripts/_husk_worker.py 6.3 KB runs code
- scripts/cancel_husk_job.py 576 B runs code
- scripts/create_checkpoint.py 2.6 KB runs code
- scripts/create_snapshot.py 5.2 KB runs code
- scripts/get_husk_job.py 518 B runs code
- scripts/render_with_husk.py 4.7 KB runs code
- scripts/set_husk_options.py 4.5 KB runs code
- tools.yaml 5.1 KB
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 Changed · +5 lines 560e9a5e0948
- 11d ago First seen · 52 lines · 55 tokens per session scan A 87706f7015ff
houdini-husk is a skill published in the GitHub repository dcc-mcp/dcc-mcp-houdini (12 stars, last pushed yesterday), licensed MIT. It adds 55 tokens to every session and 738 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
maya-render
Pipeline stage — render globals, final-frame rendering, and viewport capture: configure render settings, query them, render frames, capture playblasts. Use for producing final or preview imagery. Not for modeling (maya-mesh-ops), animation editing (maya-animation), generic file import/export (maya-geometry), or render…
maya-scripting
Bootstrap stage — escape hatch for Maya work that has no packaged skill yet. Agents should prefer searchskills / dcccapabilitymanifest → loadskill → typed tools (inputSchema + annotations) from domain skills; use executepython or executemel only when no skill matches, for bulk in-process loops, or for API…
dcc-mcp-core
Foundation library for the DCC Model Context Protocol (MCP) ecosystem. Provides Rust-powered action management, skills system, IPC transport, MCP Streamable HTTP server (2025-03-26 spec, with 2025-06-18 and 2025-11-25 awareness), sandbox security, shared memory, screen capture, USD scene support, and telemetry for…
dcc-mcp-maya-setup
Set up dcc-mcp-maya for an agent or operator: install Maya Python dependencies with mayapy, generate MCP host configuration, guide the user through loading the Maya plugin, and run a first live-tool smoke prompt.
maya-asset-source
Pipeline stage — asset discovery and resolution. Search local asset libraries, resolve paths to structured AssetDescriptor records, and surface candidate assets for downstream import. Use before maya-import-to-scene to locate what to import.
maya-pipeline
Domain skill — Maya asset pipeline orchestration: set up project directory structures, export scenes to USD, and coordinate multi-step DCC workflows. Use when initialising a Maya project or exporting assets for a downstream pipeline. Not for raw geometry editing — use maya-geometry for that. Not for low-level USD file…