node_set_property
Set a property on a node in a Godot editor scene. Provide the node path, exact property name, and new value to modify live editor nodes.
Instructions
Set a property on a node.
Verify the property name first — call node_get_properties (or read
godot://node/{path}/properties) to confirm the exact name and type
before writing. Guessing common Godot names often fails with
PROPERTY_NOT_ON_CLASS because Godot's actual properties differ from
intuition (e.g. Camera3D uses fov/current, not field_of_view;
Sprite2D uses texture, not image; Node3D uses
position/rotation/scale, not transform.origin).
Coerces value to the property's type:
Vector2/Vector3: dict with x/y/z keys.
Color: dict {r,g,b,a} or hex string ("#ff0000").
NodePath: string ("../Other/Node").
Resource: res:// path string (loads + assigns); null/"" clears. For a fresh built-in resource, pass
{"__class__": "BoxMesh", ...}. Seeresource_manage(op="create")for more control.StringName: plain string. Array/Dictionary: JSON list/object.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Scene path relative to the edited scene root (e.g. "/Main/Camera3D"), NOT runtime "/root/..." paths. | |
| value | Yes | New value. Pass null (or "" for resources) to clear. | |
| property | Yes | Property name (e.g. "fov", "position", "mesh"). Must match Godot's exact identifier — introspect with ``node_get_properties`` if unsure rather than guessing. | |
| scene_file | No | Optional editor-scene guard. | |
| session_id | No | Optional Godot session to target. Empty = active session. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||