HoudiniMCP - Houdini Model Context Protocol Integration
HoudiniMCP connects Houdini to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Houdini. This integration enables prompt-assisted 3D modeling, scene creation, simulation setup, and rendering.
Features
- Two-way communication: Connect Claude AI to Houdini through a socket-based server
- Node manipulation: Create, modify, and delete nodes in Houdini networks
- Geometry creation: Generate various primitive types with customizable parameters
- Material control: Apply and modify materials
- Scene inspection: Get detailed information about the current Houdini scene
- Simulation setup: Create and run physics simulations (fluids, particles, etc.)
- Rendering control: Configure and execute rendering operations
- Code execution: Run arbitrary Python code in Houdini from Claude
Components
The system consists of two main components:
- Houdini Addon (
addon.py
): A Houdini Python extension that creates a socket server within Houdini to receive and execute commands - MCP Server (
src/houdini_mcp/server.py
): A Python server that implements the Model Context Protocol and connects to the Houdini addon
Installation
Prerequisites
- Houdini 19.0 or newer
- Python 3.10 or newer
- uv package manager:
If you're on Mac, please install uv as
brew install uv
On Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
and then
set Path=C:\Users\username\.local\bin;%Path%
Otherwise installation instructions are on their website: Install uv
⚠️ Do not proceed before installing UV
Claude for Desktop Integration
Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include the following:
{
"mcpServers": {
"houdini": {
"command": "uvx",
"args": [
"houdini-mcp"
]
}
}
}
Cursor integration
Run houdini-mcp without installing it permanently through uvx. Go to Cursor Settings > MCP and paste this as a command.
uvx houdini-mcp
⚠️ Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both
Installing the Houdini Addon
- Download the
addon.py
file from this repo - Copy it to your Houdini Python scripts directory:
- Windows:
C:\Users\username\Documents\houdini19.x\scripts\
- Mac:
/Users/username/Library/Preferences/houdini/19.x/scripts/
- Linux:
~/houdini19.x/scripts/
- Windows:
- Start Houdini and run the following Python code in a Python panel:
import addon
server = addon.init_houdinimcp()
Usage
Starting the Connection
- In Houdini, run the Python code to initialize the server:
import addon
server = addon.init_houdinimcp()
- Verify that you see a message: "HoudiniMCP server started on localhost:9877"
- Make sure the MCP server is running in your terminal
Using with Claude
Once the config file has been set on Claude, and the addon is running on Houdini, you will see a hammer icon with tools for the Houdini MCP.
Tools
get_scene_info
- Gets scene informationget_node_info
- Gets detailed information for a specific node in the scenecreate_node
- Create a new node with detailed parameterscreate_geometry
- Create basic primitive geometry with customizable parametersmodify_node
- Modify an existing node's propertiesdelete_node
- Remove a node from the sceneset_parameter
- Set a single parameter of a nodeconnect_nodes
- Connect two nodes togetherset_material
- Apply or create materials for objectscreate_camera
- Create a camera with positioning optionscreate_light
- Create a light with customizable type and parameterscreate_simulation
- Set up a simulation network for physicsrun_simulation
- Execute a simulation for a specified frame rangerender_scene
- Render the current scene with configurable optionsexport_fbx
- Export a node to FBX formatexecute_houdini_code
- Run any Python code in Houdini
Example Commands
Here are some examples of what you can ask Claude to do:
- "Create a procedural landscape with mountains and a river"
- "Set up a fluid simulation with a box emitter"
- "Create a sphere and apply a red material to it"
- "Modify the camera to have a wide-angle lens"
- "Get information about the current scene network"
- "Export the selected object as an FBX file"
- "Create a particle system with gravity and collision"
Troubleshooting
- Connection issues: Make sure the Houdini addon server is running, and the MCP server is configured on Claude.
- Timeout errors: Try simplifying your requests or breaking them into smaller steps.
- Have you tried turning it off and on again?: If you're still having connection errors, try restarting both Claude and the Houdini server.
Technical Details
Communication Protocol
The system uses a simple JSON-based protocol over TCP sockets:
- Commands are sent as JSON objects with a
type
and optionalparams
- Responses are JSON objects with a
status
andresult
ormessage
Limitations & Security Considerations
- The
execute_houdini_code
tool allows running arbitrary Python code in Houdini, which can be powerful but potentially dangerous. Use with caution in production environments. ALWAYS save your work before using it. - Complex operations might need to be broken down into smaller steps.
- Houdini's node-based system is powerful but complex - some operations may require multiple steps to achieve the desired result.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Disclaimer
This is a third-party integration and not made by SideFX.