snapshot_object
Capture an object's properties and components into a named in-memory snapshot for later before/after, editor/PIE, or server/client diffs; optionally persist it to disk to survive editor restarts.
Instructions
Capture the properties and components of one object into a named in-memory snapshot (read-only) for a later diff_object_snapshots: before vs after an action, editor vs PIE, or "server" vs "client" via world. persist=true also writes Saved/MCPAudits/snapshots/.json to survive a restart. compare_objects diffs two live objects instead.
Returns: { handle, object_path, resolved_path, class, world (the coarse "pie"/"editor" family label the snapshot itself carries), world_selector (what was asked for), property_count, component_count, component_template_count, persisted, snapshot_path?, persist_error?, snapshot?, world_name, world_package, world_type, net_mode, pie_instance }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| world | No | Optional world selector: absent/'editor' (default) | 'server' (the PIE world with authority) | 'client' | 'pie:N' | 'pie'/'game'/'runtime' (ambiguous: PlayWorld, else the first PIE/Game context) to resolve a live runtime instance. | |
| handle | No | Optional handle to store under (overwrites); auto-generated when omitted (alias: snapshot_id). | |
| persist | No | Also write the snapshot to Saved/MCPAudits/snapshots/<handle>.json so it SURVIVES an editor restart. The in-memory store is a process-lifetime map: without this, a baseline captured before a mandatory restart is gone exactly when you need to compare against it. Default false. | |
| object_path | Yes | Object path or dotted "Actor[.Component[.Subobject]]" (name or editor label for the first segment). | |
| snapshot_id | No | Alias of handle: the name to store the snapshot under, used only when handle is absent or empty; an existing snapshot with that name is overwritten | |
| return_snapshot | No | Return the full snapshot inline in the response (so the caller can hold it and pass it back as diff_object_snapshots' snapshot_a/snapshot_b). Default false. | |
| include_component_templates | No | For a Blueprint / BPGC / Blueprint CDO target, also capture the SCS + ICH component TEMPLATES (a Blueprint CDO owns ONLY its native components, so without this a CDO snapshot cannot verify a single SCS/ICH override). Default true. |