parameters
parameters
¶
MCP tools for Houdini parameter operations.
Exposes 10 tools covering parameter get/set, expressions, channel references, locking, schema inspection, and spare parameter creation.
Functions:
| Name | Description |
|---|---|
create_spare_parameter |
Add a spare parameter to a node. |
create_spare_parameters |
Batch-create multiple spare parameters in one call, optionally in a folder tab. |
get_expression |
Get the expression on a parameter. |
get_parameter |
Get the value and metadata of a parameter. |
get_parameter_schema |
Get the template schema for parameter(s) on a node. |
get_parameters |
Read many parameter values at once, matched by name or label substring. |
link_parameters |
Create a channel reference from one parameter to another. |
lock_parameter |
Lock or unlock a parameter. |
revert_parameter |
Revert a parameter to its default value. |
set_expression |
Set an expression on a parameter. |
set_parameter |
Set a parameter value. |
set_parameters |
Batch-set multiple parameters on a node. |
Functions:¶
create_spare_parameter
async
¶
create_spare_parameter(
ctx: Context,
node_path: str,
parm_name: str,
parm_type: str,
label: str,
default_value: Value | None = None,
min_val: float | None = None,
max_val: float | None = None,
) -> dict
Add a spare parameter to a node.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
|
str
|
Node path. |
required |
|
str
|
Internal parameter name. |
required |
|
str
|
"float", "int", "string", "toggle", or "menu". |
required |
|
str
|
UI label. |
required |
|
Value | None
|
Default value. |
None
|
|
float | None
|
Minimum value (float/int only). |
None
|
|
float | None
|
Maximum value (float/int only). |
None
|
create_spare_parameters
async
¶
create_spare_parameters(
ctx: Context,
node_path: str,
parameters: list[dict[str, Any]],
folder_name: str | None = None,
folder_type: str = "Tabs",
) -> dict
Batch-create multiple spare parameters in one call, optionally in a folder tab.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
|
str
|
Node path. |
required |
|
list[dict[str, Any]]
|
List of parameter specs. Each dict has keys: parm_name (str), parm_type (str: "float"/"int"/"string"/"toggle"/"menu"), label (str), default_value (optional), min_val (optional), max_val (optional). |
required |
|
str | None
|
If provided, wraps all parameters in a named folder tab. |
None
|
|
str
|
Folder style: "Tabs", "Collapsible", or "Simple". |
'Tabs'
|
get_expression
async
¶
get_parameter
async
¶
get_parameter_schema
async
¶
get_parameter_schema(
ctx: Context,
node_path: str,
parm_name: str | None = None,
filter: str | None = None,
) -> dict
Get the template schema for parameter(s) on a node.
Most nodes have dozens of parameters; many have 100+. Always use
parm_name or filter unless you genuinely need the full list.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
|
str
|
Node path. |
required |
|
str | None
|
Exact parameter name for a single-parameter lookup. |
None
|
|
str | None
|
Substring to match against parameter name or label (case-insensitive). Use instead of dumping all params. |
None
|
get_parameters
async
¶
get_parameters(
ctx: Context,
node_path: str,
patterns: list[str] | None = None,
include_defaults: bool = False,
) -> dict
Read many parameter values at once, matched by name or label substring.
The batch counterpart of set_parameters. Several unrelated groups of settings ("flame", "wind", "buoy") come back in one call instead of one call each, and unlike get_node_card these are the live values on this node rather than the defaults for its type.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
|
str
|
Node to read. |
required |
|
list[str] | None
|
Substrings matched against parameter name and label. Omit for everything, up to the cap. |
None
|
|
bool
|
Also report whether each value is still the default. |
False
|
link_parameters
async
¶
link_parameters(
ctx: Context,
source_path: str,
source_parm: str,
dest_path: str,
dest_parm: str,
) -> dict