unity-open-mcp 0.1.2 → 0.3.0

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 (447) hide show
  1. package/dist/agent-identity.d.ts +52 -0
  2. package/dist/agent-identity.js +115 -0
  3. package/dist/agent-identity.js.map +1 -0
  4. package/dist/batch-spawn.d.ts +7 -0
  5. package/dist/batch-spawn.js +155 -29
  6. package/dist/batch-spawn.js.map +1 -1
  7. package/dist/capabilities/build-capabilities.d.ts +45 -0
  8. package/dist/capabilities/build-capabilities.js +262 -27
  9. package/dist/capabilities/build-capabilities.js.map +1 -1
  10. package/dist/capabilities/cost-hints.d.ts +82 -0
  11. package/dist/capabilities/cost-hints.js +185 -0
  12. package/dist/capabilities/cost-hints.js.map +1 -0
  13. package/dist/capabilities/lifecycle.d.ts +40 -0
  14. package/dist/capabilities/lifecycle.js +353 -0
  15. package/dist/capabilities/lifecycle.js.map +1 -0
  16. package/dist/capabilities/rule-catalog.d.ts +13 -1
  17. package/dist/capabilities/rule-catalog.js +620 -75
  18. package/dist/capabilities/rule-catalog.js.map +1 -1
  19. package/dist/capabilities/tool-groups.d.ts +21 -0
  20. package/dist/capabilities/tool-groups.js +411 -14
  21. package/dist/capabilities/tool-groups.js.map +1 -1
  22. package/dist/cli/args.d.ts +32 -1
  23. package/dist/cli/args.js +201 -4
  24. package/dist/cli/args.js.map +1 -1
  25. package/dist/cli/cli.d.ts +21 -0
  26. package/dist/cli/cli.js +68 -5
  27. package/dist/cli/cli.js.map +1 -1
  28. package/dist/cli/commands.d.ts +33 -0
  29. package/dist/cli/commands.js +400 -0
  30. package/dist/cli/commands.js.map +1 -1
  31. package/dist/cli/exit-codes.d.ts +43 -0
  32. package/dist/cli/exit-codes.js +78 -0
  33. package/dist/cli/exit-codes.js.map +1 -0
  34. package/dist/compile-verify.d.ts +65 -0
  35. package/dist/compile-verify.js +94 -0
  36. package/dist/compile-verify.js.map +1 -0
  37. package/dist/compressible-router.js +64 -11
  38. package/dist/compressible-router.js.map +1 -1
  39. package/dist/compression/asset-model.d.ts +15 -0
  40. package/dist/compression/compact.d.ts +5 -4
  41. package/dist/compression/compact.js +13 -10
  42. package/dist/compression/compact.js.map +1 -1
  43. package/dist/dialog-dismiss.d.ts +127 -74
  44. package/dist/dialog-dismiss.js +427 -170
  45. package/dist/dialog-dismiss.js.map +1 -1
  46. package/dist/dialog-policy.d.ts +141 -0
  47. package/dist/dialog-policy.js +345 -0
  48. package/dist/dialog-policy.js.map +1 -0
  49. package/dist/gate-error.d.ts +6 -0
  50. package/dist/gate-error.js +13 -2
  51. package/dist/gate-error.js.map +1 -1
  52. package/dist/hub-control.d.ts +247 -0
  53. package/dist/hub-control.js +703 -0
  54. package/dist/hub-control.js.map +1 -0
  55. package/dist/index.d.ts +1 -1
  56. package/dist/index.js +46 -12
  57. package/dist/index.js.map +1 -1
  58. package/dist/live-client.d.ts +123 -3
  59. package/dist/live-client.js +526 -69
  60. package/dist/live-client.js.map +1 -1
  61. package/dist/offline.d.ts +105 -0
  62. package/dist/offline.js +816 -23
  63. package/dist/offline.js.map +1 -1
  64. package/dist/output-profile.d.ts +110 -0
  65. package/dist/output-profile.js +255 -0
  66. package/dist/output-profile.js.map +1 -0
  67. package/dist/retry-policy.d.ts +72 -0
  68. package/dist/retry-policy.js +146 -0
  69. package/dist/retry-policy.js.map +1 -0
  70. package/dist/routers.d.ts +4 -0
  71. package/dist/routers.js +2 -2
  72. package/dist/routers.js.map +1 -1
  73. package/dist/server-instructions.d.ts +18 -0
  74. package/dist/server-instructions.js +145 -0
  75. package/dist/server-instructions.js.map +1 -0
  76. package/dist/tool-router.d.ts +38 -1
  77. package/dist/tool-router.js +690 -37
  78. package/dist/tool-router.js.map +1 -1
  79. package/dist/tool-session-state.d.ts +37 -0
  80. package/dist/tool-session-state.js +78 -1
  81. package/dist/tool-session-state.js.map +1 -1
  82. package/dist/tools/apply-fix.js +16 -2
  83. package/dist/tools/apply-fix.js.map +1 -1
  84. package/dist/tools/asmdef-create.d.ts +2 -0
  85. package/dist/tools/asmdef-create.js +114 -0
  86. package/dist/tools/asmdef-create.js.map +1 -0
  87. package/dist/tools/asmdef-get.d.ts +2 -0
  88. package/dist/tools/asmdef-get.js +31 -0
  89. package/dist/tools/asmdef-get.js.map +1 -0
  90. package/dist/tools/asmdef-list.d.ts +2 -0
  91. package/dist/tools/asmdef-list.js +41 -0
  92. package/dist/tools/asmdef-list.js.map +1 -0
  93. package/dist/tools/asmdef-modify.d.ts +2 -0
  94. package/dist/tools/asmdef-modify.js +108 -0
  95. package/dist/tools/asmdef-modify.js.map +1 -0
  96. package/dist/tools/audio-listener-get.d.ts +2 -0
  97. package/dist/tools/audio-listener-get.js +16 -0
  98. package/dist/tools/audio-listener-get.js.map +1 -0
  99. package/dist/tools/audio-mixer-get-parameter.d.ts +2 -0
  100. package/dist/tools/audio-mixer-get-parameter.js +25 -0
  101. package/dist/tools/audio-mixer-get-parameter.js.map +1 -0
  102. package/dist/tools/audio-mixer-set-parameter.d.ts +2 -0
  103. package/dist/tools/audio-mixer-set-parameter.js +44 -0
  104. package/dist/tools/audio-mixer-set-parameter.js.map +1 -0
  105. package/dist/tools/audio-source-add.d.ts +2 -0
  106. package/dist/tools/audio-source-add.js +94 -0
  107. package/dist/tools/audio-source-add.js.map +1 -0
  108. package/dist/tools/audio-source-modify.d.ts +2 -0
  109. package/dist/tools/audio-source-modify.js +52 -0
  110. package/dist/tools/audio-source-modify.js.map +1 -0
  111. package/dist/tools/bridge-status.js +16 -6
  112. package/dist/tools/bridge-status.js.map +1 -1
  113. package/dist/tools/build-get-active-target.js +1 -2
  114. package/dist/tools/build-get-active-target.js.map +1 -1
  115. package/dist/tools/build-get-defines.js +1 -1
  116. package/dist/tools/build-get-defines.js.map +1 -1
  117. package/dist/tools/build-get-scenes.js +1 -2
  118. package/dist/tools/build-get-scenes.js.map +1 -1
  119. package/dist/tools/build-get-targets.js +1 -1
  120. package/dist/tools/build-get-targets.js.map +1 -1
  121. package/dist/tools/build-set-defines.js +1 -2
  122. package/dist/tools/build-set-defines.js.map +1 -1
  123. package/dist/tools/build-set-scenes.js +1 -1
  124. package/dist/tools/build-set-scenes.js.map +1 -1
  125. package/dist/tools/build-set-target.js +1 -1
  126. package/dist/tools/build-set-target.js.map +1 -1
  127. package/dist/tools/build-start.js +0 -1
  128. package/dist/tools/build-start.js.map +1 -1
  129. package/dist/tools/cinemachine-brain-ensure.d.ts +2 -0
  130. package/dist/tools/cinemachine-brain-ensure.js +27 -0
  131. package/dist/tools/cinemachine-brain-ensure.js.map +1 -0
  132. package/dist/tools/cinemachine-camera-list.d.ts +2 -0
  133. package/dist/tools/cinemachine-camera-list.js +15 -0
  134. package/dist/tools/cinemachine-camera-list.js.map +1 -0
  135. package/dist/tools/cinemachine-create-camera.d.ts +2 -0
  136. package/dist/tools/cinemachine-create-camera.js +55 -0
  137. package/dist/tools/cinemachine-create-camera.js.map +1 -0
  138. package/dist/tools/cinemachine-set-body.d.ts +2 -0
  139. package/dist/tools/cinemachine-set-body.js +33 -0
  140. package/dist/tools/cinemachine-set-body.js.map +1 -0
  141. package/dist/tools/cinemachine-set-lens.d.ts +2 -0
  142. package/dist/tools/cinemachine-set-lens.js +41 -0
  143. package/dist/tools/cinemachine-set-lens.js.map +1 -0
  144. package/dist/tools/cinemachine-set-noise.d.ts +2 -0
  145. package/dist/tools/cinemachine-set-noise.js +31 -0
  146. package/dist/tools/cinemachine-set-noise.js.map +1 -0
  147. package/dist/tools/cinemachine-set-targets.d.ts +2 -0
  148. package/dist/tools/cinemachine-set-targets.js +30 -0
  149. package/dist/tools/cinemachine-set-targets.js.map +1 -0
  150. package/dist/tools/console-log.js +2 -2
  151. package/dist/tools/console-log.js.map +1 -1
  152. package/dist/tools/constraint-add.d.ts +2 -0
  153. package/dist/tools/constraint-add.js +85 -0
  154. package/dist/tools/constraint-add.js.map +1 -0
  155. package/dist/tools/dependencies.d.ts +2 -0
  156. package/dist/tools/dependencies.js +76 -0
  157. package/dist/tools/dependencies.js.map +1 -0
  158. package/dist/tools/editor-add-tag.js +2 -3
  159. package/dist/tools/editor-add-tag.js.map +1 -1
  160. package/dist/tools/editor-clear-history.d.ts +2 -0
  161. package/dist/tools/editor-clear-history.js +25 -0
  162. package/dist/tools/editor-clear-history.js.map +1 -0
  163. package/dist/tools/editor-get-layers.js +3 -3
  164. package/dist/tools/editor-get-layers.js.map +1 -1
  165. package/dist/tools/editor-get-tags.js +2 -2
  166. package/dist/tools/editor-get-tags.js.map +1 -1
  167. package/dist/tools/editor-redo.js +2 -3
  168. package/dist/tools/editor-redo.js.map +1 -1
  169. package/dist/tools/editor-undo-history.d.ts +2 -0
  170. package/dist/tools/editor-undo-history.js +21 -0
  171. package/dist/tools/editor-undo-history.js.map +1 -0
  172. package/dist/tools/editor-undo.js +3 -3
  173. package/dist/tools/editor-undo.js.map +1 -1
  174. package/dist/tools/editorprefs-delete.d.ts +2 -0
  175. package/dist/tools/editorprefs-delete.js +23 -0
  176. package/dist/tools/editorprefs-delete.js.map +1 -0
  177. package/dist/tools/editorprefs-get.d.ts +2 -0
  178. package/dist/tools/editorprefs-get.js +28 -0
  179. package/dist/tools/editorprefs-get.js.map +1 -0
  180. package/dist/tools/editorprefs-set.d.ts +2 -0
  181. package/dist/tools/editorprefs-set.js +33 -0
  182. package/dist/tools/editorprefs-set.js.map +1 -0
  183. package/dist/tools/find-references.js +24 -4
  184. package/dist/tools/find-references.js.map +1 -1
  185. package/dist/tools/frame-debugger.d.ts +2 -0
  186. package/dist/tools/frame-debugger.js +48 -0
  187. package/dist/tools/frame-debugger.js.map +1 -0
  188. package/dist/tools/gameobject-modify.js +69 -2
  189. package/dist/tools/gameobject-modify.js.map +1 -1
  190. package/dist/tools/gate-budget-estimate.js +2 -1
  191. package/dist/tools/gate-budget-estimate.js.map +1 -1
  192. package/dist/tools/hub-available-releases.d.ts +2 -0
  193. package/dist/tools/hub-available-releases.js +23 -0
  194. package/dist/tools/hub-available-releases.js.map +1 -0
  195. package/dist/tools/hub-get-install-path.d.ts +2 -0
  196. package/dist/tools/hub-get-install-path.js +20 -0
  197. package/dist/tools/hub-get-install-path.js.map +1 -0
  198. package/dist/tools/hub-install-editor.d.ts +2 -0
  199. package/dist/tools/hub-install-editor.js +47 -0
  200. package/dist/tools/hub-install-editor.js.map +1 -0
  201. package/dist/tools/hub-install-modules.d.ts +2 -0
  202. package/dist/tools/hub-install-modules.js +44 -0
  203. package/dist/tools/hub-install-modules.js.map +1 -0
  204. package/dist/tools/hub-list-editors.d.ts +2 -0
  205. package/dist/tools/hub-list-editors.js +25 -0
  206. package/dist/tools/hub-list-editors.js.map +1 -0
  207. package/dist/tools/hub-set-install-path.d.ts +2 -0
  208. package/dist/tools/hub-set-install-path.js +30 -0
  209. package/dist/tools/hub-set-install-path.js.map +1 -0
  210. package/dist/tools/impact-preview.js +2 -2
  211. package/dist/tools/impact-preview.js.map +1 -1
  212. package/dist/tools/index.d.ts +14 -0
  213. package/dist/tools/index.js +534 -24
  214. package/dist/tools/index.js.map +1 -1
  215. package/dist/tools/light-add.d.ts +2 -0
  216. package/dist/tools/light-add.js +73 -0
  217. package/dist/tools/light-add.js.map +1 -0
  218. package/dist/tools/light-modify.d.ts +2 -0
  219. package/dist/tools/light-modify.js +36 -0
  220. package/dist/tools/light-modify.js.map +1 -0
  221. package/dist/tools/light-set.d.ts +2 -0
  222. package/dist/tools/light-set.js +54 -0
  223. package/dist/tools/light-set.js.map +1 -0
  224. package/dist/tools/list-assets-of-type.d.ts +2 -0
  225. package/dist/tools/list-assets-of-type.js +54 -0
  226. package/dist/tools/list-assets-of-type.js.map +1 -0
  227. package/dist/tools/lod-add-level.d.ts +2 -0
  228. package/dist/tools/lod-add-level.js +66 -0
  229. package/dist/tools/lod-add-level.js.map +1 -0
  230. package/dist/tools/lod-group-configure.d.ts +2 -0
  231. package/dist/tools/lod-group-configure.js +64 -0
  232. package/dist/tools/lod-group-configure.js.map +1 -0
  233. package/dist/tools/manage-tools.js +7 -5
  234. package/dist/tools/manage-tools.js.map +1 -1
  235. package/dist/tools/memory-snapshot-capture.d.ts +2 -0
  236. package/dist/tools/memory-snapshot-capture.js +61 -0
  237. package/dist/tools/memory-snapshot-capture.js.map +1 -0
  238. package/dist/tools/mutation-explain.js +2 -2
  239. package/dist/tools/mutation-explain.js.map +1 -1
  240. package/dist/tools/playerprefs-delete.d.ts +2 -0
  241. package/dist/tools/playerprefs-delete.js +24 -0
  242. package/dist/tools/playerprefs-delete.js.map +1 -0
  243. package/dist/tools/playerprefs-get.d.ts +2 -0
  244. package/dist/tools/playerprefs-get.js +28 -0
  245. package/dist/tools/playerprefs-get.js.map +1 -0
  246. package/dist/tools/playerprefs-set.d.ts +2 -0
  247. package/dist/tools/playerprefs-set.js +37 -0
  248. package/dist/tools/playerprefs-set.js.map +1 -0
  249. package/dist/tools/profiler-capture-frame.d.ts +2 -0
  250. package/dist/tools/profiler-capture-frame.js +75 -0
  251. package/dist/tools/profiler-capture-frame.js.map +1 -0
  252. package/dist/tools/profiler-clear-data.js +1 -2
  253. package/dist/tools/profiler-clear-data.js.map +1 -1
  254. package/dist/tools/profiler-enable-module.js +4 -5
  255. package/dist/tools/profiler-enable-module.js.map +1 -1
  256. package/dist/tools/profiler-get-status.js +5 -6
  257. package/dist/tools/profiler-get-status.js.map +1 -1
  258. package/dist/tools/profiler-load-data.js +4 -5
  259. package/dist/tools/profiler-load-data.js.map +1 -1
  260. package/dist/tools/profiler-save-data.js +3 -3
  261. package/dist/tools/profiler-save-data.js.map +1 -1
  262. package/dist/tools/profiler-set-config.js +5 -5
  263. package/dist/tools/profiler-set-config.js.map +1 -1
  264. package/dist/tools/profiler-start.js +4 -4
  265. package/dist/tools/profiler-start.js.map +1 -1
  266. package/dist/tools/profiler-stop.js +2 -3
  267. package/dist/tools/profiler-stop.js.map +1 -1
  268. package/dist/tools/read-asset.js +21 -3
  269. package/dist/tools/read-asset.js.map +1 -1
  270. package/dist/tools/reflection-probe-bake.d.ts +2 -0
  271. package/dist/tools/reflection-probe-bake.js +47 -0
  272. package/dist/tools/reflection-probe-bake.js.map +1 -0
  273. package/dist/tools/reflection-probe-get.d.ts +2 -0
  274. package/dist/tools/reflection-probe-get.js +19 -0
  275. package/dist/tools/reflection-probe-get.js.map +1 -0
  276. package/dist/tools/reimport-package.d.ts +2 -0
  277. package/dist/tools/reimport-package.js +53 -0
  278. package/dist/tools/reimport-package.js.map +1 -0
  279. package/dist/tools/scan-paths.js +19 -0
  280. package/dist/tools/scan-paths.js.map +1 -1
  281. package/dist/tools/scene-focus.js +1 -1
  282. package/dist/tools/scene-focus.js.map +1 -1
  283. package/dist/tools/scene-get-data.js +31 -13
  284. package/dist/tools/scene-get-data.js.map +1 -1
  285. package/dist/tools/scene-get-dirty-summary.js +1 -1
  286. package/dist/tools/scene-get-dirty-summary.js.map +1 -1
  287. package/dist/tools/sceneview-get-camera.d.ts +2 -0
  288. package/dist/tools/sceneview-get-camera.js +16 -0
  289. package/dist/tools/sceneview-get-camera.js.map +1 -0
  290. package/dist/tools/sceneview-set-camera.d.ts +2 -0
  291. package/dist/tools/sceneview-set-camera.js +58 -0
  292. package/dist/tools/sceneview-set-camera.js.map +1 -0
  293. package/dist/tools/script-write.js +2 -2
  294. package/dist/tools/script-write.js.map +1 -1
  295. package/dist/tools/scriptableobject-create.d.ts +2 -0
  296. package/dist/tools/scriptableobject-create.js +86 -0
  297. package/dist/tools/scriptableobject-create.js.map +1 -0
  298. package/dist/tools/search-assets.js +20 -3
  299. package/dist/tools/search-assets.js.map +1 -1
  300. package/dist/tools/settings-get-lighting.js +3 -4
  301. package/dist/tools/settings-get-lighting.js.map +1 -1
  302. package/dist/tools/settings-get-player.js +2 -2
  303. package/dist/tools/settings-get-player.js.map +1 -1
  304. package/dist/tools/settings-get-quality.js +1 -2
  305. package/dist/tools/settings-get-quality.js.map +1 -1
  306. package/dist/tools/settings-get-render-pipeline.d.ts +2 -0
  307. package/dist/tools/settings-get-render-pipeline.js +19 -0
  308. package/dist/tools/settings-get-render-pipeline.js.map +1 -0
  309. package/dist/tools/settings-get-time.d.ts +2 -0
  310. package/dist/tools/settings-get-time.js +18 -0
  311. package/dist/tools/settings-get-time.js.map +1 -0
  312. package/dist/tools/settings-set-lighting.js +5 -5
  313. package/dist/tools/settings-set-lighting.js.map +1 -1
  314. package/dist/tools/settings-set-physics.js +2 -2
  315. package/dist/tools/settings-set-physics.js.map +1 -1
  316. package/dist/tools/settings-set-player.js +2 -2
  317. package/dist/tools/settings-set-player.js.map +1 -1
  318. package/dist/tools/settings-set-quality-level.d.ts +2 -0
  319. package/dist/tools/settings-set-quality-level.js +44 -0
  320. package/dist/tools/settings-set-quality-level.js.map +1 -0
  321. package/dist/tools/settings-set-quality.js +2 -2
  322. package/dist/tools/settings-set-quality.js.map +1 -1
  323. package/dist/tools/settings-set-time.d.ts +2 -0
  324. package/dist/tools/settings-set-time.js +53 -0
  325. package/dist/tools/settings-set-time.js.map +1 -0
  326. package/dist/tools/shader-get-data.js +3 -3
  327. package/dist/tools/shader-get-data.js.map +1 -1
  328. package/dist/tools/shader-graph-create.d.ts +2 -0
  329. package/dist/tools/shader-graph-create.js +40 -0
  330. package/dist/tools/shader-graph-create.js.map +1 -0
  331. package/dist/tools/shader-graph-node-add.d.ts +2 -0
  332. package/dist/tools/shader-graph-node-add.js +50 -0
  333. package/dist/tools/shader-graph-node-add.js.map +1 -0
  334. package/dist/tools/shader-graph-node-connect.d.ts +2 -0
  335. package/dist/tools/shader-graph-node-connect.js +60 -0
  336. package/dist/tools/shader-graph-node-connect.js.map +1 -0
  337. package/dist/tools/shader-graph-open.d.ts +2 -0
  338. package/dist/tools/shader-graph-open.js +29 -0
  339. package/dist/tools/shader-graph-open.js.map +1 -0
  340. package/dist/tools/skybox-get.d.ts +2 -0
  341. package/dist/tools/skybox-get.js +13 -0
  342. package/dist/tools/skybox-get.js.map +1 -0
  343. package/dist/tools/skybox-set.d.ts +2 -0
  344. package/dist/tools/skybox-set.js +34 -0
  345. package/dist/tools/skybox-set.js.map +1 -0
  346. package/dist/tools/spriteatlas-add-packable.d.ts +2 -0
  347. package/dist/tools/spriteatlas-add-packable.js +40 -0
  348. package/dist/tools/spriteatlas-add-packable.js.map +1 -0
  349. package/dist/tools/spriteatlas-create.d.ts +2 -0
  350. package/dist/tools/spriteatlas-create.js +41 -0
  351. package/dist/tools/spriteatlas-create.js.map +1 -0
  352. package/dist/tools/spriteatlas-delete.d.ts +2 -0
  353. package/dist/tools/spriteatlas-delete.js +32 -0
  354. package/dist/tools/spriteatlas-delete.js.map +1 -0
  355. package/dist/tools/spriteatlas-get.d.ts +2 -0
  356. package/dist/tools/spriteatlas-get.js +23 -0
  357. package/dist/tools/spriteatlas-get.js.map +1 -0
  358. package/dist/tools/spriteatlas-list.d.ts +2 -0
  359. package/dist/tools/spriteatlas-list.js +21 -0
  360. package/dist/tools/spriteatlas-list.js.map +1 -0
  361. package/dist/tools/spriteatlas-modify.d.ts +2 -0
  362. package/dist/tools/spriteatlas-modify.js +55 -0
  363. package/dist/tools/spriteatlas-modify.js.map +1 -0
  364. package/dist/tools/spriteatlas-remove-packable.d.ts +2 -0
  365. package/dist/tools/spriteatlas-remove-packable.js +39 -0
  366. package/dist/tools/spriteatlas-remove-packable.js.map +1 -0
  367. package/dist/tools/terrain-create.d.ts +2 -0
  368. package/dist/tools/terrain-create.js +73 -0
  369. package/dist/tools/terrain-create.js.map +1 -0
  370. package/dist/tools/terrain-paint-layer.d.ts +2 -0
  371. package/dist/tools/terrain-paint-layer.js +85 -0
  372. package/dist/tools/terrain-paint-layer.js.map +1 -0
  373. package/dist/tools/terrain-place-trees.d.ts +2 -0
  374. package/dist/tools/terrain-place-trees.js +92 -0
  375. package/dist/tools/terrain-place-trees.js.map +1 -0
  376. package/dist/tools/terrain-set-heights.d.ts +2 -0
  377. package/dist/tools/terrain-set-heights.js +68 -0
  378. package/dist/tools/terrain-set-heights.js.map +1 -0
  379. package/dist/tools/terrain-set-neighbors.d.ts +2 -0
  380. package/dist/tools/terrain-set-neighbors.js +65 -0
  381. package/dist/tools/terrain-set-neighbors.js.map +1 -0
  382. package/dist/tools/texture-get-importer.d.ts +2 -0
  383. package/dist/tools/texture-get-importer.js +25 -0
  384. package/dist/tools/texture-get-importer.js.map +1 -0
  385. package/dist/tools/texture-get.d.ts +2 -0
  386. package/dist/tools/texture-get.js +23 -0
  387. package/dist/tools/texture-get.js.map +1 -0
  388. package/dist/tools/texture-reimport.d.ts +2 -0
  389. package/dist/tools/texture-reimport.js +33 -0
  390. package/dist/tools/texture-reimport.js.map +1 -0
  391. package/dist/tools/texture-set-import.d.ts +2 -0
  392. package/dist/tools/texture-set-import.js +52 -0
  393. package/dist/tools/texture-set-import.js.map +1 -0
  394. package/dist/tools/tilemap-box-fill.d.ts +2 -0
  395. package/dist/tools/tilemap-box-fill.js +32 -0
  396. package/dist/tools/tilemap-box-fill.js.map +1 -0
  397. package/dist/tools/tilemap-create-rule-tile.d.ts +2 -0
  398. package/dist/tools/tilemap-create-rule-tile.js +39 -0
  399. package/dist/tools/tilemap-create-rule-tile.js.map +1 -0
  400. package/dist/tools/tilemap-create-tile-asset.d.ts +2 -0
  401. package/dist/tools/tilemap-create-tile-asset.js +35 -0
  402. package/dist/tools/tilemap-create-tile-asset.js.map +1 -0
  403. package/dist/tools/tilemap-create.d.ts +2 -0
  404. package/dist/tools/tilemap-create.js +32 -0
  405. package/dist/tools/tilemap-create.js.map +1 -0
  406. package/dist/tools/tilemap-set-tile.d.ts +2 -0
  407. package/dist/tools/tilemap-set-tile.js +33 -0
  408. package/dist/tools/tilemap-set-tile.js.map +1 -0
  409. package/dist/tools/timeline-clip-add.d.ts +2 -0
  410. package/dist/tools/timeline-clip-add.js +43 -0
  411. package/dist/tools/timeline-clip-add.js.map +1 -0
  412. package/dist/tools/timeline-create.d.ts +2 -0
  413. package/dist/tools/timeline-create.js +32 -0
  414. package/dist/tools/timeline-create.js.map +1 -0
  415. package/dist/tools/timeline-director-bind.d.ts +2 -0
  416. package/dist/tools/timeline-director-bind.js +34 -0
  417. package/dist/tools/timeline-director-bind.js.map +1 -0
  418. package/dist/tools/timeline-modify.d.ts +2 -0
  419. package/dist/tools/timeline-modify.js +44 -0
  420. package/dist/tools/timeline-modify.js.map +1 -0
  421. package/dist/tools/timeline-track-add.d.ts +2 -0
  422. package/dist/tools/timeline-track-add.js +37 -0
  423. package/dist/tools/timeline-track-add.js.map +1 -0
  424. package/dist/tools/ui-canvas-add.d.ts +2 -0
  425. package/dist/tools/ui-canvas-add.js +66 -0
  426. package/dist/tools/ui-canvas-add.js.map +1 -0
  427. package/dist/tools/ui-element-add.d.ts +2 -0
  428. package/dist/tools/ui-element-add.js +65 -0
  429. package/dist/tools/ui-element-add.js.map +1 -0
  430. package/dist/tools/ui-element-modify.d.ts +2 -0
  431. package/dist/tools/ui-element-modify.js +59 -0
  432. package/dist/tools/ui-element-modify.js.map +1 -0
  433. package/dist/tools/ui-layout-group-add.d.ts +2 -0
  434. package/dist/tools/ui-layout-group-add.js +80 -0
  435. package/dist/tools/ui-layout-group-add.js.map +1 -0
  436. package/dist/tools/validate-edit.js +22 -1
  437. package/dist/tools/validate-edit.js.map +1 -1
  438. package/dist/tools/vfx-block-edit.d.ts +2 -0
  439. package/dist/tools/vfx-block-edit.js +51 -0
  440. package/dist/tools/vfx-block-edit.js.map +1 -0
  441. package/dist/tools/vfx-list.d.ts +2 -0
  442. package/dist/tools/vfx-list.js +31 -0
  443. package/dist/tools/vfx-list.js.map +1 -0
  444. package/dist/tools/vfx-open.d.ts +2 -0
  445. package/dist/tools/vfx-open.js +29 -0
  446. package/dist/tools/vfx-open.js.map +1 -0
  447. package/package.json +1 -1
@@ -0,0 +1,66 @@
1
+ // M20 Plan 3 / T20.3.2 — UI (uGUI) domain tool. Built-in UI module (no extra
2
+ // UPM); the `ui` group is hidden until manage_tools activates it. Mutating:
3
+ // runs the full gate path; paths_hint is the host / new-root scene path.
4
+ // Address the host by instance_id > path > name (same model as gameobject_* /
5
+ // component_*). When no host is addressed, a new scene root is created
6
+ // (new_root_name controls its name; defaults to "Canvas"). Param shape:
7
+ // renderMode overlay/camera/world + EventSystem.
8
+ const targetSchema = {
9
+ instance_id: {
10
+ type: "integer",
11
+ default: 0,
12
+ description: "Host GameObject instance ID. Highest priority resolver. When omitted, a new scene root is created.",
13
+ },
14
+ path: {
15
+ type: "string",
16
+ description: "Host hierarchy path \"Root/Child\".",
17
+ },
18
+ name: {
19
+ type: "string",
20
+ description: "Host GameObject name (first match). Lowest priority resolver.",
21
+ },
22
+ paths_hint: {
23
+ type: "array",
24
+ items: { type: "string" },
25
+ description: "Mutation scope — the host's (or new root's) scene path.",
26
+ },
27
+ gate: {
28
+ enum: ["enforce", "warn", "off"],
29
+ default: "enforce",
30
+ },
31
+ };
32
+ export const uiCanvasAdd = {
33
+ name: "unity_open_mcp_ui_canvas_add",
34
+ description: "Add a Canvas to a GameObject (or as a new scene root when no host is addressed). " +
35
+ "Ensures the canvas has a CanvasScaler + GraphicRaycaster, and ensures an EventSystem " +
36
+ "exists in the open scene(s). Set render_mode (ScreenSpaceOverlay | ScreenSpaceCamera | " +
37
+ "WorldSpace, default ScreenSpaceOverlay) and sorting_order (default 0). Idempotent — " +
38
+ "re-using an existing Canvas reports added:false (the scaler / raycaster / EventSystem " +
39
+ "are still ensured). Mutating: runs the full gate path; paths_hint is the host / " +
40
+ "new-root scene path. Built-in UI module (no package dependency); the ui group is " +
41
+ "hidden until manage_tools activates it.",
42
+ inputSchema: {
43
+ type: "object",
44
+ required: ["paths_hint"],
45
+ properties: {
46
+ ...targetSchema,
47
+ render_mode: {
48
+ type: "string",
49
+ default: "ScreenSpaceOverlay",
50
+ enum: ["ScreenSpaceOverlay", "ScreenSpaceCamera", "WorldSpace"],
51
+ description: "Canvas render mode.",
52
+ },
53
+ sorting_order: {
54
+ type: "integer",
55
+ default: 0,
56
+ description: "Canvas sorting order (higher = drawn on top).",
57
+ },
58
+ new_root_name: {
59
+ type: "string",
60
+ description: "Name for the new scene root when no host is addressed (defaults to 'Canvas').",
61
+ },
62
+ },
63
+ additionalProperties: false,
64
+ },
65
+ };
66
+ //# sourceMappingURL=ui-canvas-add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-canvas-add.js","sourceRoot":"","sources":["../../src/tools/ui-canvas-add.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,4EAA4E;AAC5E,yEAAyE;AACzE,8EAA8E;AAC9E,uEAAuE;AACvE,wEAAwE;AACxE,iDAAiD;AACjD,MAAM,YAAY,GAAG;IACnB,WAAW,EAAE;QACX,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,oGAAoG;KAClH;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,qCAAqC;KACnD;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,+DAA+D;KAC7E;IACD,UAAU,EAAE;QACV,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,WAAW,EAAE,yDAAyD;KACvE;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC;QAChC,OAAO,EAAE,SAAS;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAS;IAC/B,IAAI,EAAE,8BAA8B;IACpC,WAAW,EACT,mFAAmF;QACnF,uFAAuF;QACvF,yFAAyF;QACzF,sFAAsF;QACtF,wFAAwF;QACxF,kFAAkF;QAClF,mFAAmF;QACnF,yCAAyC;IAC3C,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,YAAY,CAAC;QACxB,UAAU,EAAE;YACV,GAAG,YAAY;YACf,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,oBAAoB;gBAC7B,IAAI,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,YAAY,CAAC;gBAC/D,WAAW,EAAE,qBAAqB;aACnC;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,+CAA+C;aAC7D;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+EAA+E;aAC7F;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const uiElementAdd: Tool;
@@ -0,0 +1,65 @@
1
+ // M20 Plan 3 / T20.3.2 — UI (uGUI) domain tool. Adds a uGUI element as a child
2
+ // of a parent RectTransform. Built-in UI module. Mutating: runs the full gate
3
+ // path; paths_hint is the parent scene path. The parent MUST exist — every
4
+ // uGUI element lives under a Canvas in the hierarchy. TMP_Text requires the
5
+ // TextMesh Pro package; when absent, returns `tmp_package_required` (no silent
6
+ // legacy-Text fallback). Param shape: element types + parent + common fields.
7
+ export const uiElementAdd = {
8
+ name: "unity_open_mcp_ui_element_add",
9
+ description: "Add a uGUI element as a child of a parent RectTransform. element_type is one of " +
10
+ "Text | TMP_Text | Image | Button | Slider | Toggle | InputField. Common fields: " +
11
+ "text (Text / TMP_Text / InputField), color (Graphic.color, r,g,b,a 0-1), " +
12
+ "sprite_path (Image / Button / Toggle sprite, Assets/-rooted). TMP_Text requires the " +
13
+ "TextMesh Pro package — when absent, returns `tmp_package_required` (no silent " +
14
+ "legacy-Text fallback). Mutating: runs the full gate path; paths_hint is the parent " +
15
+ "scene path. Built-in UI module (no package dependency); the ui group is hidden " +
16
+ "until manage_tools activates it.",
17
+ inputSchema: {
18
+ type: "object",
19
+ required: ["element_type", "paths_hint"],
20
+ properties: {
21
+ parent_instance_id: {
22
+ type: "integer",
23
+ default: 0,
24
+ description: "Parent GameObject instance ID. Highest priority resolver.",
25
+ },
26
+ parent_path: {
27
+ type: "string",
28
+ description: "Parent hierarchy path \"Root/Parent\".",
29
+ },
30
+ parent_name: {
31
+ type: "string",
32
+ description: "Parent GameObject name (first match). Lowest priority resolver.",
33
+ },
34
+ element_type: {
35
+ type: "string",
36
+ enum: ["Text", "TMP_Text", "Image", "Button", "Slider", "Toggle", "InputField"],
37
+ description: "uGUI element type to add.",
38
+ },
39
+ element_name: {
40
+ type: "string",
41
+ description: "Name for the new element GameObject (defaults to element_type).",
42
+ },
43
+ text: {
44
+ type: "string",
45
+ description: "Initial text (Text / TMP_Text / InputField).",
46
+ },
47
+ color: {
48
+ type: "string",
49
+ description: "Graphic.color as 'r,g,b,a' (0-1).",
50
+ },
51
+ sprite_path: {
52
+ type: "string",
53
+ description: "Assets/-rooted Sprite path (Image / Button / Toggle sprite).",
54
+ },
55
+ paths_hint: {
56
+ type: "array",
57
+ items: { type: "string" },
58
+ description: "Mutation scope — the parent scene path. No whole-project fallback.",
59
+ },
60
+ gate: { enum: ["enforce", "warn", "off"], default: "enforce" },
61
+ },
62
+ additionalProperties: false,
63
+ },
64
+ };
65
+ //# sourceMappingURL=ui-element-add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-element-add.js","sourceRoot":"","sources":["../../src/tools/ui-element-add.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,8EAA8E;AAC9E,2EAA2E;AAC3E,4EAA4E;AAC5E,+EAA+E;AAC/E,8EAA8E;AAC9E,MAAM,CAAC,MAAM,YAAY,GAAS;IAChC,IAAI,EAAE,+BAA+B;IACrC,WAAW,EACT,kFAAkF;QAClF,kFAAkF;QAClF,2EAA2E;QAC3E,sFAAsF;QACtF,gFAAgF;QAChF,qFAAqF;QACrF,iFAAiF;QACjF,kCAAkC;IACpC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC;QACxC,UAAU,EAAE;YACV,kBAAkB,EAAE;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,2DAA2D;aACzE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iEAAiE;aAC/E;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC;gBAC/E,WAAW,EAAE,2BAA2B;aACzC;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iEAAiE;aAC/E;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8CAA8C;aAC5D;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mCAAmC;aACjD;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8DAA8D;aAC5E;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,oEAAoE;aAClF;YACD,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE;SAC/D;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const uiElementModify: Tool;
@@ -0,0 +1,59 @@
1
+ // M20 Plan 3 / T20.3.2 — UI (uGUI) domain tool. Typed patch on a uGUI
2
+ // component. Built-in UI module. Mutating: runs the full gate path; paths_hint
3
+ // is the host scene path. Mirrors component_modify's shape but is scoped to
4
+ // uGUI types so the value conversion is purpose-built for the common fields
5
+ // (Graphic.color, Graphic.raycastTarget, Selectable.interactable, LayoutElement
6
+ // preferred sizes, Text / TMP_Text text).
7
+ export const uiElementModify = {
8
+ name: "unity_open_mcp_ui_element_modify",
9
+ description: "Set typed fields on a uGUI component attached to a target GameObject. Select the " +
10
+ "component by 'component_type' (Text | TMP_Text | Image | Button | Slider | Toggle | " +
11
+ "InputField | Canvas | CanvasScaler | GraphicRaycaster | HorizontalLayoutGroup | " +
12
+ "VerticalLayoutGroup | GridLayoutGroup | LayoutElement | Selectable). Each entry is " +
13
+ "{ field, value, type? } where type is 'int' | 'float' | 'bool' | 'string' | 'color' " +
14
+ "| 'vector' (default inferred from the current value). Unknown fields are reported " +
15
+ "as errors and the tool fails atomically (no partial writes) when any field fails " +
16
+ "to convert. Mutating: runs the full gate path; paths_hint is the host scene path. " +
17
+ "Built-in UI module (no package dependency); the ui group is hidden until " +
18
+ "manage_tools activates it.",
19
+ inputSchema: {
20
+ type: "object",
21
+ required: ["component_type", "fields_json", "paths_hint"],
22
+ properties: {
23
+ instance_id: {
24
+ type: "integer",
25
+ default: 0,
26
+ description: "Host GameObject instance ID. Highest priority resolver.",
27
+ },
28
+ path: {
29
+ type: "string",
30
+ description: "Host hierarchy path \"Root/Child\".",
31
+ },
32
+ name: {
33
+ type: "string",
34
+ description: "Host GameObject name (first match). Lowest priority resolver.",
35
+ },
36
+ component_type: {
37
+ type: "string",
38
+ description: "uGUI component type name. One of Text | TMP_Text | Image | Button | Slider | " +
39
+ "Toggle | InputField | Canvas | CanvasScaler | GraphicRaycaster | " +
40
+ "HorizontalLayoutGroup | VerticalLayoutGroup | GridLayoutGroup | LayoutElement | " +
41
+ "Selectable.",
42
+ },
43
+ fields_json: {
44
+ type: "string",
45
+ description: "JSON array of { field, value, type? } entries. type is 'int' | 'float' | 'bool' " +
46
+ "| 'string' | 'color' | 'vector' (default inferred). color is 'r,g,b,a' (0-1); " +
47
+ "vector is 'x,y' (Vector2) or 'x,y,z' (Vector3).",
48
+ },
49
+ paths_hint: {
50
+ type: "array",
51
+ items: { type: "string" },
52
+ description: "Mutation scope — the host scene path. No whole-project fallback.",
53
+ },
54
+ gate: { enum: ["enforce", "warn", "off"], default: "enforce" },
55
+ },
56
+ additionalProperties: false,
57
+ },
58
+ };
59
+ //# sourceMappingURL=ui-element-modify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-element-modify.js","sourceRoot":"","sources":["../../src/tools/ui-element-modify.ts"],"names":[],"mappings":"AAEA,sEAAsE;AACtE,+EAA+E;AAC/E,4EAA4E;AAC5E,4EAA4E;AAC5E,gFAAgF;AAChF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,eAAe,GAAS;IACnC,IAAI,EAAE,kCAAkC;IACxC,WAAW,EACT,mFAAmF;QACnF,sFAAsF;QACtF,kFAAkF;QAClF,qFAAqF;QACrF,sFAAsF;QACtF,oFAAoF;QACpF,mFAAmF;QACnF,oFAAoF;QACpF,2EAA2E;QAC3E,4BAA4B;IAC9B,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,YAAY,CAAC;QACzD,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,yDAAyD;aACvE;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qCAAqC;aACnD;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+DAA+D;aAC7E;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,+EAA+E;oBAC/E,mEAAmE;oBACnE,kFAAkF;oBAClF,aAAa;aAChB;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,kFAAkF;oBAClF,gFAAgF;oBAChF,iDAAiD;aACpD;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,kEAAkE;aAChF;YACD,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE;SAC/D;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const uiLayoutGroupAdd: Tool;
@@ -0,0 +1,80 @@
1
+ // M20 Plan 3 / T20.3.2 — UI (uGUI) domain tool. Adds a layout group to a parent
2
+ // RectTransform. Built-in UI module. Mutating: runs the full gate path;
3
+ // paths_hint is the parent scene path. Idempotent — re-using an existing group
4
+ // of the same type reports added:false.
5
+ export const uiLayoutGroupAdd = {
6
+ name: "unity_open_mcp_ui_layout_group_add",
7
+ description: "Add a layout group to a parent RectTransform. layout_type is " +
8
+ "HorizontalLayoutGroup | VerticalLayoutGroup | GridLayoutGroup. Optional: padding " +
9
+ "(left,right,top,bottom — defaults 0), spacing (x,y — defaults 0), child_alignment " +
10
+ "(TextAnchor name, default UpperLeft), child_control_width / child_control_height " +
11
+ "(default true), child_force_expand_width / child_force_expand_height (default true). " +
12
+ "Idempotent — re-using an existing group of the same type reports added:false. " +
13
+ "Mutating: runs the full gate path; paths_hint is the parent scene path. Built-in " +
14
+ "UI module (no package dependency); the ui group is hidden until manage_tools " +
15
+ "activates it.",
16
+ inputSchema: {
17
+ type: "object",
18
+ required: ["layout_type", "paths_hint"],
19
+ properties: {
20
+ instance_id: {
21
+ type: "integer",
22
+ default: 0,
23
+ description: "Parent GameObject instance ID. Highest priority resolver.",
24
+ },
25
+ path: {
26
+ type: "string",
27
+ description: "Parent hierarchy path \"Root/Parent\".",
28
+ },
29
+ name: {
30
+ type: "string",
31
+ description: "Parent GameObject name (first match). Lowest priority resolver.",
32
+ },
33
+ layout_type: {
34
+ type: "string",
35
+ enum: ["HorizontalLayoutGroup", "VerticalLayoutGroup", "GridLayoutGroup"],
36
+ description: "Layout group type to add.",
37
+ },
38
+ padding: {
39
+ type: "string",
40
+ description: "Padding as 'left,right,top,bottom' (int). Defaults to 0 on all sides.",
41
+ },
42
+ spacing: {
43
+ type: "string",
44
+ description: "Spacing as 'x,y' (GridLayoutGroup) or 'x' (HV groups — y ignored). Defaults to 0.",
45
+ },
46
+ child_alignment: {
47
+ type: "string",
48
+ description: "TextAnchor name (e.g. 'UpperLeft', 'MiddleCenter'). Default UpperLeft.",
49
+ },
50
+ child_control_width: {
51
+ type: "boolean",
52
+ default: true,
53
+ description: "HorizontalOrVerticalLayoutGroup: control child widths.",
54
+ },
55
+ child_control_height: {
56
+ type: "boolean",
57
+ default: true,
58
+ description: "HorizontalOrVerticalLayoutGroup: control child heights.",
59
+ },
60
+ child_force_expand_width: {
61
+ type: "boolean",
62
+ default: true,
63
+ description: "HorizontalOrVerticalLayoutGroup: force-expand child widths.",
64
+ },
65
+ child_force_expand_height: {
66
+ type: "boolean",
67
+ default: true,
68
+ description: "HorizontalOrVerticalLayoutGroup: force-expand child heights.",
69
+ },
70
+ paths_hint: {
71
+ type: "array",
72
+ items: { type: "string" },
73
+ description: "Mutation scope — the parent scene path. No whole-project fallback.",
74
+ },
75
+ gate: { enum: ["enforce", "warn", "off"], default: "enforce" },
76
+ },
77
+ additionalProperties: false,
78
+ },
79
+ };
80
+ //# sourceMappingURL=ui-layout-group-add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-layout-group-add.js","sourceRoot":"","sources":["../../src/tools/ui-layout-group-add.ts"],"names":[],"mappings":"AAEA,gFAAgF;AAChF,wEAAwE;AACxE,+EAA+E;AAC/E,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAS;IACpC,IAAI,EAAE,oCAAoC;IAC1C,WAAW,EACT,+DAA+D;QAC/D,mFAAmF;QACnF,oFAAoF;QACpF,mFAAmF;QACnF,uFAAuF;QACvF,gFAAgF;QAChF,mFAAmF;QACnF,+EAA+E;QAC/E,eAAe;IACjB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC;QACvC,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,2DAA2D;aACzE;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iEAAiE;aAC/E;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,uBAAuB,EAAE,qBAAqB,EAAE,iBAAiB,CAAC;gBACzE,WAAW,EAAE,2BAA2B;aACzC;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uEAAuE;aACrF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mFAAmF;aACjG;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wEAAwE;aACtF;YACD,mBAAmB,EAAE;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,wDAAwD;aACtE;YACD,oBAAoB,EAAE;gBACpB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,yDAAyD;aACvE;YACD,wBAAwB,EAAE;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,6DAA6D;aAC3E;YACD,yBAAyB,EAAE;gBACzB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,8DAA8D;aAC5E;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,oEAAoE;aAClF;YACD,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE;SAC/D;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -1,7 +1,9 @@
1
1
  export const validateEdit = {
2
2
  name: "unity_open_mcp_validate_edit",
3
3
  description: "Scoped health check without a preceding mutation. Used by agents for manual verification or pre-commit checks. " +
4
- "Use include_rules / exclude_rules to narrow the auto-selected rule set. Each issue carries ruleId + categoryId (alias), " +
4
+ "Use include_rules / exclude_rules to narrow the auto-selected rule set. Default (`profile: 'compact'`) returns " +
5
+ "passed + issue counts grouped by severity (no per-issue list); raise to balanced/full for the full issues list, " +
6
+ "and page large result sets with page_size/cursor. Each issue carries ruleId + categoryId (alias), " +
5
7
  "severity, code + issueCode (alias), assetPath, description, and fixId + fixSafe when a fix exists.",
6
8
  inputSchema: {
7
9
  type: "object",
@@ -32,9 +34,28 @@ export const validateEdit = {
32
34
  enum: ["mobile", "console", "desktop"],
33
35
  default: "desktop",
34
36
  },
37
+ profile: {
38
+ enum: ["compact", "balanced", "full"],
39
+ default: "compact",
40
+ description: "Token-budget output profile (M22). 'compact' (default) = passed + issue counts grouped by severity " +
41
+ "(issues[] stripped; drill in with balanced/full). 'balanced'/'full' = the full issues list (paged when " +
42
+ "page_size is set). An explicit profile wins over the legacy `detail` param.",
43
+ },
44
+ page_size: {
45
+ type: "integer",
46
+ minimum: 1,
47
+ description: "Page the issues list (M22 uniform paging; balanced/full). When set, the response carries a `pagination` block " +
48
+ "with a `next_cursor` to resume. Omit to receive the whole issues list in one response.",
49
+ },
50
+ cursor: {
51
+ type: "string",
52
+ description: "Opaque continuation token from a previous response's `pagination.next_cursor`. Page the issues list.",
53
+ },
35
54
  detail: {
36
55
  enum: ["summary", "normal", "verbose"],
37
56
  default: "normal",
57
+ description: "Legacy compression level (alias for `profile`: summary=compact, normal/full=verbose). Prefer `profile`; " +
58
+ "ignored when `profile` is set.",
38
59
  },
39
60
  },
40
61
  additionalProperties: false,
@@ -1 +1 @@
1
- {"version":3,"file":"validate-edit.js","sourceRoot":"","sources":["../../src/tools/validate-edit.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAS;IAChC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EACT,iHAAiH;QACjH,0HAA0H;QAC1H,oGAAoG;IACtG,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,OAAO,CAAC;QACnB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,QAAQ,EAAE,CAAC;aACZ;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,sDAAsD;aACpE;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EACT,sHAAsH;oBACtH,sEAAsE;aACzE;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,2DAA2D;aACzE;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;gBACtC,OAAO,EAAE,SAAS;aACnB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;gBACtC,OAAO,EAAE,QAAQ;aAClB;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
1
+ {"version":3,"file":"validate-edit.js","sourceRoot":"","sources":["../../src/tools/validate-edit.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAS;IAChC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EACT,iHAAiH;QACjH,iHAAiH;QACjH,kHAAkH;QAClH,oGAAoG;QACpG,oGAAoG;IACtG,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,OAAO,CAAC;QACnB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,QAAQ,EAAE,CAAC;aACZ;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,sDAAsD;aACpE;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EACT,sHAAsH;oBACtH,sEAAsE;aACzE;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,2DAA2D;aACzE;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;gBACtC,OAAO,EAAE,SAAS;aACnB;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC;gBACrC,OAAO,EAAE,SAAS;gBAClB,WAAW,EACT,qGAAqG;oBACrG,yGAAyG;oBACzG,6EAA6E;aAChF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EACT,gHAAgH;oBAChH,wFAAwF;aAC3F;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,sGAAsG;aACzG;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;gBACtC,OAAO,EAAE,QAAQ;gBACjB,WAAW,EACT,0GAA0G;oBAC1G,gCAAgC;aACnC;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const vfxBlockEdit: Tool;
@@ -0,0 +1,51 @@
1
+ // M20 Plan 7 / T20.7.2 — VFX Graph block_edit. Compile-gated + auto-activating
2
+ // (see vfx-list.ts). Mutating: patches a single property on a block in a .vfx
3
+ // — paths_hint is the .vfx asset path, EditorSettle lifecycle. VFX Graph's
4
+ // editor graph model is internal and requires the VFX Graph window to be open
5
+ // (no stable public headless entry point); when the model cannot be reached,
6
+ // the tool returns a structured vfx_block_edit_requires_editor_window error and
7
+ // the agent falls back to manual editing.
8
+ export const vfxBlockEdit = {
9
+ name: "unity_open_mcp_vfx_block_edit",
10
+ description: "Patch a single property on a block in a VisualEffectGraph (.vfx). " +
11
+ "block_selector names the target block (by type-name fragment, e.g. " +
12
+ "'SetVelocity', 'SetColor'); property is the field name; value_json is the " +
13
+ "new value. Mutating: runs the full gate path; paths_hint is the .vfx asset " +
14
+ "path. Requires com.unity.visualeffectgraph. VFX Graph's editor graph model " +
15
+ "is internal and requires the VFX Graph window to be open; when it is not, " +
16
+ "the tool returns a structured vfx_block_edit_requires_editor_window error " +
17
+ "— open the graph in the VFX Graph window (unity_open_mcp_vfx_open) and " +
18
+ "retry, or edit the block manually in the window.",
19
+ inputSchema: {
20
+ type: "object",
21
+ required: ["asset_path", "block_selector", "property", "value_json", "paths_hint"],
22
+ properties: {
23
+ asset_path: {
24
+ type: "string",
25
+ description: "VisualEffectGraph asset path ('Assets/.../*.vfx').",
26
+ },
27
+ block_selector: {
28
+ type: "string",
29
+ description: "Target block selector — a type-name fragment (e.g. 'SetVelocity', " +
30
+ "'SetColor'). The first block whose type name contains the fragment " +
31
+ "(case-insensitive) is patched.",
32
+ },
33
+ property: {
34
+ type: "string",
35
+ description: "The block field to patch.",
36
+ },
37
+ value_json: {
38
+ type: "string",
39
+ description: "The new value as a JSON literal (string / number / bool / object).",
40
+ },
41
+ paths_hint: {
42
+ type: "array",
43
+ items: { type: "string" },
44
+ description: "Mutation scope — must include the .vfx asset path.",
45
+ },
46
+ gate: { enum: ["enforce", "warn", "off"], default: "enforce" },
47
+ },
48
+ additionalProperties: false,
49
+ },
50
+ };
51
+ //# sourceMappingURL=vfx-block-edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vfx-block-edit.js","sourceRoot":"","sources":["../../src/tools/vfx-block-edit.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,8EAA8E;AAC9E,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,gFAAgF;AAChF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,YAAY,GAAS;IAChC,IAAI,EAAE,+BAA+B;IACrC,WAAW,EACT,oEAAoE;QACpE,qEAAqE;QACrE,4EAA4E;QAC5E,6EAA6E;QAC7E,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,yEAAyE;QACzE,kDAAkD;IACpD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,CAAC;QAClF,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oDAAoD;aAClE;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,oEAAoE;oBACpE,qEAAqE;oBACrE,gCAAgC;aACnC;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2BAA2B;aACzC;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,oEAAoE;aACvE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,oDAAoD;aAClE;YACD,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE;SAC/D;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const vfxList: Tool;
@@ -0,0 +1,31 @@
1
+ // M20 Plan 7 / T20.7.2 — VFX Graph list. Compile-gated in the bridge
2
+ // (UNITY_OPEN_MCP_EXT_VFX on com.unity.visualeffectgraph) + auto-activating
3
+ // (the `vfx` group auto-activates when the package is present). Read-only:
4
+ // enumerates every VisualEffectGraph (.vfx) asset under Assets/. Gate = Off,
5
+ // no paths_hint. Uses the public runtime VisualEffectAsset type so the path is
6
+ // version-stable.
7
+ export const vfxList = {
8
+ name: "unity_open_mcp_vfx_list",
9
+ description: "List every VisualEffectGraph (.vfx) asset under Assets/. Read-only (Gate " +
10
+ "is Off, no paths_hint). Returns each asset's path, name, and file size. " +
11
+ "Optionally filter by name/path substring (filter) and cap results " +
12
+ "(max_results, default 100, max 500). Requires the " +
13
+ "com.unity.visualeffectgraph package installed.",
14
+ inputSchema: {
15
+ type: "object",
16
+ properties: {
17
+ filter: {
18
+ type: "string",
19
+ description: "Optional substring filter on asset path (case-insensitive).",
20
+ },
21
+ max_results: {
22
+ type: "integer",
23
+ description: "Maximum number of assets to return (default 100, clamped to 500).",
24
+ minimum: 1,
25
+ maximum: 500,
26
+ },
27
+ },
28
+ additionalProperties: false,
29
+ },
30
+ };
31
+ //# sourceMappingURL=vfx-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vfx-list.js","sourceRoot":"","sources":["../../src/tools/vfx-list.ts"],"names":[],"mappings":"AAEA,qEAAqE;AACrE,4EAA4E;AAC5E,2EAA2E;AAC3E,6EAA6E;AAC7E,+EAA+E;AAC/E,kBAAkB;AAClB,MAAM,CAAC,MAAM,OAAO,GAAS;IAC3B,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EACT,2EAA2E;QAC3E,0EAA0E;QAC1E,oEAAoE;QACpE,oDAAoD;QACpD,gDAAgD;IAClD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,6DAA6D;aAChE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,mEAAmE;gBACrE,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,GAAG;aACb;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const vfxOpen: Tool;
@@ -0,0 +1,29 @@
1
+ // M20 Plan 7 / T20.7.2 — VFX Graph open. Compile-gated + auto-activating
2
+ // (see vfx-list.ts). Read-only window bring-up: opens the .vfx in the VFX Graph
3
+ // editor window and returns a structured summary (context count, block count,
4
+ // exposed property count, property names). Non-mutating state change —
5
+ // Gate = Off, no paths_hint. The summary reads off the public runtime
6
+ // VisualEffectAsset type and the stable serialized file format, so it is
7
+ // version-stable without editor-model reflection.
8
+ export const vfxOpen = {
9
+ name: "unity_open_mcp_vfx_open",
10
+ description: "Open a VisualEffectGraph (.vfx) asset in the VFX Graph editor window and " +
11
+ "return a structured summary (context count, block count, exposed property " +
12
+ "count, property names). Read-only window bring-up — Gate is Off, no " +
13
+ "paths_hint. The summary reads off the public runtime VisualEffectAsset type " +
14
+ "and the serialized file format, so it is stable across package versions. " +
15
+ "Requires com.unity.visualeffectgraph.",
16
+ inputSchema: {
17
+ type: "object",
18
+ required: ["asset_path"],
19
+ properties: {
20
+ asset_path: {
21
+ type: "string",
22
+ description: "VisualEffectGraph asset path ('Assets/.../*.vfx'). Highest and only " +
23
+ "resolver.",
24
+ },
25
+ },
26
+ additionalProperties: false,
27
+ },
28
+ };
29
+ //# sourceMappingURL=vfx-open.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vfx-open.js","sourceRoot":"","sources":["../../src/tools/vfx-open.ts"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,gFAAgF;AAChF,8EAA8E;AAC9E,uEAAuE;AACvE,sEAAsE;AACtE,yEAAyE;AACzE,kDAAkD;AAClD,MAAM,CAAC,MAAM,OAAO,GAAS;IAC3B,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EACT,2EAA2E;QAC3E,4EAA4E;QAC5E,sEAAsE;QACtE,8EAA8E;QAC9E,2EAA2E;QAC3E,uCAAuC;IACzC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,YAAY,CAAC;QACxB,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,sEAAsE;oBACtE,WAAW;aACd;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unity-open-mcp",
3
- "version": "0.1.2",
3
+ "version": "0.3.0",
4
4
  "description": "MCP server (stdio) routing tool calls to the live Unity Open MCP Bridge or batch Unity processes.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",