unreal-engine-mcp-server 0.4.0 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.production +1 -1
- package/.github/copilot-instructions.md +45 -0
- package/.github/workflows/publish-mcp.yml +3 -2
- package/README.md +21 -5
- package/dist/index.js +124 -31
- package/dist/prompts/index.d.ts +10 -3
- package/dist/prompts/index.js +186 -7
- package/dist/resources/actors.d.ts +19 -1
- package/dist/resources/actors.js +55 -64
- package/dist/resources/assets.js +46 -62
- package/dist/resources/levels.d.ts +21 -3
- package/dist/resources/levels.js +29 -54
- package/dist/tools/actors.d.ts +3 -14
- package/dist/tools/actors.js +246 -302
- package/dist/tools/animation.d.ts +57 -102
- package/dist/tools/animation.js +429 -450
- package/dist/tools/assets.d.ts +13 -2
- package/dist/tools/assets.js +52 -44
- package/dist/tools/audio.d.ts +22 -13
- package/dist/tools/audio.js +467 -121
- package/dist/tools/blueprint.d.ts +32 -13
- package/dist/tools/blueprint.js +699 -448
- package/dist/tools/build_environment_advanced.d.ts +0 -1
- package/dist/tools/build_environment_advanced.js +190 -45
- package/dist/tools/consolidated-tool-definitions.js +78 -252
- package/dist/tools/consolidated-tool-handlers.js +506 -133
- package/dist/tools/debug.d.ts +72 -10
- package/dist/tools/debug.js +167 -31
- package/dist/tools/editor.d.ts +9 -2
- package/dist/tools/editor.js +30 -44
- package/dist/tools/foliage.d.ts +34 -15
- package/dist/tools/foliage.js +97 -107
- package/dist/tools/introspection.js +19 -21
- package/dist/tools/landscape.d.ts +1 -2
- package/dist/tools/landscape.js +311 -168
- package/dist/tools/level.d.ts +3 -28
- package/dist/tools/level.js +642 -192
- package/dist/tools/lighting.d.ts +14 -3
- package/dist/tools/lighting.js +236 -123
- package/dist/tools/materials.d.ts +25 -7
- package/dist/tools/materials.js +102 -79
- package/dist/tools/niagara.d.ts +10 -12
- package/dist/tools/niagara.js +74 -94
- package/dist/tools/performance.d.ts +12 -4
- package/dist/tools/performance.js +38 -79
- package/dist/tools/physics.d.ts +34 -10
- package/dist/tools/physics.js +364 -292
- package/dist/tools/rc.js +97 -23
- package/dist/tools/sequence.d.ts +1 -0
- package/dist/tools/sequence.js +125 -22
- package/dist/tools/ui.d.ts +31 -4
- package/dist/tools/ui.js +83 -66
- package/dist/tools/visual.d.ts +11 -0
- package/dist/tools/visual.js +245 -30
- package/dist/types/tool-types.d.ts +0 -6
- package/dist/types/tool-types.js +1 -8
- package/dist/unreal-bridge.d.ts +32 -2
- package/dist/unreal-bridge.js +621 -127
- package/dist/utils/elicitation.d.ts +57 -0
- package/dist/utils/elicitation.js +104 -0
- package/dist/utils/error-handler.d.ts +0 -33
- package/dist/utils/error-handler.js +4 -111
- package/dist/utils/http.d.ts +2 -22
- package/dist/utils/http.js +12 -75
- package/dist/utils/normalize.d.ts +4 -4
- package/dist/utils/normalize.js +15 -7
- package/dist/utils/python-output.d.ts +18 -0
- package/dist/utils/python-output.js +290 -0
- package/dist/utils/python.d.ts +2 -0
- package/dist/utils/python.js +4 -0
- package/dist/utils/response-validator.js +28 -2
- package/dist/utils/result-helpers.d.ts +27 -0
- package/dist/utils/result-helpers.js +147 -0
- package/dist/utils/safe-json.d.ts +0 -2
- package/dist/utils/safe-json.js +0 -43
- package/dist/utils/validation.d.ts +16 -0
- package/dist/utils/validation.js +70 -7
- package/mcp-config-example.json +2 -2
- package/package.json +10 -9
- package/server.json +37 -14
- package/src/index.ts +130 -33
- package/src/prompts/index.ts +211 -13
- package/src/resources/actors.ts +59 -44
- package/src/resources/assets.ts +48 -51
- package/src/resources/levels.ts +35 -45
- package/src/tools/actors.ts +269 -313
- package/src/tools/animation.ts +556 -539
- package/src/tools/assets.ts +53 -43
- package/src/tools/audio.ts +507 -113
- package/src/tools/blueprint.ts +778 -462
- package/src/tools/build_environment_advanced.ts +266 -64
- package/src/tools/consolidated-tool-definitions.ts +90 -264
- package/src/tools/consolidated-tool-handlers.ts +630 -121
- package/src/tools/debug.ts +176 -33
- package/src/tools/editor.ts +35 -37
- package/src/tools/foliage.ts +110 -104
- package/src/tools/introspection.ts +24 -22
- package/src/tools/landscape.ts +334 -181
- package/src/tools/level.ts +683 -182
- package/src/tools/lighting.ts +244 -123
- package/src/tools/materials.ts +114 -83
- package/src/tools/niagara.ts +87 -81
- package/src/tools/performance.ts +49 -88
- package/src/tools/physics.ts +393 -299
- package/src/tools/rc.ts +102 -24
- package/src/tools/sequence.ts +136 -28
- package/src/tools/ui.ts +101 -70
- package/src/tools/visual.ts +250 -29
- package/src/types/tool-types.ts +0 -9
- package/src/unreal-bridge.ts +658 -140
- package/src/utils/elicitation.ts +129 -0
- package/src/utils/error-handler.ts +4 -159
- package/src/utils/http.ts +16 -115
- package/src/utils/normalize.ts +20 -10
- package/src/utils/python-output.ts +351 -0
- package/src/utils/python.ts +3 -0
- package/src/utils/response-validator.ts +25 -2
- package/src/utils/result-helpers.ts +193 -0
- package/src/utils/safe-json.ts +0 -50
- package/src/utils/validation.ts +94 -7
- package/tests/run-unreal-tool-tests.mjs +720 -0
- package/tsconfig.json +2 -2
- package/dist/python-utils.d.ts +0 -29
- package/dist/python-utils.js +0 -54
- package/dist/types/index.d.ts +0 -323
- package/dist/types/index.js +0 -28
- package/dist/utils/cache-manager.d.ts +0 -64
- package/dist/utils/cache-manager.js +0 -176
- package/dist/utils/errors.d.ts +0 -133
- package/dist/utils/errors.js +0 -256
- package/src/python/editor_compat.py +0 -181
- package/src/python-utils.ts +0 -57
- package/src/types/index.ts +0 -414
- package/src/utils/cache-manager.ts +0 -213
- package/src/utils/errors.ts +0 -312
|
@@ -4,26 +4,14 @@ export const consolidatedToolDefinitions = [
|
|
|
4
4
|
// 1. ASSET MANAGER - Combines asset operations
|
|
5
5
|
{
|
|
6
6
|
name: 'manage_asset',
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
Supported actions:
|
|
15
|
-
- list: Returns assets in a folder (recursive behavior is auto-enabled for /Game).
|
|
16
|
-
- import: Imports a file into the project at a destination path (e.g., /Game/Folder).
|
|
17
|
-
- create_material: Creates a simple Material asset at a path.
|
|
18
|
-
|
|
19
|
-
Tips:
|
|
20
|
-
- Unreal uses /Game for project content; this server maps /Content → /Game automatically.
|
|
21
|
-
- For large projects, listing /Game returns a sample subset for speed; refine to subfolders.
|
|
22
|
-
|
|
23
|
-
Examples:
|
|
24
|
-
- {"action":"list","directory":"/Game/ThirdPerson"}
|
|
25
|
-
- {"action":"import","sourcePath":"C:/Temp/Tree.fbx","destinationPath":"/Game/Environment/Trees"}
|
|
26
|
-
- {"action":"create_material","name":"M_Mask","path":"/Game/Materials"}`,
|
|
7
|
+
description: `Asset library utility for browsing, importing, and bootstrapping simple materials.
|
|
8
|
+
|
|
9
|
+
Use it when you need to:
|
|
10
|
+
- explore project content (\u002fContent automatically maps to \u002fGame).
|
|
11
|
+
- import FBX/PNG/WAV/EXR files into the project.
|
|
12
|
+
- spin up a minimal Material asset at a specific path.
|
|
13
|
+
|
|
14
|
+
Supported actions: list, import, create_material.`,
|
|
27
15
|
inputSchema: {
|
|
28
16
|
type: 'object',
|
|
29
17
|
properties: {
|
|
@@ -71,35 +59,14 @@ Examples:
|
|
|
71
59
|
// 2. ACTOR CONTROL - Combines actor operations
|
|
72
60
|
{
|
|
73
61
|
name: 'control_actor',
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
When to use this tool:
|
|
77
|
-
- Place an actor/mesh, remove an actor, or nudge an actor with a physics force.
|
|
78
|
-
|
|
79
|
-
Supported actions:
|
|
80
|
-
- spawn
|
|
81
|
-
- delete
|
|
82
|
-
- apply_force
|
|
62
|
+
description: `Viewport actor toolkit for spawning, removing, or nudging actors with physics forces.
|
|
83
63
|
|
|
84
|
-
|
|
85
|
-
-
|
|
86
|
-
-
|
|
64
|
+
Use it when you need to:
|
|
65
|
+
- drop a class or mesh into the level (classPath accepts names or asset paths).
|
|
66
|
+
- delete actors by label, case-insensitively.
|
|
67
|
+
- push a physics-enabled actor with a world-space force vector.
|
|
87
68
|
|
|
88
|
-
|
|
89
|
-
- Finds actors by label/name (case-insensitive) and deletes matches.
|
|
90
|
-
|
|
91
|
-
Apply force:
|
|
92
|
-
- Applies a world-space force vector to an actor with physics enabled.
|
|
93
|
-
|
|
94
|
-
Tips:
|
|
95
|
-
- classPath accepts classes or asset paths; simple names like Cube auto-resolve to engine assets.
|
|
96
|
-
- location/rotation are optional; defaults are used if omitted.
|
|
97
|
-
- For delete/apply_force, provide actorName.
|
|
98
|
-
|
|
99
|
-
Examples:
|
|
100
|
-
- {"action":"spawn","classPath":"/Engine/BasicShapes/Cube","location":{"x":0,"y":0,"z":100}}
|
|
101
|
-
- {"action":"delete","actorName":"Cube_1"}
|
|
102
|
-
- {"action":"apply_force","actorName":"PhysicsBox","force":{"x":0,"y":0,"z":5000}}`,
|
|
69
|
+
Supported actions: spawn, delete, apply_force.`,
|
|
103
70
|
inputSchema: {
|
|
104
71
|
type: 'object',
|
|
105
72
|
properties: {
|
|
@@ -159,26 +126,14 @@ Examples:
|
|
|
159
126
|
// 3. EDITOR CONTROL - Combines editor operations
|
|
160
127
|
{
|
|
161
128
|
name: 'control_editor',
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
- set_camera
|
|
171
|
-
- set_view_mode
|
|
172
|
-
|
|
173
|
-
Notes:
|
|
174
|
-
- View modes are validated; unsafe modes are blocked.
|
|
175
|
-
- Camera accepts location/rotation (optional); values normalized.
|
|
176
|
-
|
|
177
|
-
Examples:
|
|
178
|
-
- {"action":"play"}
|
|
179
|
-
- {"action":"set_camera","location":{"x":0,"y":-600,"z":250},"rotation":{"pitch":0,"yaw":0,"roll":0}}
|
|
180
|
-
- {"action":"set_view_mode","viewMode":"Wireframe"}
|
|
181
|
-
- {"action":"stop"}`,
|
|
129
|
+
description: `Editor session controls for PIE playback, camera placement, and view modes.
|
|
130
|
+
|
|
131
|
+
Use it when you need to:
|
|
132
|
+
- start or stop Play In Editor.
|
|
133
|
+
- reposition the active viewport camera.
|
|
134
|
+
- switch between Lit/Unlit/Wireframe and other safe view modes.
|
|
135
|
+
|
|
136
|
+
Supported actions: play, stop, set_camera, set_view_mode (with validation).`,
|
|
182
137
|
inputSchema: {
|
|
183
138
|
type: 'object',
|
|
184
139
|
properties: {
|
|
@@ -236,28 +191,15 @@ Examples:
|
|
|
236
191
|
// 4. LEVEL MANAGER - Combines level and lighting operations
|
|
237
192
|
{
|
|
238
193
|
name: 'manage_level',
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
- create_light
|
|
249
|
-
- build_lighting
|
|
250
|
-
|
|
251
|
-
Tips:
|
|
252
|
-
- Use /Game paths for levels (e.g., /Game/Maps/Level).
|
|
253
|
-
- For streaming, set shouldBeLoaded and shouldBeVisible accordingly.
|
|
254
|
-
- For lights, provide lightType and optional location/intensity.
|
|
255
|
-
|
|
256
|
-
Examples:
|
|
257
|
-
- {"action":"load","levelPath":"/Game/Maps/Lobby"}
|
|
258
|
-
- {"action":"stream","levelName":"Sublevel_A","shouldBeLoaded":true,"shouldBeVisible":true}
|
|
259
|
-
- {"action":"create_light","lightType":"Directional","name":"KeyLight","intensity":5.0}
|
|
260
|
-
- {"action":"build_lighting","quality":"High"}`,
|
|
194
|
+
description: `Level management helper for loading/saving, streaming, light creation, and lighting builds.
|
|
195
|
+
|
|
196
|
+
Use it when you need to:
|
|
197
|
+
- open or save a level by path.
|
|
198
|
+
- toggle streaming sublevels on/off.
|
|
199
|
+
- spawn a light actor of a given type.
|
|
200
|
+
- kick off a lighting build at a chosen quality.
|
|
201
|
+
|
|
202
|
+
Supported actions: load, save, stream, create_light, build_lighting.`,
|
|
261
203
|
inputSchema: {
|
|
262
204
|
type: 'object',
|
|
263
205
|
properties: {
|
|
@@ -313,25 +255,14 @@ Examples:
|
|
|
313
255
|
// 5. ANIMATION SYSTEM - Combines animation and physics setup
|
|
314
256
|
{
|
|
315
257
|
name: 'animation_physics',
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
When to use this tool:
|
|
319
|
-
- Generate an Anim Blueprint for a skeleton, play a Montage/Animation on an actor, or enable ragdoll.
|
|
258
|
+
description: `Animation and physics rigging helper covering Anim BPs, montage playback, and ragdoll setup.
|
|
320
259
|
|
|
321
|
-
|
|
322
|
-
-
|
|
323
|
-
-
|
|
324
|
-
-
|
|
260
|
+
Use it when you need to:
|
|
261
|
+
- generate an Animation Blueprint for a skeleton.
|
|
262
|
+
- play a montage/animation on an actor at a chosen rate.
|
|
263
|
+
- enable a quick ragdoll using an existing physics asset.
|
|
325
264
|
|
|
326
|
-
|
|
327
|
-
- Ensure the montage/animation is compatible with the target actor/skeleton.
|
|
328
|
-
- setup_ragdoll requires a valid physicsAssetName on the skeleton.
|
|
329
|
-
- Use savePath when creating new assets.
|
|
330
|
-
|
|
331
|
-
Examples:
|
|
332
|
-
- {"action":"create_animation_bp","name":"ABP_Hero","skeletonPath":"/Game/Characters/Hero/SK_Hero_Skeleton","savePath":"/Game/Characters/Hero"}
|
|
333
|
-
- {"action":"play_montage","actorName":"Hero","montagePath":"/Game/Anim/MT_Attack"}
|
|
334
|
-
- {"action":"setup_ragdoll","skeletonPath":"/Game/Characters/Hero/SK_Hero_Skeleton","physicsAssetName":"PHYS_Hero"}`,
|
|
265
|
+
Supported actions: create_animation_bp, play_montage, setup_ragdoll.`,
|
|
335
266
|
inputSchema: {
|
|
336
267
|
type: 'object',
|
|
337
268
|
properties: {
|
|
@@ -371,24 +302,14 @@ Examples:
|
|
|
371
302
|
// 6. EFFECTS SYSTEM - Combines particles and visual effects
|
|
372
303
|
{
|
|
373
304
|
name: 'create_effect',
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
When to use this tool:
|
|
377
|
-
- Spawn a Niagara system at a location, create a particle effect by type tag, or draw debug geometry for planning.
|
|
305
|
+
description: `FX sandbox for spawning Niagara systems, particle presets, or disposable debug shapes.
|
|
378
306
|
|
|
379
|
-
|
|
380
|
-
-
|
|
381
|
-
-
|
|
382
|
-
-
|
|
307
|
+
Use it when you need to:
|
|
308
|
+
- fire a Niagara system at a specific location/scale.
|
|
309
|
+
- trigger a simple particle effect by tag/name.
|
|
310
|
+
- draw temporary debug primitives (box/sphere/line) for planning layouts.
|
|
383
311
|
|
|
384
|
-
|
|
385
|
-
- Set color as RGBA [r,g,b,a]; scale defaults to 1 if omitted.
|
|
386
|
-
- Use debug shapes for quick layout planning and measurements.
|
|
387
|
-
|
|
388
|
-
Examples:
|
|
389
|
-
- {"action":"niagara","systemPath":"/Game/FX/NS_Explosion","location":{"x":0,"y":0,"z":200},"scale":1.0}
|
|
390
|
-
- {"action":"particle","effectType":"Smoke","name":"SMK1","location":{"x":100,"y":0,"z":50}}
|
|
391
|
-
- {"action":"debug_shape","shape":"Sphere","location":{"x":0,"y":0,"z":0},"size":100,"duration":5}`,
|
|
312
|
+
Supported actions: niagara, particle, debug_shape.`,
|
|
392
313
|
inputSchema: {
|
|
393
314
|
type: 'object',
|
|
394
315
|
properties: {
|
|
@@ -449,22 +370,13 @@ Examples:
|
|
|
449
370
|
// 7. BLUEPRINT MANAGER - Blueprint operations
|
|
450
371
|
{
|
|
451
372
|
name: 'manage_blueprint',
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
When to use this tool:
|
|
455
|
-
- Quickly scaffold a Blueprint asset or add a component to an existing Blueprint.
|
|
373
|
+
description: `Blueprint scaffolding helper for creating assets and attaching components.
|
|
456
374
|
|
|
457
|
-
|
|
458
|
-
- create
|
|
459
|
-
-
|
|
375
|
+
Use it when you need to:
|
|
376
|
+
- create a new Blueprint of a specific base type (Actor, Pawn, Character, ...).
|
|
377
|
+
- add a component to an existing Blueprint asset with a unique name.
|
|
460
378
|
|
|
461
|
-
|
|
462
|
-
- blueprintType can be Actor, Pawn, Character, etc.
|
|
463
|
-
- Component names should be unique within the Blueprint.
|
|
464
|
-
|
|
465
|
-
Examples:
|
|
466
|
-
- {"action":"create","name":"BP_Switch","blueprintType":"Actor","savePath":"/Game/Blueprints"}
|
|
467
|
-
- {"action":"add_component","name":"BP_Switch","componentType":"PointLightComponent","componentName":"KeyLight"}`,
|
|
379
|
+
Supported actions: create, add_component.`,
|
|
468
380
|
inputSchema: {
|
|
469
381
|
type: 'object',
|
|
470
382
|
properties: {
|
|
@@ -499,28 +411,15 @@ Examples:
|
|
|
499
411
|
// 8. ENVIRONMENT BUILDER - Landscape and foliage
|
|
500
412
|
{
|
|
501
413
|
name: 'build_environment',
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
When to use this tool:
|
|
505
|
-
- Create a procedural terrain alternative, add/paint foliage, or attempt a landscape workflow.
|
|
506
|
-
|
|
507
|
-
Supported actions:
|
|
508
|
-
- create_landscape
|
|
509
|
-
- sculpt
|
|
510
|
-
- add_foliage
|
|
511
|
-
- paint_foliage
|
|
512
|
-
|
|
513
|
-
Important:
|
|
514
|
-
- Native Landscape creation via Python is limited and may return a helpful error suggesting Landscape Mode in the editor.
|
|
515
|
-
- Foliage helpers create FoliageType assets and support simple placement.
|
|
414
|
+
description: `Environment authoring toolkit for landscapes and foliage, from sculpting to procedural scatters.
|
|
516
415
|
|
|
517
|
-
|
|
518
|
-
-
|
|
416
|
+
Use it when you need to:
|
|
417
|
+
- create or sculpt a landscape actor.
|
|
418
|
+
- add foliage via types or paint strokes.
|
|
419
|
+
- drive procedural terrain/foliage generation with bounds, seeds, and density settings.
|
|
420
|
+
- spawn explicit foliage instances at transforms.
|
|
519
421
|
|
|
520
|
-
|
|
521
|
-
- {"action":"create_landscape","name":"Landscape_Basic","sizeX":1024,"sizeY":1024}
|
|
522
|
-
- {"action":"add_foliage","name":"FT_Grass","meshPath":"/Game/Foliage/SM_Grass","density":300}
|
|
523
|
-
- {"action":"paint_foliage","foliageType":"/Game/Foliage/Types/FT_Grass","position":{"x":0,"y":0,"z":0},"brushSize":300}`,
|
|
422
|
+
Supported actions: create_landscape, sculpt, add_foliage, paint_foliage, create_procedural_terrain, create_procedural_foliage, add_foliage_instances, create_landscape_grass_type.`,
|
|
524
423
|
inputSchema: {
|
|
525
424
|
type: 'object',
|
|
526
425
|
properties: {
|
|
@@ -614,31 +513,16 @@ Examples:
|
|
|
614
513
|
// 9. PERFORMANCE & AUDIO - System settings
|
|
615
514
|
{
|
|
616
515
|
name: 'system_control',
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
-
|
|
624
|
-
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
- create_widget
|
|
628
|
-
- show_widget
|
|
629
|
-
- screenshot
|
|
630
|
-
- engine_start
|
|
631
|
-
- engine_quit
|
|
632
|
-
|
|
633
|
-
Tips:
|
|
634
|
-
- Screenshot resolution format: 1920x1080.
|
|
635
|
-
- engine_start can read UE project path from env; provide editorExe/projectPath if needed.
|
|
636
|
-
|
|
637
|
-
Examples:
|
|
638
|
-
- {"action":"show_fps","enabled":true}
|
|
639
|
-
- {"action":"set_quality","category":"Shadows","level":2}
|
|
640
|
-
- {"action":"play_sound","soundPath":"/Game/Audio/SFX/Click","volume":0.5}
|
|
641
|
-
- {"action":"screenshot","resolution":"1920x1080"}`,
|
|
516
|
+
description: `Runtime/system controls for profiling, quality tiers, audio/UI triggers, screenshots, and editor lifecycle.
|
|
517
|
+
|
|
518
|
+
Use it when you need to:
|
|
519
|
+
- toggle stat overlays or targeted profilers.
|
|
520
|
+
- adjust scalability categories (sg.*) or enable FPS display.
|
|
521
|
+
- play a one-shot sound and optionally position it.
|
|
522
|
+
- create/show lightweight widgets.
|
|
523
|
+
- capture a screenshot or start/quit the editor process.
|
|
524
|
+
|
|
525
|
+
Supported actions: profile, show_fps, set_quality, play_sound, create_widget, show_widget, screenshot, engine_start, engine_quit.`,
|
|
642
526
|
inputSchema: {
|
|
643
527
|
type: 'object',
|
|
644
528
|
properties: {
|
|
@@ -708,22 +592,9 @@ Examples:
|
|
|
708
592
|
// 10. CONSOLE COMMAND - Universal tool
|
|
709
593
|
{
|
|
710
594
|
name: 'console_command',
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
When to use this tool:
|
|
714
|
-
- Fire a specific command (e.g., stat fps, viewmode wireframe, r.ScreenPercentage 75).
|
|
715
|
-
|
|
716
|
-
Safety:
|
|
717
|
-
- Dangerous commands are blocked (quit/exit, GPU crash triggers, unsafe visualizebuffer modes, etc.).
|
|
718
|
-
- Unknown commands will return a warning instead of crashing.
|
|
595
|
+
description: `Guarded console command executor for one-off \`stat\`, \`r.*\`, or viewmode commands.
|
|
719
596
|
|
|
720
|
-
|
|
721
|
-
- Prefer dedicated tools (system_control, control_editor) when available for structured control.
|
|
722
|
-
|
|
723
|
-
Examples:
|
|
724
|
-
- {"command":"stat fps"}
|
|
725
|
-
- {"command":"viewmode wireframe"}
|
|
726
|
-
- {"command":"r.ScreenPercentage 75"}`,
|
|
597
|
+
Use it when higher-level tools don't cover the console tweak you need. Hazardous commands (quit/exit, crash triggers, unsafe viewmodes) are blocked, and unknown commands respond with a warning instead of executing blindly.`,
|
|
727
598
|
inputSchema: {
|
|
728
599
|
type: 'object',
|
|
729
600
|
properties: {
|
|
@@ -747,29 +618,15 @@ Examples:
|
|
|
747
618
|
// 11. REMOTE CONTROL PRESETS
|
|
748
619
|
{
|
|
749
620
|
name: 'manage_rc',
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
- list_fields
|
|
760
|
-
- set_property
|
|
761
|
-
- get_property
|
|
762
|
-
|
|
763
|
-
Tips:
|
|
764
|
-
- value must be JSON-serializable.
|
|
765
|
-
- Use objectPath/presetPath with full asset/object paths.
|
|
766
|
-
|
|
767
|
-
Examples:
|
|
768
|
-
- {"action":"create_preset","name":"LivePreset","path":"/Game/RCPresets"}
|
|
769
|
-
- {"action":"expose_actor","presetPath":"/Game/RCPresets/LivePreset","actorName":"CameraActor"}
|
|
770
|
-
- {"action":"expose_property","presetPath":"/Game/RCPresets/LivePreset","objectPath":"/Script/Engine.Default__Engine","propertyName":"GameUserSettings"}
|
|
771
|
-
- {"action":"list_fields","presetPath":"/Game/RCPresets/LivePreset"}
|
|
772
|
-
- {"action":"set_property","objectPath":"/Game/MyActor","propertyName":"CustomFloat","value":0.5}`,
|
|
621
|
+
description: `Remote Control preset helper for building, exposing, and mutating RC assets.
|
|
622
|
+
|
|
623
|
+
Use it when you need to:
|
|
624
|
+
- create a preset asset on disk.
|
|
625
|
+
- expose actors or object properties to the preset.
|
|
626
|
+
- list the exposed fields for inspection.
|
|
627
|
+
- get or set property values through RC with JSON-serializable payloads.
|
|
628
|
+
|
|
629
|
+
Supported actions: create_preset, expose_actor, expose_property, list_fields, set_property, get_property.`,
|
|
773
630
|
inputSchema: {
|
|
774
631
|
type: 'object',
|
|
775
632
|
properties: {
|
|
@@ -804,37 +661,15 @@ Examples:
|
|
|
804
661
|
// 12. SEQUENCER / CINEMATICS
|
|
805
662
|
{
|
|
806
663
|
name: 'manage_sequence',
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
- add_actor
|
|
817
|
-
- add_actors
|
|
818
|
-
- remove_actors
|
|
819
|
-
- get_bindings
|
|
820
|
-
- add_spawnable_from_class
|
|
821
|
-
- play
|
|
822
|
-
- pause
|
|
823
|
-
- stop
|
|
824
|
-
- set_properties
|
|
825
|
-
- get_properties
|
|
826
|
-
- set_playback_speed
|
|
827
|
-
|
|
828
|
-
Tips:
|
|
829
|
-
- Set spawnable=true to auto-create a camera actor.
|
|
830
|
-
- Use frameRate/lengthInFrames to define timing; use playbackStart/End to trim.
|
|
831
|
-
|
|
832
|
-
Examples:
|
|
833
|
-
- {"action":"create","name":"Intro","path":"/Game/Cinematics"}
|
|
834
|
-
- {"action":"add_camera","spawnable":true}
|
|
835
|
-
- {"action":"add_actor","actorName":"Hero"}
|
|
836
|
-
- {"action":"play","loopMode":"once"}
|
|
837
|
-
- {"action":"set_properties","path":"/Game/Cinematics/Intro","frameRate":24,"lengthInFrames":480}`,
|
|
664
|
+
description: `Sequencer automation helper for Level Sequences: asset management, bindings, and playback control.
|
|
665
|
+
|
|
666
|
+
Use it when you need to:
|
|
667
|
+
- create or open a sequence asset.
|
|
668
|
+
- add actors, spawnable cameras, or other bindings.
|
|
669
|
+
- adjust sequence metadata (frame rate, bounds, playback window).
|
|
670
|
+
- drive playback (play/pause/stop), adjust speed, or fetch binding info.
|
|
671
|
+
|
|
672
|
+
Supported actions: create, open, add_camera, add_actor, add_actors, remove_actors, get_bindings, add_spawnable_from_class, play, pause, stop, set_properties, get_properties, set_playback_speed.`,
|
|
838
673
|
inputSchema: {
|
|
839
674
|
type: 'object',
|
|
840
675
|
properties: {
|
|
@@ -887,22 +722,13 @@ Examples:
|
|
|
887
722
|
// 13. INTROSPECTION
|
|
888
723
|
{
|
|
889
724
|
name: 'inspect',
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
When to use this tool:
|
|
893
|
-
- Inspect an object by path (class default object or actor/component) and optionally modify properties.
|
|
894
|
-
|
|
895
|
-
Supported actions:
|
|
896
|
-
- inspect_object
|
|
897
|
-
- set_property
|
|
725
|
+
description: `Introspection utility for reading or mutating properties on actors, components, or CDOs.
|
|
898
726
|
|
|
899
|
-
|
|
900
|
-
-
|
|
901
|
-
-
|
|
727
|
+
Use it when you need to:
|
|
728
|
+
- inspect an object by path and retrieve its serialized properties.
|
|
729
|
+
- set a property value with built-in validation.
|
|
902
730
|
|
|
903
|
-
|
|
904
|
-
- {"action":"inspect_object","objectPath":"/Script/Engine.Default__Engine"}
|
|
905
|
-
- {"action":"set_property","objectPath":"/Game/MyActor","propertyName":"CustomBool","value":true}`,
|
|
731
|
+
Supported actions: inspect_object, set_property.`,
|
|
906
732
|
inputSchema: {
|
|
907
733
|
type: 'object',
|
|
908
734
|
properties: {
|