Skip to content

Home

fxhoudinimcp

An MCP server for SideFX Houdini: it lets an AI assistant build networks, set up simulations, inspect USD stages and render, through Houdini's own Python API. It works with any MCP client: Claude, Codex, Copilot, Gemini, Cursor, Windsurf, VS Code, Cline and others.

215 tools, 8 resources, and 9 prompts serving 31 written workflow guides out of the box. Start with Installation.

Features

Category Tools Description
Graph Intelligence 6 Atomic validated network building, network verification, node doc cards, cook profiling, frame-range cooking with per-frame evidence, cook status
Documentation 3 Full-text search + page retrieval over Houdini's own shipped manual (version-exact)
Scene Management 10 Open, save, import/export, scene info, connection status, undo/redo
Sessions 3 Switch between open Houdini sessions, start a headless or GUI Houdini of the server's own, stop it
Node Operations 22 Create, delete, copy, connect, layout, flags, network boxes, sticky notes, object transforms
Parameters 14 Get/set values in bulk, expressions, keyframes, spare parameters
Geometry (SOPs) 16 Points, prims, attributes, attribute statistics, volume statistics and sampling, groups, sampling, nearest-point search
LOPs/USD 21 Stage inspection, prims, world transforms over frames, layers, composition, variants, lighting
DOPs 8 Simulation info, DOP objects, step/reset, memory usage
PDG/TOPs 12 Cook, work items, failed items and logs, schedulers, dependency graphs
COPs (Copernicus) 7 Image nodes, layers, VDB data
HDAs 13 Create, install, manage Digital Assets, their versions and sections
Animation 9 Keyframes, playbar control, frame range
Rendering 10 Viewport capture, contact sheets of a frame range without a viewport, render nodes, settings, render launch
VEX 5 Create/edit wrangles, validate VEX code
Code Execution 7 Python, HScript, expressions, env variables, file references, update mode
Viewport/UI 14 Pane management, viewer context, verified camera and renderer state, screenshots, error detection
Scene Context 8 Network overview, cook chain, selection, scene summary, error analysis
Workflows 8 One-call Pyro/RBD/FLIP/Vellum setup, SOP chains, render config
Materials 4 List, inspect, create materials and shader networks
CHOPs 4 Channel data, CHOP nodes, export channels to parameters
Cache 4 List, inspect, clear, write file caches
Takes 4 List, create, switch takes with parameter overrides
Shelf Tools 3 Find, read and run Houdini's own shelf tools (setups build_network cannot produce)

Architecture

flowchart LR
    subgraph Client[" 🤖 AI Client "]
        direction TB
        A1("Claude · Codex · Copilot · Gemini")
        A2("Cursor · Windsurf · VS Code · Cline")
        A3("any stdio MCP client")
    end

    subgraph MCP[" ⚡ FXHoudini MCP Server "]
        direction TB
        B1("🔧 215 tools")
        B2("📦 8 Resources")
        B3("💬 9 Prompts")
    end

    subgraph Houdini[" 🔶 SideFX Houdini "]
        direction TB
        C1("🌐 hwebserver")
        C2("📡 Dispatcher")
        C3("🎛️ hou.* Handlers")
        C1 --> C2 --> C3
    end

    Client -. "MCP Protocol · stdio" .-> MCP
    MCP -. "HTTP / JSON · port 8100" .-> Houdini

    classDef clientBox fill:#f0f4ff,stroke:#b8c9e8,stroke-width:1px,color:#2d3748,rx:12,ry:12
    classDef mcpBox fill:#eef6f0,stroke:#a8d5b8,stroke-width:1px,color:#2d3748,rx:12,ry:12
    classDef houdiniBox fill:#fff5f0,stroke:#e8c4a8,stroke-width:1px,color:#2d3748,rx:12,ry:12

    classDef clientNode fill:#dbe4f8,stroke:#96b0dc,stroke-width:1px,color:#2d3748,rx:8,ry:8
    classDef mcpNode fill:#d4edda,stroke:#82c896,stroke-width:1px,color:#2d3748,rx:8,ry:8
    classDef houdiniNode fill:#fde4d0,stroke:#e0a87c,stroke-width:1px,color:#2d3748,rx:8,ry:8

    class Client clientBox
    class MCP mcpBox
    class Houdini houdiniBox
    class A1,A2,A3 clientNode
    class B1,B2,B3 mcpNode
    class C1,C2,C3 houdiniNode

The plugin runs on Houdini's built-in hwebserver and executes every hou.* call on the main thread through hdefereval. The MCP server is a separate process your AI client starts; it relays tool calls to the plugin over loopback HTTP.