Connect agents to SideFX Houdini: edit the scene, cook, render, see the viewport, read the docs.
Runs on your machine from its package; the steps are below.
At most: moves money, runs code or commands, deletes data, or sends messages for you.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
uvx houdini-mcp-server
MCP client config
{
"mcpServers": {
"houdini-mcp": {
"command": "uvx",
"args": [
"houdini-mcp-server"
]
}
}
}
Connect SideFX Houdini to Claude, Codex, Gemini, Cursor, opencode or pi.
This MCP provides Full Markdown Documentation and Viewport Screenshots support to your agents of choice, enabling strong feedback loops and autonomous workflows.
Windows
powershell -c "irm https://raw.githubusercontent.com/JTCHE/houdini-mcp/main/bootstrap.bat -OutFile bootstrap.bat; .\bootstrap.bat"
macOS / Linux
curl -sSL https://raw.githubusercontent.com/JTCHE/houdini-mcp/main/bootstrap.sh | bash
uv
uv tool install houdini-mcp-server && houdinimcp-install
The installer adds the plugin to Houdini and the server to your AI clients of choice. Restart both.
pi also needs pi install npm:pi-mcp-adapter.
Claude plugin
This repository is also a Claude plugin, for Claude Code and for Cowork on your computer. It needs uv.
The plugin starts a headless Houdini without setup. To connect the Houdini that you have open, ask Claude to run the houdini-setup skill.
uv run --frozen builds an environment from uv.lock in the plugin folder, then starts the MCP server from this repository.localhost only. It starts hython, or houdini on request, from your Houdini install, and ffmpeg to encode a flipbook movie.docs reads the documentation out of your Houdini install with houdinimd-docs. It sends nothing over the network.houdini-setup writes the HoudiniMCP package into your Houdini preferences folder, after you approve it.execute runs any Python that Claude writes in your Houdini session.| Read | scene_overview node_inspect geometry_inspect stage_inspect select console |
| Edit | node_edit parm_set connect hda batch |
| Run | cook render pdg playbar scene_file |
| See | capture: the viewport, a camera, four views or a flipbook |
| Code | execute: Python, HScript, expressions, VEX check |
| Docs | docs: the Houdini documentation of your build, offline, from houdinimd-docs |
| Session | session: status; starts Houdini headless or with its window |
No Houdini open? The server starts a headless hython.
batch builds a whole network in one call, and it is all or nothing: a failed
step undoes the steps before it. A build that works comes back with the cooked
point and primitive counts, and the nodes with errors.
Warning:
executeruns any Python in Houdini. Save your work.
| Problem | Fix |
|---|---|
| No Houdini listens for the bridge | Start Houdini, or click Toggle MCP Server on the HoudiniMCP shelf. |
| No HoudiniMCP shelf | Restart Houdini. houdinimcp-install --list shows where the plugin went. |
| Houdini started from Git Bash has no plugin | Git Bash sets HOME. Set the user variable HOUDINI_USER_PREF_DIR to %USERPROFILE%\Documents\houdini__HVER__. |
capture says there is no viewport | The session is headless. Call session with action="start_gui". |
| You must have a fixed port | Set HOUDINIMCP_PORT for Houdini and for the bridge. Without it, the plugin takes a free port from the operating system and tells the bridge which one. |
Without a terminal, the installer asks nothing and takes the defaults.
houdinimcp-install --list # Houdini installs and clients found, as JSON
houdinimcp-install --yes --json # newest Houdini, every client found; JSON report
houdinimcp-install --houdini-version 22.0 --harness claude-code --yes
houdinimcp-install --dry-run --yes # change nothing
houdinimcp-install --uninstall # remove the plugin and every client entry
Flags: --houdini-version none skips the plugin, --prefs-dir PATH names the
prefs folder, --harness none|all|KEY (repeatable), --quiet-start stops the
first-launch dialogs. The bootstrap scripts pass every flag through.
Manual client setup: run houdinimcp-bridge with no arguments.
claude mcp add --transport stdio houdini -- houdinimcp-bridge for Claude Code.
From a clone: uv run python -m bridge.onboarding.install.
Layout: src/houdinimcp/ is the plugin, a TCP server inside Houdini on
localhost:9877. src/bridge/ is the MCP server and the installer. Messages
are JSON with a 4-byte length prefix. HOUDINIMCP_NO_HEADLESS=1 stops the
headless start. Read AGENTS.md before you change code.
Built on blender-mcp, capoomgit/houdini-mcp, eetumartola/houdini-mcp, Houdini21MCP and fxhoudinimcp. MIT licensed.
Not affiliated with SideFX. Houdini and SideFX are trademarks of SideFX Software Inc.