|
1 | 1 | [ |
2 | 2 | { |
3 | 3 | "name": "manage_asset", |
4 | | - "description": "Manage assets - list, import, create materials", |
| 4 | + "description": "Search, browse, import, and create simple material assets.\n\nWhen to use this tool:\n- You want to list assets in the project Content directory (use /Game; /Content is auto-mapped).\n- You want to import files from disk into the project (e.g., FBX, PNG, WAV, EXR).\n- You want to generate a very basic Material asset by name at a path.\n\nSupported actions:\n- list: Returns assets in a folder (recursive behavior is auto-enabled for /Game).\n- import: Imports a file into the project at a destination path (e.g., /Game/Folder).\n- create_material: Creates a simple Material asset at a path.\n\nTips:\n- Unreal uses /Game for project content; this server maps /Content → /Game automatically.\n- For large projects, listing /Game returns a sample subset for speed; refine to subfolders.\n\nExamples:\n- {\"action\":\"list\",\"directory\":\"/Game/ThirdPerson\"}\n- {\"action\":\"import\",\"sourcePath\":\"C:/Temp/Tree.fbx\",\"destinationPath\":\"/Game/Environment/Trees\"}\n- {\"action\":\"create_material\",\"name\":\"M_Mask\",\"path\":\"/Game/Materials\"}", |
5 | 5 | "arguments": [ |
6 | 6 | { |
7 | 7 | "name": "action", |
|
42 | 42 | }, |
43 | 43 | { |
44 | 44 | "name": "control_actor", |
45 | | - "description": "Control actors - spawn, delete, apply physics. Intelligently handles actor classes (StaticMeshActor, CameraActor) AND asset paths (/Engine/BasicShapes/Cube) or simple names (Cube, Sphere) with automatic StaticMeshActor spawning. AI-friendly with smart path resolution.", |
| 45 | + "description": "Spawn, delete, and apply physics to actors in the level.\n\nWhen to use this tool:\n- Place an actor/mesh, remove an actor, or nudge an actor with a physics force.\n\nSupported actions:\n- spawn\n- delete\n- apply_force\n\nSpawning:\n- classPath can be a class name (e.g., StaticMeshActor, CameraActor) OR an asset path (e.g., /Engine/BasicShapes/Cube, /Game/Meshes/SM_Rock).\n- Asset paths auto-spawn StaticMeshActor with the mesh assigned.\n\nDeleting:\n- Finds actors by label/name (case-insensitive) and deletes matches.\n\nApply force:\n- Applies a world-space force vector to an actor with physics enabled.\n\nTips:\n- classPath accepts classes or asset paths; simple names like Cube auto-resolve to engine assets.\n- location/rotation are optional; defaults are used if omitted.\n- For delete/apply_force, provide actorName.\n\nExamples:\n- {\"action\":\"spawn\",\"classPath\":\"/Engine/BasicShapes/Cube\",\"location\":{\"x\":0,\"y\":0,\"z\":100}}\n- {\"action\":\"delete\",\"actorName\":\"Cube_1\"}\n- {\"action\":\"apply_force\",\"actorName\":\"PhysicsBox\",\"force\":{\"x\":0,\"y\":0,\"z\":5000}}", |
46 | 46 | "arguments": [ |
47 | 47 | { |
48 | 48 | "name": "action", |
|
78 | 78 | }, |
79 | 79 | { |
80 | 80 | "name": "control_editor", |
81 | | - "description": "Control editor - PIE mode, camera, viewport", |
| 81 | + "description": "Play/Stop PIE, position the editor camera, and switch common view modes.\n\nWhen to use this tool:\n- Start/stop a PIE session, move the viewport camera, or change viewmode (Lit/Unlit/Wireframe/etc.).\n\nSupported actions:\n- play\n- stop\n- set_camera\n- set_view_mode\n\nNotes:\n- View modes are validated; unsafe modes are blocked.\n- Camera accepts location/rotation (optional); values normalized.\n\nExamples:\n- {\"action\":\"play\"}\n- {\"action\":\"set_camera\",\"location\":{\"x\":0,\"y\":-600,\"z\":250},\"rotation\":{\"pitch\":0,\"yaw\":0,\"roll\":0}}\n- {\"action\":\"set_view_mode\",\"viewMode\":\"Wireframe\"}\n- {\"action\":\"stop\"}", |
82 | 82 | "arguments": [ |
83 | 83 | { |
84 | 84 | "name": "action", |
|
104 | 104 | }, |
105 | 105 | { |
106 | 106 | "name": "manage_level", |
107 | | - "description": "Manage levels and lighting", |
| 107 | + "description": "Load/save/stream levels, create lights, and trigger lighting builds.\n\nWhen to use this tool:\n- Switch to a level, save the current level, stream sublevels, add a light, or start a lighting build.\n\nSupported actions:\n- load\n- save\n- stream\n- create_light\n- build_lighting\n\nTips:\n- Use /Game paths for levels (e.g., /Game/Maps/Level).\n- For streaming, set shouldBeLoaded and shouldBeVisible accordingly.\n- For lights, provide lightType and optional location/intensity.\n\nExamples:\n- {\"action\":\"load\",\"levelPath\":\"/Game/Maps/Lobby\"}\n- {\"action\":\"stream\",\"levelName\":\"Sublevel_A\",\"shouldBeLoaded\":true,\"shouldBeVisible\":true}\n- {\"action\":\"create_light\",\"lightType\":\"Directional\",\"name\":\"KeyLight\",\"intensity\":5.0}\n- {\"action\":\"build_lighting\",\"quality\":\"High\"}", |
108 | 108 | "arguments": [ |
109 | 109 | { |
110 | 110 | "name": "action", |
|
145 | 145 | }, |
146 | 146 | { |
147 | 147 | "name": "animation_physics", |
148 | | - "description": "Animation and physics control", |
| 148 | + "description": "Create animation blueprints, play montages, and set up simple ragdolls.\n\nWhen to use this tool:\n- Generate an Anim Blueprint for a skeleton, play a Montage/Animation on an actor, or enable ragdoll.\n\nSupported actions:\n- create_animation_bp\n- play_montage\n- setup_ragdoll\n\nTips:\n- Ensure the montage/animation is compatible with the target actor/skeleton.\n- setup_ragdoll requires a valid physicsAssetName on the skeleton.\n- Use savePath when creating new assets.\n\nExamples:\n- {\"action\":\"create_animation_bp\",\"name\":\"ABP_Hero\",\"skeletonPath\":\"/Game/Characters/Hero/SK_Hero_Skeleton\",\"savePath\":\"/Game/Characters/Hero\"}\n- {\"action\":\"play_montage\",\"actorName\":\"Hero\",\"montagePath\":\"/Game/Anim/MT_Attack\"}\n- {\"action\":\"setup_ragdoll\",\"skeletonPath\":\"/Game/Characters/Hero/SK_Hero_Skeleton\",\"physicsAssetName\":\"PHYS_Hero\"}", |
149 | 149 | "arguments": [ |
150 | 150 | { |
151 | 151 | "name": "action", |
|
176 | 176 | }, |
177 | 177 | { |
178 | 178 | "name": "create_effect", |
179 | | - "description": "Create visual effects and particles", |
| 179 | + "description": "Create particles/FX and lightweight debug shapes for rapid iteration.\n\nWhen to use this tool:\n- Spawn a Niagara system at a location, create a particle effect by type tag, or draw debug geometry for planning.\n\nSupported actions:\n- particle\n- niagara\n- debug_shape\n\nTips:\n- Set color as RGBA [r,g,b,a]; scale defaults to 1 if omitted.\n- Use debug shapes for quick layout planning and measurements.\n\nExamples:\n- {\"action\":\"niagara\",\"systemPath\":\"/Game/FX/NS_Explosion\",\"location\":{\"x\":0,\"y\":0,\"z\":200},\"scale\":1.0}\n- {\"action\":\"particle\",\"effectType\":\"Smoke\",\"name\":\"SMK1\",\"location\":{\"x\":100,\"y\":0,\"z\":50}}\n- {\"action\":\"debug_shape\",\"shape\":\"Sphere\",\"location\":{\"x\":0,\"y\":0,\"z\":0},\"size\":100,\"duration\":5}", |
180 | 180 | "arguments": [ |
181 | 181 | { |
182 | 182 | "name": "action", |
|
207 | 207 | }, |
208 | 208 | { |
209 | 209 | "name": "manage_blueprint", |
210 | | - "description": "Create and manage blueprints", |
| 210 | + "description": "Create new Blueprints and add components programmatically.\n\nWhen to use this tool:\n- Quickly scaffold a Blueprint asset or add a component to an existing Blueprint.\n\nSupported actions:\n- create\n- add_component\n\nTips:\n- blueprintType can be Actor, Pawn, Character, etc.\n- Component names should be unique within the Blueprint.\n\nExamples:\n- {\"action\":\"create\",\"name\":\"BP_Switch\",\"blueprintType\":\"Actor\",\"savePath\":\"/Game/Blueprints\"}\n- {\"action\":\"add_component\",\"name\":\"BP_Switch\",\"componentType\":\"PointLightComponent\",\"componentName\":\"KeyLight\"}", |
211 | 211 | "arguments": [ |
212 | 212 | { |
213 | 213 | "name": "action", |
|
238 | 238 | }, |
239 | 239 | { |
240 | 240 | "name": "build_environment", |
241 | | - "description": "Build environments - landscapes, foliage, terrain", |
| 241 | + "description": "Environment authoring helpers (landscape, foliage).\n\nWhen to use this tool:\n- Create a procedural terrain alternative, add/paint foliage, or attempt a landscape workflow.\n\nSupported actions:\n- create_landscape\n- sculpt\n- add_foliage\n- paint_foliage\n\nImportant:\n- Native Landscape creation via Python is limited and may return a helpful error suggesting Landscape Mode in the editor.\n- Foliage helpers create FoliageType assets and support simple placement.\n\nTips:\n- Adjust brushSize and strength to tune sculpting results.\n\nExamples:\n- {\"action\":\"create_landscape\",\"name\":\"Landscape_Basic\",\"sizeX\":1024,\"sizeY\":1024}\n- {\"action\":\"add_foliage\",\"name\":\"FT_Grass\",\"meshPath\":\"/Game/Foliage/SM_Grass\",\"density\":300}\n- {\"action\":\"paint_foliage\",\"foliageType\":\"/Game/Foliage/Types/FT_Grass\",\"position\":{\"x\":0,\"y\":0,\"z\":0},\"brushSize\":300}", |
242 | 242 | "arguments": [ |
243 | 243 | { |
244 | 244 | "name": "action", |
|
264 | 264 | }, |
265 | 265 | { |
266 | 266 | "name": "system_control", |
267 | | - "description": "System-wide control - profiling, quality, sound, UI", |
| 267 | + "description": "Performance toggles, quality settings, audio playback, simple UI helpers, screenshots, and engine lifecycle.\n\nWhen to use this tool:\n- Toggle profiling and FPS stats, adjust quality (sg.*), play a sound, create/show a basic widget, take a screenshot, or launch/quit the editor.\n\nSupported actions:\n- profile\n- show_fps\n- set_quality\n- play_sound\n- create_widget\n- show_widget\n- screenshot\n- engine_start\n- engine_quit\n\nTips:\n- Screenshot resolution format: 1920x1080.\n- engine_start can read UE project path from env; provide editorExe/projectPath if needed.\n\nExamples:\n- {\"action\":\"show_fps\",\"enabled\":true}\n- {\"action\":\"set_quality\",\"category\":\"Shadows\",\"level\":2}\n- {\"action\":\"play_sound\",\"soundPath\":\"/Game/Audio/SFX/Click\",\"volume\":0.5}\n- {\"action\":\"screenshot\",\"resolution\":\"1920x1080\"}", |
268 | 268 | "arguments": [ |
269 | 269 | { |
270 | 270 | "name": "action", |
|
295 | 295 | }, |
296 | 296 | { |
297 | 297 | "name": "console_command", |
298 | | - "description": "Execute Unreal Engine console commands", |
| 298 | + "description": "Execute an Unreal console command with built-in safety.\n\nWhen to use this tool:\n- Fire a specific command (e.g., stat fps, viewmode wireframe, r.ScreenPercentage 75).\n\nSafety:\n- Dangerous commands are blocked (quit/exit, GPU crash triggers, unsafe visualizebuffer modes, etc.).\n- Unknown commands return a warning instead of crashing.\n\nTips:\n- Prefer dedicated tools (system_control, control_editor) when available for more structured control.\n\nExamples:\n- {\"command\":\"stat fps\"}\n- {\"command\":\"viewmode wireframe\"}\n- {\"command\":\"r.ScreenPercentage 75\"}", |
299 | 299 | "arguments": [ |
300 | 300 | { |
301 | 301 | "name": "command", |
|
306 | 306 | }, |
307 | 307 | { |
308 | 308 | "name": "manage_rc", |
309 | | - "description": "Manage Remote Control presets and exposed properties", |
| 309 | + "description": "Create and manage Remote Control presets; expose actors/properties; set/get values.\n\nWhen to use this tool:\n- Automate Remote Control (RC) preset authoring and interaction.\n\nSupported actions:\n- create_preset\n- expose_actor\n- expose_property\n- list_fields\n- set_property\n- get_property\n\nTips:\n- value must be JSON-serializable.\n- Use objectPath/presetPath with full asset/object paths.\n\nExamples:\n- {\"action\":\"create_preset\",\"name\":\"LivePreset\",\"path\":\"/Game/RCPresets\"}\n- {\"action\":\"expose_actor\",\"presetPath\":\"/Game/RCPresets/LivePreset\",\"actorName\":\"CameraActor\"}\n- {\"action\":\"expose_property\",\"presetPath\":\"/Game/RCPresets/LivePreset\",\"objectPath\":\"/Script/Engine.Default__Engine\",\"propertyName\":\"GameUserSettings\"}\n- {\"action\":\"list_fields\",\"presetPath\":\"/Game/RCPresets/LivePreset\"}\n- {\"action\":\"set_property\",\"objectPath\":\"/Game/MyActor\",\"propertyName\":\"CustomFloat\",\"value\":0.5}", |
310 | 310 | "arguments": [ |
311 | 311 | { |
312 | 312 | "name": "action", |
|
337 | 337 | }, |
338 | 338 | { |
339 | 339 | "name": "manage_sequence", |
340 | | - "description": "Manage Sequencer/cinematics", |
| 340 | + "description": "Create/open Level Sequences, bind actors, add cameras, and control playback.\n\nWhen to use this tool:\n- Build quick cinematics: create/open a sequence, add a camera or actors, tweak properties, and play.\n\nSupported actions:\n- create\n- open\n- add_camera\n- add_actor\n- add_actors\n- remove_actors\n- get_bindings\n- add_spawnable_from_class\n- play\n- pause\n- stop\n- set_properties\n- get_properties\n- set_playback_speed\n\nTips:\n- Set spawnable=true to auto-create a camera actor.\n- Use frameRate/lengthInFrames to define timing; use playbackStart/End to trim.\n\nExamples:\n- {\"action\":\"create\",\"name\":\"Intro\",\"path\":\"/Game/Cinematics\"}\n- {\"action\":\"add_camera\",\"spawnable\":true}\n- {\"action\":\"add_actor\",\"actorName\":\"Hero\"}\n- {\"action\":\"play\",\"loopMode\":\"once\"}\n- {\"action\":\"set_properties\",\"path\":\"/Game/Cinematics/Intro\",\"frameRate\":24,\"lengthInFrames\":480}", |
341 | 341 | "arguments": [ |
342 | 342 | { |
343 | 343 | "name": "action", |
|
373 | 373 | }, |
374 | 374 | { |
375 | 375 | "name": "inspect", |
376 | | - "description": "Introspection - inspect objects and properties", |
| 376 | + "description": "Read object info and set properties with validation.\n\nWhen to use this tool:\n- Inspect an object by path (class default object or actor/component) and optionally modify properties.\n\nSupported actions:\n- inspect_object\n- set_property\n\nTips:\n- propertyName is case-sensitive; ensure it exists on the target object.\n- For class default objects (CDOs), use the /Script/...Default__Class path.\n\nExamples:\n- {\"action\":\"inspect_object\",\"objectPath\":\"/Script/Engine.Default__Engine\"}\n- {\"action\":\"set_property\",\"objectPath\":\"/Game/MyActor\",\"propertyName\":\"CustomBool\",\"value\":true}", |
377 | 377 | "arguments": [ |
378 | 378 | { |
379 | 379 | "name": "action", |
|
0 commit comments