unreal-engine-mcp-server 0.5.5 → 0.5.6

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.
Files changed (245) hide show
  1. package/CHANGELOG.md +350 -0
  2. package/dist/automation/bridge.d.ts.map +1 -1
  3. package/dist/automation/bridge.js +5 -4
  4. package/dist/automation/bridge.js.map +1 -1
  5. package/dist/automation/handshake.js.map +1 -1
  6. package/dist/automation/types.d.ts +7 -0
  7. package/dist/automation/types.d.ts.map +1 -1
  8. package/dist/cli.js +2 -1
  9. package/dist/cli.js.map +1 -1
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js.map +1 -1
  12. package/dist/graphql/resolvers.d.ts +174 -69
  13. package/dist/graphql/resolvers.d.ts.map +1 -1
  14. package/dist/graphql/resolvers.js +53 -38
  15. package/dist/graphql/resolvers.js.map +1 -1
  16. package/dist/graphql/schema.js.map +1 -1
  17. package/dist/graphql/server.js.map +1 -1
  18. package/dist/handlers/resource-handlers.js.map +1 -1
  19. package/dist/index.d.ts +1 -1
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +10 -6
  22. package/dist/index.js.map +1 -1
  23. package/dist/resources/actors.d.ts +7 -4
  24. package/dist/resources/actors.d.ts.map +1 -1
  25. package/dist/resources/actors.js +15 -12
  26. package/dist/resources/actors.js.map +1 -1
  27. package/dist/resources/assets.d.ts +43 -2
  28. package/dist/resources/assets.d.ts.map +1 -1
  29. package/dist/resources/assets.js +16 -9
  30. package/dist/resources/assets.js.map +1 -1
  31. package/dist/resources/levels.d.ts.map +1 -1
  32. package/dist/resources/levels.js +7 -5
  33. package/dist/resources/levels.js.map +1 -1
  34. package/dist/schemas/index.d.ts +4 -0
  35. package/dist/schemas/index.d.ts.map +1 -0
  36. package/dist/schemas/index.js +4 -0
  37. package/dist/schemas/index.js.map +1 -0
  38. package/dist/schemas/parser.d.ts +20 -0
  39. package/dist/schemas/parser.d.ts.map +1 -0
  40. package/dist/schemas/parser.js +61 -0
  41. package/dist/schemas/parser.js.map +1 -0
  42. package/dist/schemas/primitives.d.ts +221 -0
  43. package/dist/schemas/primitives.d.ts.map +1 -0
  44. package/dist/schemas/primitives.js +115 -0
  45. package/dist/schemas/primitives.js.map +1 -0
  46. package/dist/schemas/responses.d.ts +362 -0
  47. package/dist/schemas/responses.d.ts.map +1 -0
  48. package/dist/schemas/responses.js +252 -0
  49. package/dist/schemas/responses.js.map +1 -0
  50. package/dist/server/tool-registry.d.ts.map +1 -1
  51. package/dist/server/tool-registry.js +22 -17
  52. package/dist/server/tool-registry.js.map +1 -1
  53. package/dist/services/health-monitor.d.ts +1 -1
  54. package/dist/services/health-monitor.d.ts.map +1 -1
  55. package/dist/services/health-monitor.js +4 -3
  56. package/dist/services/health-monitor.js.map +1 -1
  57. package/dist/services/metrics-server.js.map +1 -1
  58. package/dist/tools/actors.d.ts +27 -27
  59. package/dist/tools/actors.d.ts.map +1 -1
  60. package/dist/tools/actors.js +11 -9
  61. package/dist/tools/actors.js.map +1 -1
  62. package/dist/tools/animation.d.ts +15 -23
  63. package/dist/tools/animation.d.ts.map +1 -1
  64. package/dist/tools/animation.js +15 -11
  65. package/dist/tools/animation.js.map +1 -1
  66. package/dist/tools/assets.d.ts.map +1 -1
  67. package/dist/tools/assets.js +18 -12
  68. package/dist/tools/assets.js.map +1 -1
  69. package/dist/tools/audio.d.ts +10 -10
  70. package/dist/tools/audio.d.ts.map +1 -1
  71. package/dist/tools/base-tool.js.map +1 -1
  72. package/dist/tools/behavior-tree.d.ts +24 -24
  73. package/dist/tools/behavior-tree.d.ts.map +1 -1
  74. package/dist/tools/behavior-tree.js.map +1 -1
  75. package/dist/tools/blueprint.d.ts +14 -3
  76. package/dist/tools/blueprint.d.ts.map +1 -1
  77. package/dist/tools/blueprint.js +1 -1
  78. package/dist/tools/blueprint.js.map +1 -1
  79. package/dist/tools/consolidated-tool-definitions.d.ts +32 -32
  80. package/dist/tools/consolidated-tool-handlers.d.ts +1 -1
  81. package/dist/tools/consolidated-tool-handlers.d.ts.map +1 -1
  82. package/dist/tools/consolidated-tool-handlers.js +26 -21
  83. package/dist/tools/consolidated-tool-handlers.js.map +1 -1
  84. package/dist/tools/debug.d.ts +25 -7
  85. package/dist/tools/debug.d.ts.map +1 -1
  86. package/dist/tools/debug.js.map +1 -1
  87. package/dist/tools/dynamic-handler-registry.d.ts +1 -1
  88. package/dist/tools/dynamic-handler-registry.d.ts.map +1 -1
  89. package/dist/tools/editor.d.ts.map +1 -1
  90. package/dist/tools/editor.js +7 -5
  91. package/dist/tools/editor.js.map +1 -1
  92. package/dist/tools/engine.d.ts +1 -1
  93. package/dist/tools/engine.d.ts.map +1 -1
  94. package/dist/tools/engine.js +4 -2
  95. package/dist/tools/engine.js.map +1 -1
  96. package/dist/tools/environment.d.ts.map +1 -1
  97. package/dist/tools/environment.js +2 -1
  98. package/dist/tools/environment.js.map +1 -1
  99. package/dist/tools/foliage.js +8 -8
  100. package/dist/tools/foliage.js.map +1 -1
  101. package/dist/tools/handlers/actor-handlers.d.ts +2 -1
  102. package/dist/tools/handlers/actor-handlers.d.ts.map +1 -1
  103. package/dist/tools/handlers/actor-handlers.js +51 -29
  104. package/dist/tools/handlers/actor-handlers.js.map +1 -1
  105. package/dist/tools/handlers/animation-handlers.d.ts +2 -1
  106. package/dist/tools/handlers/animation-handlers.d.ts.map +1 -1
  107. package/dist/tools/handlers/animation-handlers.js +74 -67
  108. package/dist/tools/handlers/animation-handlers.js.map +1 -1
  109. package/dist/tools/handlers/argument-helper.d.ts +24 -4
  110. package/dist/tools/handlers/argument-helper.d.ts.map +1 -1
  111. package/dist/tools/handlers/argument-helper.js +139 -4
  112. package/dist/tools/handlers/argument-helper.js.map +1 -1
  113. package/dist/tools/handlers/asset-handlers.d.ts +2 -1
  114. package/dist/tools/handlers/asset-handlers.d.ts.map +1 -1
  115. package/dist/tools/handlers/asset-handlers.js +151 -94
  116. package/dist/tools/handlers/asset-handlers.js.map +1 -1
  117. package/dist/tools/handlers/audio-handlers.d.ts +2 -1
  118. package/dist/tools/handlers/audio-handlers.d.ts.map +1 -1
  119. package/dist/tools/handlers/audio-handlers.js +82 -80
  120. package/dist/tools/handlers/audio-handlers.js.map +1 -1
  121. package/dist/tools/handlers/blueprint-handlers.d.ts +3 -5
  122. package/dist/tools/handlers/blueprint-handlers.d.ts.map +1 -1
  123. package/dist/tools/handlers/blueprint-handlers.js +149 -142
  124. package/dist/tools/handlers/blueprint-handlers.js.map +1 -1
  125. package/dist/tools/handlers/common-handlers.d.ts +2 -3
  126. package/dist/tools/handlers/common-handlers.d.ts.map +1 -1
  127. package/dist/tools/handlers/common-handlers.js.map +1 -1
  128. package/dist/tools/handlers/effect-handlers.d.ts +2 -1
  129. package/dist/tools/handlers/effect-handlers.d.ts.map +1 -1
  130. package/dist/tools/handlers/effect-handlers.js +70 -68
  131. package/dist/tools/handlers/effect-handlers.js.map +1 -1
  132. package/dist/tools/handlers/environment-handlers.d.ts +2 -1
  133. package/dist/tools/handlers/environment-handlers.d.ts.map +1 -1
  134. package/dist/tools/handlers/environment-handlers.js +86 -74
  135. package/dist/tools/handlers/environment-handlers.js.map +1 -1
  136. package/dist/tools/handlers/graph-handlers.d.ts +1 -1
  137. package/dist/tools/handlers/graph-handlers.d.ts.map +1 -1
  138. package/dist/tools/handlers/graph-handlers.js +2 -1
  139. package/dist/tools/handlers/graph-handlers.js.map +1 -1
  140. package/dist/tools/handlers/input-handlers.d.ts +2 -5
  141. package/dist/tools/handlers/input-handlers.d.ts.map +1 -1
  142. package/dist/tools/handlers/input-handlers.js +5 -4
  143. package/dist/tools/handlers/input-handlers.js.map +1 -1
  144. package/dist/tools/handlers/inspect-handlers.d.ts +2 -1
  145. package/dist/tools/handlers/inspect-handlers.d.ts.map +1 -1
  146. package/dist/tools/handlers/inspect-handlers.js +61 -37
  147. package/dist/tools/handlers/inspect-handlers.js.map +1 -1
  148. package/dist/tools/handlers/level-handlers.d.ts +2 -2
  149. package/dist/tools/handlers/level-handlers.d.ts.map +1 -1
  150. package/dist/tools/handlers/level-handlers.js +43 -39
  151. package/dist/tools/handlers/level-handlers.js.map +1 -1
  152. package/dist/tools/handlers/lighting-handlers.d.ts +12 -1
  153. package/dist/tools/handlers/lighting-handlers.d.ts.map +1 -1
  154. package/dist/tools/handlers/lighting-handlers.js +68 -47
  155. package/dist/tools/handlers/lighting-handlers.js.map +1 -1
  156. package/dist/tools/handlers/performance-handlers.d.ts +2 -1
  157. package/dist/tools/handlers/performance-handlers.d.ts.map +1 -1
  158. package/dist/tools/handlers/performance-handlers.js +43 -41
  159. package/dist/tools/handlers/performance-handlers.js.map +1 -1
  160. package/dist/tools/handlers/system-handlers.d.ts +3 -2
  161. package/dist/tools/handlers/system-handlers.d.ts.map +1 -1
  162. package/dist/tools/handlers/system-handlers.js +91 -53
  163. package/dist/tools/handlers/system-handlers.js.map +1 -1
  164. package/dist/tools/introspection.d.ts +14 -14
  165. package/dist/tools/introspection.d.ts.map +1 -1
  166. package/dist/tools/introspection.js +54 -45
  167. package/dist/tools/introspection.js.map +1 -1
  168. package/dist/tools/landscape.js +12 -12
  169. package/dist/tools/landscape.js.map +1 -1
  170. package/dist/tools/level.d.ts.map +1 -1
  171. package/dist/tools/level.js +3 -2
  172. package/dist/tools/level.js.map +1 -1
  173. package/dist/tools/lighting.d.ts +32 -59
  174. package/dist/tools/lighting.d.ts.map +1 -1
  175. package/dist/tools/lighting.js +53 -18
  176. package/dist/tools/lighting.js.map +1 -1
  177. package/dist/tools/logs.d.ts.map +1 -1
  178. package/dist/tools/logs.js +2 -1
  179. package/dist/tools/logs.js.map +1 -1
  180. package/dist/tools/materials.d.ts +42 -14
  181. package/dist/tools/materials.d.ts.map +1 -1
  182. package/dist/tools/materials.js +12 -8
  183. package/dist/tools/materials.js.map +1 -1
  184. package/dist/tools/niagara.d.ts +63 -39
  185. package/dist/tools/niagara.d.ts.map +1 -1
  186. package/dist/tools/niagara.js +36 -28
  187. package/dist/tools/niagara.js.map +1 -1
  188. package/dist/tools/performance.d.ts +12 -11
  189. package/dist/tools/performance.d.ts.map +1 -1
  190. package/dist/tools/performance.js +3 -2
  191. package/dist/tools/performance.js.map +1 -1
  192. package/dist/tools/physics.d.ts +37 -20
  193. package/dist/tools/physics.d.ts.map +1 -1
  194. package/dist/tools/physics.js +28 -23
  195. package/dist/tools/physics.js.map +1 -1
  196. package/dist/tools/sequence.d.ts +1 -1
  197. package/dist/tools/sequence.d.ts.map +1 -1
  198. package/dist/tools/sequence.js +5 -3
  199. package/dist/tools/sequence.js.map +1 -1
  200. package/dist/tools/ui.d.ts +11 -11
  201. package/dist/tools/ui.d.ts.map +1 -1
  202. package/dist/tools/ui.js +4 -2
  203. package/dist/tools/ui.js.map +1 -1
  204. package/dist/types/handler-types.d.ts +112 -3
  205. package/dist/types/handler-types.d.ts.map +1 -1
  206. package/dist/types/tool-interfaces.d.ts +39 -21
  207. package/dist/types/tool-interfaces.d.ts.map +1 -1
  208. package/dist/types/tool-types.d.ts +8 -8
  209. package/dist/types/tool-types.d.ts.map +1 -1
  210. package/dist/unreal-bridge.d.ts +7 -6
  211. package/dist/unreal-bridge.d.ts.map +1 -1
  212. package/dist/unreal-bridge.js +8 -3
  213. package/dist/unreal-bridge.js.map +1 -1
  214. package/dist/utils/elicitation.d.ts +2 -5
  215. package/dist/utils/elicitation.d.ts.map +1 -1
  216. package/dist/utils/elicitation.js +3 -2
  217. package/dist/utils/elicitation.js.map +1 -1
  218. package/dist/utils/ini-reader.d.ts +1 -1
  219. package/dist/utils/ini-reader.d.ts.map +1 -1
  220. package/dist/utils/logger.d.ts +4 -4
  221. package/dist/utils/logger.d.ts.map +1 -1
  222. package/dist/utils/logger.js.map +1 -1
  223. package/dist/utils/normalize.d.ts +2 -2
  224. package/dist/utils/normalize.d.ts.map +1 -1
  225. package/dist/utils/normalize.js +4 -3
  226. package/dist/utils/normalize.js.map +1 -1
  227. package/dist/utils/response-factory.d.ts +2 -2
  228. package/dist/utils/response-factory.d.ts.map +1 -1
  229. package/dist/utils/response-factory.js.map +1 -1
  230. package/dist/utils/response-validator.d.ts +4 -4
  231. package/dist/utils/response-validator.d.ts.map +1 -1
  232. package/dist/utils/response-validator.js +31 -23
  233. package/dist/utils/response-validator.js.map +1 -1
  234. package/dist/utils/unreal-command-queue.d.ts +2 -2
  235. package/dist/utils/unreal-command-queue.d.ts.map +1 -1
  236. package/dist/utils/unreal-command-queue.js +4 -3
  237. package/dist/utils/unreal-command-queue.js.map +1 -1
  238. package/dist/utils/validation.d.ts +1 -1
  239. package/dist/utils/validation.d.ts.map +1 -1
  240. package/dist/wasm/index.d.ts +2 -2
  241. package/dist/wasm/index.d.ts.map +1 -1
  242. package/dist/wasm/index.js +11 -7
  243. package/dist/wasm/index.js.map +1 -1
  244. package/package.json +1 -1
  245. package/server.json +2 -2
@@ -1,6 +1,6 @@
1
1
  import { cleanObject } from '../../utils/safe-json.js';
2
2
  import { executeAutomationRequest } from './common-handlers.js';
3
- import { normalizeArgs } from './argument-helper.js';
3
+ import { normalizeArgs, extractString, extractOptionalString, extractOptionalNumber, extractOptionalBoolean, extractOptionalArray } from './argument-helper.js';
4
4
  import { ResponseFactory } from '../../utils/response-factory.js';
5
5
  export async function handleAssetTools(action, args, tools) {
6
6
  try {
@@ -12,26 +12,29 @@ export async function handleAssetTools(action, args, tools) {
12
12
  { key: 'recursive', default: false },
13
13
  { key: 'depth', default: undefined }
14
14
  ]);
15
- const recursive = params.recursive === true || (params.depth !== undefined && params.depth > 0);
15
+ const path = extractOptionalString(params, 'path') ?? '/Game';
16
+ const limit = extractOptionalNumber(params, 'limit') ?? 50;
17
+ const recursive = extractOptionalBoolean(params, 'recursive') ?? false;
18
+ const depth = extractOptionalNumber(params, 'depth');
19
+ const effectiveRecursive = recursive === true || (depth !== undefined && depth > 0);
16
20
  const res = await executeAutomationRequest(tools, 'list', {
17
- path: params.path,
18
- recursive,
19
- depth: params.depth
21
+ path,
22
+ recursive: effectiveRecursive,
23
+ depth
20
24
  });
21
- const response = res;
22
- const assets = (Array.isArray(response.assets) ? response.assets :
23
- (Array.isArray(response.result) ? response.result : (response.result?.assets || [])));
24
- const folders = Array.isArray(response.folders) ? response.folders : (response.result?.folders || []);
25
+ const assets = (Array.isArray(res.assets) ? res.assets :
26
+ (Array.isArray(res.result) ? res.result : (res.result?.assets || [])));
27
+ const folders = Array.isArray(res.folders) ? res.folders : (res.result?.folders || []);
25
28
  const totalCount = assets.length;
26
- const limitedAssets = assets.slice(0, params.limit);
27
- const remaining = Math.max(0, totalCount - params.limit);
29
+ const limitedAssets = assets.slice(0, limit);
30
+ const remaining = Math.max(0, totalCount - limit);
28
31
  let message = `Found ${totalCount} assets`;
29
32
  if (folders.length > 0) {
30
33
  message += ` and ${folders.length} folders`;
31
34
  }
32
- message += `: ${limitedAssets.map((a) => a.path || a.package || a.name).join(', ')}`;
33
- if (folders.length > 0 && limitedAssets.length < params.limit) {
34
- const remainingLimit = params.limit - limitedAssets.length;
35
+ message += `: ${limitedAssets.map((a) => a.path || a.package || a.name || 'unknown').join(', ')}`;
36
+ if (folders.length > 0 && limitedAssets.length < limit) {
37
+ const remainingLimit = limit - limitedAssets.length;
35
38
  if (remainingLimit > 0) {
36
39
  const limitedFolders = folders.slice(0, remainingLimit);
37
40
  if (limitedAssets.length > 0)
@@ -55,7 +58,7 @@ export async function handleAssetTools(action, args, tools) {
55
58
  const params = normalizeArgs(args, [
56
59
  { key: 'path', aliases: ['directoryPath'], required: true }
57
60
  ]);
58
- const folderPath = String(params.path).trim();
61
+ const folderPath = extractString(params, 'path').trim();
59
62
  if (!folderPath.startsWith('/')) {
60
63
  return ResponseFactory.error('VALIDATION_ERROR', `Invalid folder path: '${folderPath}'. Path must start with '/'`);
61
64
  }
@@ -69,11 +72,15 @@ export async function handleAssetTools(action, args, tools) {
69
72
  { key: 'overwrite', default: false },
70
73
  { key: 'save', default: true }
71
74
  ]);
75
+ const sourcePath = extractString(params, 'sourcePath');
76
+ const destinationPath = extractString(params, 'destinationPath');
77
+ const overwrite = extractOptionalBoolean(params, 'overwrite') ?? false;
78
+ const save = extractOptionalBoolean(params, 'save') ?? true;
72
79
  const res = await tools.assetTools.importAsset({
73
- sourcePath: params.sourcePath,
74
- destinationPath: params.destinationPath,
75
- overwrite: params.overwrite,
76
- save: params.save
80
+ sourcePath,
81
+ destinationPath,
82
+ overwrite,
83
+ save
77
84
  });
78
85
  return ResponseFactory.success(res, 'Asset imported successfully');
79
86
  }
@@ -83,16 +90,18 @@ export async function handleAssetTools(action, args, tools) {
83
90
  { key: 'destinationPath' },
84
91
  { key: 'newName' }
85
92
  ]);
86
- let destinationPath = params.destinationPath;
87
- if (params.newName) {
93
+ const sourcePath = extractString(params, 'sourcePath');
94
+ let destinationPath = extractOptionalString(params, 'destinationPath');
95
+ const newName = extractOptionalString(params, 'newName');
96
+ if (newName) {
88
97
  if (!destinationPath) {
89
- const lastSlash = params.sourcePath.lastIndexOf('/');
90
- const parentDir = lastSlash > 0 ? params.sourcePath.substring(0, lastSlash) : '/Game';
91
- destinationPath = `${parentDir}/${params.newName}`;
98
+ const lastSlash = sourcePath.lastIndexOf('/');
99
+ const parentDir = lastSlash > 0 ? sourcePath.substring(0, lastSlash) : '/Game';
100
+ destinationPath = `${parentDir}/${newName}`;
92
101
  }
93
- else if (!destinationPath.endsWith(params.newName)) {
102
+ else if (!destinationPath.endsWith(newName)) {
94
103
  if (destinationPath.endsWith('/')) {
95
- destinationPath = `${destinationPath}${params.newName}`;
104
+ destinationPath = `${destinationPath}${newName}`;
96
105
  }
97
106
  }
98
107
  }
@@ -100,7 +109,7 @@ export async function handleAssetTools(action, args, tools) {
100
109
  throw new Error('destinationPath or newName is required for duplicate action');
101
110
  }
102
111
  const res = await tools.assetTools.duplicateAsset({
103
- sourcePath: params.sourcePath,
112
+ sourcePath,
104
113
  destinationPath
105
114
  });
106
115
  return ResponseFactory.success(res, 'Asset duplicated successfully');
@@ -111,16 +120,18 @@ export async function handleAssetTools(action, args, tools) {
111
120
  { key: 'destinationPath' },
112
121
  { key: 'newName' }
113
122
  ]);
114
- let destinationPath = params.destinationPath;
115
- if (!destinationPath && params.newName) {
116
- const lastSlash = params.sourcePath.lastIndexOf('/');
117
- const parentDir = lastSlash > 0 ? params.sourcePath.substring(0, lastSlash) : '/Game';
118
- destinationPath = `${parentDir}/${params.newName}`;
123
+ const sourcePath = extractString(params, 'sourcePath');
124
+ let destinationPath = extractOptionalString(params, 'destinationPath');
125
+ const newName = extractOptionalString(params, 'newName');
126
+ if (!destinationPath && newName) {
127
+ const lastSlash = sourcePath.lastIndexOf('/');
128
+ const parentDir = lastSlash > 0 ? sourcePath.substring(0, lastSlash) : '/Game';
129
+ destinationPath = `${parentDir}/${newName}`;
119
130
  }
120
131
  if (!destinationPath)
121
132
  throw new Error('Missing destinationPath or newName');
122
133
  const res = await tools.assetTools.renameAsset({
123
- sourcePath: params.sourcePath,
134
+ sourcePath,
124
135
  destinationPath
125
136
  });
126
137
  if (res && res.success === false) {
@@ -130,7 +141,7 @@ export async function handleAssetTools(action, args, tools) {
130
141
  success: false,
131
142
  error: 'ASSET_ALREADY_EXISTS',
132
143
  message: res.message || 'Asset already exists at destination',
133
- sourcePath: params.sourcePath,
144
+ sourcePath,
134
145
  destinationPath
135
146
  });
136
147
  }
@@ -142,14 +153,15 @@ export async function handleAssetTools(action, args, tools) {
142
153
  { key: 'sourcePath', aliases: ['assetPath'], required: true },
143
154
  { key: 'destinationPath' }
144
155
  ]);
145
- let destinationPath = params.destinationPath;
146
- const assetName = params.sourcePath.split('/').pop();
156
+ const sourcePath = extractString(params, 'sourcePath');
157
+ let destinationPath = extractOptionalString(params, 'destinationPath');
158
+ const assetName = sourcePath.split('/').pop();
147
159
  if (assetName && destinationPath && !destinationPath.endsWith(assetName)) {
148
160
  destinationPath = `${destinationPath.replace(/\/$/, '')}/${assetName}`;
149
161
  }
150
162
  const res = await tools.assetTools.moveAsset({
151
- sourcePath: params.sourcePath,
152
- destinationPath
163
+ sourcePath,
164
+ destinationPath: destinationPath ?? ''
153
165
  });
154
166
  return ResponseFactory.success(res, 'Asset moved successfully');
155
167
  }
@@ -157,14 +169,12 @@ export async function handleAssetTools(action, args, tools) {
157
169
  case 'delete_asset':
158
170
  case 'delete': {
159
171
  let paths = [];
160
- if (Array.isArray(args.paths)) {
161
- paths = args.paths;
162
- }
163
- else if (Array.isArray(args.assetPaths)) {
164
- paths = args.assetPaths;
172
+ const argsTyped = args;
173
+ if (Array.isArray(argsTyped.assetPaths)) {
174
+ paths = argsTyped.assetPaths;
165
175
  }
166
176
  else {
167
- const single = args.assetPath || args.path;
177
+ const single = argsTyped.assetPath || argsTyped.path;
168
178
  if (typeof single === 'string' && single.trim()) {
169
179
  paths = [single.trim()];
170
180
  }
@@ -192,9 +202,11 @@ export async function handleAssetTools(action, args, tools) {
192
202
  { key: 'assetPath', required: true },
193
203
  { key: 'lodCount', required: true }
194
204
  ]);
205
+ const assetPath = extractString(params, 'assetPath');
206
+ const lodCount = typeof params.lodCount === 'number' ? params.lodCount : Number(params.lodCount);
195
207
  const res = await tools.assetTools.generateLODs({
196
- assetPath: params.assetPath,
197
- lodCount: params.lodCount
208
+ assetPath,
209
+ lodCount
198
210
  });
199
211
  return ResponseFactory.success(res, 'LODs generated successfully');
200
212
  }
@@ -204,10 +216,13 @@ export async function handleAssetTools(action, args, tools) {
204
216
  { key: 'width' },
205
217
  { key: 'height' }
206
218
  ]);
219
+ const assetPath = extractString(params, 'assetPath');
220
+ const width = extractOptionalNumber(params, 'width');
221
+ const height = extractOptionalNumber(params, 'height');
207
222
  const res = await tools.assetTools.createThumbnail({
208
- assetPath: params.assetPath,
209
- width: params.width,
210
- height: params.height
223
+ assetPath,
224
+ width,
225
+ height
211
226
  });
212
227
  return ResponseFactory.success(res, 'Thumbnail created successfully');
213
228
  }
@@ -217,11 +232,13 @@ export async function handleAssetTools(action, args, tools) {
217
232
  { key: 'assetPath', required: true },
218
233
  { key: 'tags', required: true }
219
234
  ]);
220
- const res = await tools.assetTools.setTags({ assetPath: params.assetPath, tags: params.tags });
235
+ const assetPath = extractString(params, 'assetPath');
236
+ const tags = extractOptionalArray(params, 'tags') ?? [];
237
+ const res = await tools.assetTools.setTags({ assetPath, tags });
221
238
  return ResponseFactory.success(res, 'Tags set successfully');
222
239
  }
223
240
  catch (err) {
224
- const message = String(err?.message || err || '').toLowerCase();
241
+ const message = String(err instanceof Error ? err.message : err).toLowerCase();
225
242
  if (message.includes('not_implemented') ||
226
243
  message.includes('not implemented') ||
227
244
  message.includes('unknown action') ||
@@ -235,7 +252,8 @@ export async function handleAssetTools(action, args, tools) {
235
252
  const params = normalizeArgs(args, [
236
253
  { key: 'assetPath', required: true }
237
254
  ]);
238
- const res = await tools.assetTools.getMetadata({ assetPath: params.assetPath });
255
+ const assetPath = extractString(params, 'assetPath');
256
+ const res = await tools.assetTools.getMetadata({ assetPath });
239
257
  const tags = res.tags || {};
240
258
  const metadata = res.metadata || {};
241
259
  const merged = { ...tags, ...metadata };
@@ -257,7 +275,8 @@ export async function handleAssetTools(action, args, tools) {
257
275
  const params = normalizeArgs(args, [
258
276
  { key: 'assetPath', required: true }
259
277
  ]);
260
- const res = await tools.assetTools.validate({ assetPath: params.assetPath });
278
+ const assetPath = extractString(params, 'assetPath');
279
+ const res = await tools.assetTools.validate({ assetPath });
261
280
  return ResponseFactory.success(res, 'Asset validation complete');
262
281
  }
263
282
  case 'generate_report': {
@@ -266,25 +285,29 @@ export async function handleAssetTools(action, args, tools) {
266
285
  { key: 'reportType' },
267
286
  { key: 'outputPath' }
268
287
  ]);
288
+ const directory = extractOptionalString(params, 'directory') ?? '';
289
+ const reportType = extractOptionalString(params, 'reportType');
290
+ const outputPath = extractOptionalString(params, 'outputPath');
269
291
  const res = await tools.assetTools.generateReport({
270
- directory: params.directory,
271
- reportType: params.reportType,
272
- outputPath: params.outputPath
292
+ directory,
293
+ reportType,
294
+ outputPath
273
295
  });
274
296
  return ResponseFactory.success(res, 'Report generated successfully');
275
297
  }
276
298
  case 'create_material_instance': {
277
299
  const res = await executeAutomationRequest(tools, 'create_material_instance', args, 'Automation bridge not available for create_material_instance');
278
- const result = res?.result ?? res ?? {};
300
+ const result = res ?? {};
279
301
  const errorCode = typeof result.error === 'string' ? result.error.toUpperCase() : '';
280
302
  const message = typeof result.message === 'string' ? result.message : '';
303
+ const argsTyped = args;
281
304
  if (errorCode === 'PARENT_NOT_FOUND' || message.toLowerCase().includes('parent material not found')) {
282
305
  return cleanObject({
283
306
  success: false,
284
307
  error: 'PARENT_NOT_FOUND',
285
308
  message: message || 'Parent material not found',
286
309
  path: result.path,
287
- parentMaterial: args.parentMaterial
310
+ parentMaterial: argsTyped.parentMaterial
288
311
  });
289
312
  }
290
313
  return ResponseFactory.success(res, 'Material instance created successfully');
@@ -297,12 +320,17 @@ export async function handleAssetTools(action, args, tools) {
297
320
  { key: 'recursiveClasses' },
298
321
  { key: 'limit' }
299
322
  ]);
323
+ const classNames = extractOptionalArray(params, 'classNames');
324
+ const packagePaths = extractOptionalArray(params, 'packagePaths');
325
+ const recursivePaths = extractOptionalBoolean(params, 'recursivePaths');
326
+ const recursiveClasses = extractOptionalBoolean(params, 'recursiveClasses');
327
+ const limit = extractOptionalNumber(params, 'limit');
300
328
  const res = await tools.assetTools.searchAssets({
301
- classNames: params.classNames,
302
- packagePaths: params.packagePaths,
303
- recursivePaths: params.recursivePaths,
304
- recursiveClasses: params.recursiveClasses,
305
- limit: params.limit
329
+ classNames,
330
+ packagePaths,
331
+ recursivePaths,
332
+ recursiveClasses,
333
+ limit
306
334
  });
307
335
  return ResponseFactory.success(res, 'Assets found');
308
336
  }
@@ -311,7 +339,9 @@ export async function handleAssetTools(action, args, tools) {
311
339
  { key: 'tag', required: true },
312
340
  { key: 'value' }
313
341
  ]);
314
- const res = await tools.assetTools.findByTag({ tag: params.tag, value: params.value });
342
+ const tag = extractString(params, 'tag');
343
+ const value = extractOptionalString(params, 'value');
344
+ const res = await tools.assetTools.findByTag({ tag, value });
315
345
  return ResponseFactory.success(res, 'Assets found by tag');
316
346
  }
317
347
  case 'get_dependencies': {
@@ -319,14 +349,17 @@ export async function handleAssetTools(action, args, tools) {
319
349
  { key: 'assetPath', required: true },
320
350
  { key: 'recursive' }
321
351
  ]);
322
- const res = await tools.assetTools.getDependencies({ assetPath: params.assetPath, recursive: params.recursive });
352
+ const assetPath = extractString(params, 'assetPath');
353
+ const recursive = extractOptionalBoolean(params, 'recursive');
354
+ const res = await tools.assetTools.getDependencies({ assetPath, recursive });
323
355
  return ResponseFactory.success(res, 'Dependencies retrieved');
324
356
  }
325
357
  case 'get_source_control_state': {
326
358
  const params = normalizeArgs(args, [
327
359
  { key: 'assetPath', required: true }
328
360
  ]);
329
- const res = await tools.assetTools.getSourceControlState({ assetPath: params.assetPath });
361
+ const assetPath = extractString(params, 'assetPath');
362
+ const res = await tools.assetTools.getSourceControlState({ assetPath });
330
363
  return ResponseFactory.success(res, 'Source control state retrieved');
331
364
  }
332
365
  case 'analyze_graph': {
@@ -334,9 +367,11 @@ export async function handleAssetTools(action, args, tools) {
334
367
  { key: 'assetPath', required: true },
335
368
  { key: 'maxDepth' }
336
369
  ]);
370
+ const assetPath = extractString(params, 'assetPath');
371
+ const maxDepth = extractOptionalNumber(params, 'maxDepth');
337
372
  const res = await executeAutomationRequest(tools, 'get_asset_graph', {
338
- assetPath: params.assetPath,
339
- maxDepth: params.maxDepth
373
+ assetPath,
374
+ maxDepth
340
375
  });
341
376
  return ResponseFactory.success(res, 'Graph analysis complete');
342
377
  }
@@ -348,13 +383,18 @@ export async function handleAssetTools(action, args, tools) {
348
383
  { key: 'height' },
349
384
  { key: 'format' }
350
385
  ]);
386
+ const name = extractString(params, 'name');
387
+ const packagePath = extractOptionalString(params, 'packagePath') ?? '/Game';
388
+ const width = extractOptionalNumber(params, 'width');
389
+ const height = extractOptionalNumber(params, 'height');
390
+ const format = extractOptionalString(params, 'format');
351
391
  const res = await executeAutomationRequest(tools, 'manage_render', {
352
392
  subAction: 'create_render_target',
353
- name: params.name,
354
- packagePath: params.packagePath,
355
- width: params.width,
356
- height: params.height,
357
- format: params.format,
393
+ name,
394
+ packagePath,
395
+ width,
396
+ height,
397
+ format,
358
398
  save: true
359
399
  });
360
400
  return ResponseFactory.success(res, 'Render target created successfully');
@@ -363,17 +403,19 @@ export async function handleAssetTools(action, args, tools) {
363
403
  const params = normalizeArgs(args, [
364
404
  { key: 'assetPath', aliases: ['meshPath'], required: true }
365
405
  ]);
406
+ const assetPath = extractString(params, 'assetPath');
366
407
  const res = await executeAutomationRequest(tools, 'manage_render', {
367
408
  subAction: 'nanite_rebuild_mesh',
368
- assetPath: params.assetPath
409
+ assetPath
369
410
  });
370
411
  return ResponseFactory.success(res, 'Nanite mesh rebuilt successfully');
371
412
  }
372
413
  case 'fixup_redirectors': {
373
- const directoryRaw = typeof args.directory === 'string' && args.directory.trim().length > 0
374
- ? args.directory.trim()
375
- : (typeof args.directoryPath === 'string' && args.directoryPath.trim().length > 0
376
- ? args.directoryPath.trim()
414
+ const argsTyped = args;
415
+ const directoryRaw = typeof argsTyped.directory === 'string' && argsTyped.directory.trim().length > 0
416
+ ? argsTyped.directory.trim()
417
+ : (typeof argsTyped.directoryPath === 'string' && argsTyped.directoryPath.trim().length > 0
418
+ ? argsTyped.directoryPath.trim()
377
419
  : '');
378
420
  const payload = {};
379
421
  if (directoryRaw) {
@@ -392,11 +434,15 @@ export async function handleAssetTools(action, args, tools) {
392
434
  { key: 'parameterType', aliases: ['type'] },
393
435
  { key: 'value', aliases: ['defaultValue'] }
394
436
  ]);
437
+ const assetPath = extractString(params, 'assetPath');
438
+ const parameterName = extractString(params, 'parameterName');
439
+ const parameterType = extractOptionalString(params, 'parameterType');
440
+ const value = params.value;
395
441
  const res = await executeAutomationRequest(tools, 'add_material_parameter', {
396
- assetPath: params.assetPath,
397
- name: params.parameterName,
398
- type: params.parameterType,
399
- value: params.value
442
+ assetPath,
443
+ name: parameterName,
444
+ type: parameterType,
445
+ value
400
446
  });
401
447
  return ResponseFactory.success(res, 'Material parameter added successfully');
402
448
  }
@@ -404,8 +450,9 @@ export async function handleAssetTools(action, args, tools) {
404
450
  const params = normalizeArgs(args, [
405
451
  { key: 'assetPath', required: true }
406
452
  ]);
453
+ const assetPath = extractString(params, 'assetPath');
407
454
  const res = await executeAutomationRequest(tools, 'list_instances', {
408
- assetPath: params.assetPath
455
+ assetPath
409
456
  });
410
457
  return ResponseFactory.success(res, 'Instances listed successfully');
411
458
  }
@@ -413,8 +460,9 @@ export async function handleAssetTools(action, args, tools) {
413
460
  const params = normalizeArgs(args, [
414
461
  { key: 'assetPath', required: true }
415
462
  ]);
463
+ const assetPath = extractString(params, 'assetPath');
416
464
  const res = await executeAutomationRequest(tools, 'reset_instance_parameters', {
417
- assetPath: params.assetPath
465
+ assetPath
418
466
  });
419
467
  return ResponseFactory.success(res, 'Instance parameters reset successfully');
420
468
  }
@@ -422,8 +470,9 @@ export async function handleAssetTools(action, args, tools) {
422
470
  const params = normalizeArgs(args, [
423
471
  { key: 'assetPath', required: true }
424
472
  ]);
473
+ const assetPath = extractString(params, 'assetPath');
425
474
  const res = await executeAutomationRequest(tools, 'exists', {
426
- assetPath: params.assetPath
475
+ assetPath
427
476
  });
428
477
  return ResponseFactory.success(res, 'Asset existence check complete');
429
478
  }
@@ -431,8 +480,9 @@ export async function handleAssetTools(action, args, tools) {
431
480
  const params = normalizeArgs(args, [
432
481
  { key: 'assetPath', required: true }
433
482
  ]);
483
+ const assetPath = extractString(params, 'assetPath');
434
484
  const res = await executeAutomationRequest(tools, 'get_material_stats', {
435
- assetPath: params.assetPath
485
+ assetPath
436
486
  });
437
487
  return ResponseFactory.success(res, 'Material stats retrieved');
438
488
  }
@@ -440,8 +490,9 @@ export async function handleAssetTools(action, args, tools) {
440
490
  const params = normalizeArgs(args, [
441
491
  { key: 'assetPath', required: true }
442
492
  ]);
493
+ const assetPath = extractString(params, 'assetPath');
443
494
  const res = await executeAutomationRequest(tools, 'rebuild_material', {
444
- assetPath: params.assetPath
495
+ assetPath
445
496
  });
446
497
  return ResponseFactory.success(res, 'Material rebuilt successfully');
447
498
  }
@@ -480,29 +531,35 @@ export async function handleAssetTools(action, args, tools) {
480
531
  { key: 'posX' },
481
532
  { key: 'posY' }
482
533
  ]);
534
+ const assetPath = extractString(params, 'assetPath');
535
+ const nodeType = extractString(params, 'nodeType');
536
+ const posX = extractOptionalNumber(params, 'posX');
537
+ const posY = extractOptionalNumber(params, 'posY');
483
538
  const res = await executeAutomationRequest(tools, 'add_material_node', {
484
- assetPath: params.assetPath,
485
- nodeType: params.nodeType,
486
- posX: params.posX,
487
- posY: params.posY
539
+ assetPath,
540
+ nodeType,
541
+ posX,
542
+ posY
488
543
  });
489
544
  return ResponseFactory.success(res, 'Material node added successfully');
490
545
  }
491
- default:
546
+ default: {
492
547
  const res = await executeAutomationRequest(tools, action || 'manage_asset', args);
493
- const result = res?.result ?? res ?? {};
548
+ const result = res ?? {};
494
549
  const errorCode = typeof result.error === 'string' ? result.error.toUpperCase() : '';
495
550
  const message = typeof result.message === 'string' ? result.message : '';
551
+ const argsTyped = args;
496
552
  if (errorCode === 'INVALID_SUBACTION' || message.toLowerCase().includes('unknown subaction')) {
497
553
  return cleanObject({
498
554
  success: false,
499
555
  error: 'INVALID_SUBACTION',
500
556
  message: 'Asset action not recognized by the automation plugin.',
501
557
  action: action || 'manage_asset',
502
- assetPath: args.assetPath ?? args.path
558
+ assetPath: argsTyped.assetPath ?? argsTyped.path
503
559
  });
504
560
  }
505
561
  return ResponseFactory.success(res, 'Asset action executed successfully');
562
+ }
506
563
  }
507
564
  }
508
565
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"asset-handlers.js","sourceRoot":"","sources":["../../../src/tools/handlers/asset-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"asset-handlers.js","sourceRoot":"","sources":["../../../src/tools/handlers/asset-handlers.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import { ITools } from '../../types/tool-interfaces.js';
2
- export declare function handleAudioTools(action: string, args: any, tools: ITools): Promise<any>;
2
+ import type { HandlerArgs } from '../../types/handler-types.js';
3
+ export declare function handleAudioTools(action: string, args: HandlerArgs, tools: ITools): Promise<Record<string, unknown>>;
3
4
  //# sourceMappingURL=audio-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audio-handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/audio-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AA2BxD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,MAAM,gBAmKd"}
1
+ {"version":3,"file":"audio-handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/audio-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAExD,OAAO,KAAK,EAAE,WAAW,EAA+B,MAAM,8BAA8B,CAAC;AA0B7F,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAqKlC"}