@keeveeg/godot-mcp 1.0.1 → 1.0.3

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 (224) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/server/dist/config.js +1 -1
  4. package/server/dist/godot-bridge.d.ts.map +1 -1
  5. package/server/dist/godot-bridge.js +264 -261
  6. package/server/dist/godot-bridge.js.map +1 -1
  7. package/server/dist/index.js +46 -45
  8. package/server/dist/server.d.ts.map +1 -1
  9. package/server/dist/server.js +25 -23
  10. package/server/dist/server.js.map +1 -1
  11. package/server/dist/tools/addon_management.d.ts.map +1 -1
  12. package/server/dist/tools/addon_management.js +37 -57
  13. package/server/dist/tools/addon_management.js.map +1 -1
  14. package/server/dist/tools/analysis.d.ts.map +1 -1
  15. package/server/dist/tools/analysis.js +21 -37
  16. package/server/dist/tools/analysis.js.map +1 -1
  17. package/server/dist/tools/animation.d.ts.map +1 -1
  18. package/server/dist/tools/animation.js +95 -135
  19. package/server/dist/tools/animation.js.map +1 -1
  20. package/server/dist/tools/audio.d.ts.map +1 -1
  21. package/server/dist/tools/audio.js +81 -109
  22. package/server/dist/tools/audio.js.map +1 -1
  23. package/server/dist/tools/audio_config.d.ts.map +1 -1
  24. package/server/dist/tools/audio_config.js +50 -76
  25. package/server/dist/tools/audio_config.js.map +1 -1
  26. package/server/dist/tools/batch.d.ts.map +1 -1
  27. package/server/dist/tools/batch.js +57 -89
  28. package/server/dist/tools/batch.js.map +1 -1
  29. package/server/dist/tools/build_config.d.ts.map +1 -1
  30. package/server/dist/tools/build_config.js +59 -91
  31. package/server/dist/tools/build_config.js.map +1 -1
  32. package/server/dist/tools/debug_config.d.ts.map +1 -1
  33. package/server/dist/tools/debug_config.js +46 -70
  34. package/server/dist/tools/debug_config.js.map +1 -1
  35. package/server/dist/tools/debugging.d.ts.map +1 -1
  36. package/server/dist/tools/debugging.js +51 -83
  37. package/server/dist/tools/debugging.js.map +1 -1
  38. package/server/dist/tools/editor.d.ts.map +1 -1
  39. package/server/dist/tools/editor.js +54 -90
  40. package/server/dist/tools/editor.js.map +1 -1
  41. package/server/dist/tools/editor_config.d.ts.map +1 -1
  42. package/server/dist/tools/editor_config.js +53 -85
  43. package/server/dist/tools/editor_config.js.map +1 -1
  44. package/server/dist/tools/export.d.ts.map +1 -1
  45. package/server/dist/tools/export.js +46 -74
  46. package/server/dist/tools/export.js.map +1 -1
  47. package/server/dist/tools/gameplay_automation.d.ts.map +1 -1
  48. package/server/dist/tools/gameplay_automation.js +70 -102
  49. package/server/dist/tools/gameplay_automation.js.map +1 -1
  50. package/server/dist/tools/index.js +42 -42
  51. package/server/dist/tools/input.d.ts.map +1 -1
  52. package/server/dist/tools/input.js +68 -100
  53. package/server/dist/tools/input.js.map +1 -1
  54. package/server/dist/tools/memory_profiling.d.ts.map +1 -1
  55. package/server/dist/tools/memory_profiling.js +31 -51
  56. package/server/dist/tools/memory_profiling.js.map +1 -1
  57. package/server/dist/tools/navigation.d.ts.map +1 -1
  58. package/server/dist/tools/navigation.js +86 -126
  59. package/server/dist/tools/navigation.js.map +1 -1
  60. package/server/dist/tools/node.d.ts.map +1 -1
  61. package/server/dist/tools/node.js +134 -202
  62. package/server/dist/tools/node.js.map +1 -1
  63. package/server/dist/tools/node_config.d.ts.map +1 -1
  64. package/server/dist/tools/node_config.js +58 -90
  65. package/server/dist/tools/node_config.js.map +1 -1
  66. package/server/dist/tools/particles.d.ts.map +1 -1
  67. package/server/dist/tools/particles.js +75 -111
  68. package/server/dist/tools/particles.js.map +1 -1
  69. package/server/dist/tools/physics.d.ts.map +1 -1
  70. package/server/dist/tools/physics.js +67 -99
  71. package/server/dist/tools/physics.js.map +1 -1
  72. package/server/dist/tools/physics_config.d.ts.map +1 -1
  73. package/server/dist/tools/physics_config.js +56 -88
  74. package/server/dist/tools/physics_config.js.map +1 -1
  75. package/server/dist/tools/platform_export.d.ts.map +1 -1
  76. package/server/dist/tools/platform_export.js +45 -69
  77. package/server/dist/tools/platform_export.js.map +1 -1
  78. package/server/dist/tools/platform_specific.d.ts.map +1 -1
  79. package/server/dist/tools/platform_specific.js +61 -85
  80. package/server/dist/tools/platform_specific.js.map +1 -1
  81. package/server/dist/tools/profiling.d.ts.map +1 -1
  82. package/server/dist/tools/profiling.js +13 -21
  83. package/server/dist/tools/profiling.js.map +1 -1
  84. package/server/dist/tools/project.d.ts.map +1 -1
  85. package/server/dist/tools/project.js +51 -79
  86. package/server/dist/tools/project.js.map +1 -1
  87. package/server/dist/tools/project_config.d.ts.map +1 -1
  88. package/server/dist/tools/project_config.js +88 -136
  89. package/server/dist/tools/project_config.js.map +1 -1
  90. package/server/dist/tools/project_creation.d.ts.map +1 -1
  91. package/server/dist/tools/project_creation.js +96 -140
  92. package/server/dist/tools/project_creation.js.map +1 -1
  93. package/server/dist/tools/rendering_config.d.ts.map +1 -1
  94. package/server/dist/tools/rendering_config.js +67 -103
  95. package/server/dist/tools/rendering_config.js.map +1 -1
  96. package/server/dist/tools/resource.js +77 -117
  97. package/server/dist/tools/resource_config.d.ts.map +1 -1
  98. package/server/dist/tools/resource_config.js +45 -69
  99. package/server/dist/tools/resource_config.js.map +1 -1
  100. package/server/dist/tools/runtime.d.ts.map +1 -1
  101. package/server/dist/tools/runtime.js +148 -224
  102. package/server/dist/tools/runtime.js.map +1 -1
  103. package/server/dist/tools/save_load.d.ts.map +1 -1
  104. package/server/dist/tools/save_load.js +36 -56
  105. package/server/dist/tools/save_load.js.map +1 -1
  106. package/server/dist/tools/scene.d.ts.map +1 -1
  107. package/server/dist/tools/scene.js +78 -122
  108. package/server/dist/tools/scene.js.map +1 -1
  109. package/server/dist/tools/scene3d.d.ts.map +1 -1
  110. package/server/dist/tools/scene3d.js +51 -75
  111. package/server/dist/tools/scene3d.js.map +1 -1
  112. package/server/dist/tools/scene_config.d.ts.map +1 -1
  113. package/server/dist/tools/scene_config.js +48 -72
  114. package/server/dist/tools/scene_config.js.map +1 -1
  115. package/server/dist/tools/script.js +68 -104
  116. package/server/dist/tools/script.js.map +1 -1
  117. package/server/dist/tools/shader.d.ts.map +1 -1
  118. package/server/dist/tools/shader.js +75 -111
  119. package/server/dist/tools/shader.js.map +1 -1
  120. package/server/dist/tools/shared-types.d.ts +2 -2
  121. package/server/dist/tools/shared-types.d.ts.map +1 -1
  122. package/server/dist/tools/shared-types.js +38 -36
  123. package/server/dist/tools/shared-types.js.map +1 -1
  124. package/server/dist/tools/testing.d.ts.map +1 -1
  125. package/server/dist/tools/testing.js +47 -69
  126. package/server/dist/tools/testing.js.map +1 -1
  127. package/server/dist/tools/theme.js +62 -90
  128. package/server/dist/tools/tilemap.js +58 -82
  129. package/server/dist/tools/visual_testing.d.ts.map +1 -1
  130. package/server/dist/tools/visual_testing.js +50 -74
  131. package/server/dist/tools/visual_testing.js.map +1 -1
  132. package/server/dist/types.js +15 -15
  133. package/server/dist/tools/accessibility.d.ts +0 -7
  134. package/server/dist/tools/accessibility.d.ts.map +0 -1
  135. package/server/dist/tools/accessibility.js +0 -71
  136. package/server/dist/tools/accessibility.js.map +0 -1
  137. package/server/dist/tools/analytics.d.ts +0 -7
  138. package/server/dist/tools/analytics.d.ts.map +0 -1
  139. package/server/dist/tools/analytics.js +0 -76
  140. package/server/dist/tools/analytics.js.map +0 -1
  141. package/server/dist/tools/asset_pipeline.d.ts +0 -7
  142. package/server/dist/tools/asset_pipeline.d.ts.map +0 -1
  143. package/server/dist/tools/asset_pipeline.js +0 -102
  144. package/server/dist/tools/asset_pipeline.js.map +0 -1
  145. package/server/dist/tools/asset_scaffolding.d.ts +0 -7
  146. package/server/dist/tools/asset_scaffolding.d.ts.map +0 -1
  147. package/server/dist/tools/asset_scaffolding.js +0 -113
  148. package/server/dist/tools/asset_scaffolding.js.map +0 -1
  149. package/server/dist/tools/cicd_pipeline.d.ts +0 -7
  150. package/server/dist/tools/cicd_pipeline.d.ts.map +0 -1
  151. package/server/dist/tools/cicd_pipeline.js +0 -125
  152. package/server/dist/tools/cicd_pipeline.js.map +0 -1
  153. package/server/dist/tools/cloud_services.d.ts +0 -7
  154. package/server/dist/tools/cloud_services.d.ts.map +0 -1
  155. package/server/dist/tools/cloud_services.js +0 -97
  156. package/server/dist/tools/cloud_services.js.map +0 -1
  157. package/server/dist/tools/code_generation.d.ts +0 -7
  158. package/server/dist/tools/code_generation.d.ts.map +0 -1
  159. package/server/dist/tools/code_generation.js +0 -79
  160. package/server/dist/tools/code_generation.js.map +0 -1
  161. package/server/dist/tools/code_quality.d.ts +0 -7
  162. package/server/dist/tools/code_quality.d.ts.map +0 -1
  163. package/server/dist/tools/code_quality.js +0 -98
  164. package/server/dist/tools/code_quality.js.map +0 -1
  165. package/server/dist/tools/collaboration.d.ts +0 -7
  166. package/server/dist/tools/collaboration.d.ts.map +0 -1
  167. package/server/dist/tools/collaboration.js +0 -73
  168. package/server/dist/tools/collaboration.js.map +0 -1
  169. package/server/dist/tools/documentation_tools.d.ts +0 -7
  170. package/server/dist/tools/documentation_tools.d.ts.map +0 -1
  171. package/server/dist/tools/documentation_tools.js +0 -89
  172. package/server/dist/tools/documentation_tools.js.map +0 -1
  173. package/server/dist/tools/game_template.d.ts +0 -7
  174. package/server/dist/tools/game_template.d.ts.map +0 -1
  175. package/server/dist/tools/game_template.js +0 -112
  176. package/server/dist/tools/game_template.js.map +0 -1
  177. package/server/dist/tools/git_integration.d.ts +0 -7
  178. package/server/dist/tools/git_integration.d.ts.map +0 -1
  179. package/server/dist/tools/git_integration.js +0 -75
  180. package/server/dist/tools/git_integration.js.map +0 -1
  181. package/server/dist/tools/headless_testing.d.ts +0 -7
  182. package/server/dist/tools/headless_testing.d.ts.map +0 -1
  183. package/server/dist/tools/headless_testing.js +0 -65
  184. package/server/dist/tools/headless_testing.js.map +0 -1
  185. package/server/dist/tools/iap_monetization.d.ts +0 -7
  186. package/server/dist/tools/iap_monetization.d.ts.map +0 -1
  187. package/server/dist/tools/iap_monetization.js +0 -70
  188. package/server/dist/tools/iap_monetization.js.map +0 -1
  189. package/server/dist/tools/localization.d.ts +0 -7
  190. package/server/dist/tools/localization.d.ts.map +0 -1
  191. package/server/dist/tools/localization.js +0 -97
  192. package/server/dist/tools/localization.js.map +0 -1
  193. package/server/dist/tools/marketing.d.ts +0 -7
  194. package/server/dist/tools/marketing.d.ts.map +0 -1
  195. package/server/dist/tools/marketing.js +0 -87
  196. package/server/dist/tools/marketing.js.map +0 -1
  197. package/server/dist/tools/mod_support.d.ts +0 -7
  198. package/server/dist/tools/mod_support.d.ts.map +0 -1
  199. package/server/dist/tools/mod_support.js +0 -93
  200. package/server/dist/tools/mod_support.js.map +0 -1
  201. package/server/dist/tools/networking.d.ts +0 -7
  202. package/server/dist/tools/networking.d.ts.map +0 -1
  203. package/server/dist/tools/networking.js +0 -94
  204. package/server/dist/tools/networking.js.map +0 -1
  205. package/server/dist/tools/performance_optimization.d.ts +0 -7
  206. package/server/dist/tools/performance_optimization.d.ts.map +0 -1
  207. package/server/dist/tools/performance_optimization.js +0 -75
  208. package/server/dist/tools/performance_optimization.js.map +0 -1
  209. package/server/dist/tools/scene_scaffolding.d.ts +0 -7
  210. package/server/dist/tools/scene_scaffolding.d.ts.map +0 -1
  211. package/server/dist/tools/scene_scaffolding.js +0 -110
  212. package/server/dist/tools/scene_scaffolding.js.map +0 -1
  213. package/server/dist/tools/script_scaffolding.d.ts +0 -7
  214. package/server/dist/tools/script_scaffolding.d.ts.map +0 -1
  215. package/server/dist/tools/script_scaffolding.js +0 -115
  216. package/server/dist/tools/script_scaffolding.js.map +0 -1
  217. package/server/dist/tools/security.d.ts +0 -7
  218. package/server/dist/tools/security.d.ts.map +0 -1
  219. package/server/dist/tools/security.js +0 -73
  220. package/server/dist/tools/security.js.map +0 -1
  221. package/server/dist/tools/version_control_advanced.d.ts +0 -7
  222. package/server/dist/tools/version_control_advanced.d.ts.map +0 -1
  223. package/server/dist/tools/version_control_advanced.js +0 -100
  224. package/server/dist/tools/version_control_advanced.js.map +0 -1
@@ -4,126 +4,82 @@
4
4
  import { callGodot } from '../server.js';
5
5
  import { z, ScenePath } from './shared-types.js';
6
6
  export function registerSceneTools(server, bridge) {
7
- // 1. get_scene_tree
8
- server.registerTool(
9
- 'get_scene_tree',
10
- {
11
- description: 'Get the node tree of the specified or currently open scene',
12
- inputSchema: {
13
- max_depth: z.number().int().positive().optional().default(15).describe('Maximum tree depth to serialize (default: 15)'),
14
- },
15
- },
16
- async (args) => callGodot(bridge, 'scene/get_tree', args),
17
- );
18
- // 2. get_scene_file_content
19
- server.registerTool(
20
- 'get_scene_file_content',
21
- {
22
- description: 'Read the raw .tscn/.scn file content of a scene',
23
- inputSchema: {
24
- path: ScenePath,
25
- },
26
- },
27
- async (args) => callGodot(bridge, 'scene/get_file_content', args),
28
- );
29
- // 3. create_scene
30
- server.registerTool(
31
- 'create_scene',
32
- {
33
- description: 'Create a new empty scene with a specified root node type',
34
- inputSchema: {
35
- path: ScenePath.describe("Path to save the scene (e.g. 'res://scenes/new.tscn')"),
36
- root_node_type: z.string().optional().describe("Root node type (e.g. 'Node2D', 'Control')"),
37
- },
38
- },
39
- async (args) => callGodot(bridge, 'scene/create', args),
40
- );
41
- // 4. open_scene
42
- server.registerTool(
43
- 'open_scene',
44
- {
45
- description: 'Open a scene file in the editor',
46
- inputSchema: {
47
- path: ScenePath.describe('Scene file path to open'),
48
- },
49
- },
50
- async (args) => callGodot(bridge, 'scene/open', args),
51
- );
52
- // 5. delete_scene
53
- server.registerTool(
54
- 'delete_scene',
55
- {
56
- description: 'Delete a scene file from the project',
57
- inputSchema: {
58
- path: ScenePath.describe('Scene file path to delete'),
59
- force: z.boolean().optional().describe('Force close and delete if scene is currently open'),
60
- },
61
- },
62
- async (args) => callGodot(bridge, 'scene/delete', args),
63
- );
64
- // 6. add_scene_instance
65
- server.registerTool(
66
- 'add_scene_instance',
67
- {
68
- description: 'Add an instance of a scene as a child of a node in the current scene',
69
- inputSchema: {
70
- scene_path: ScenePath.describe('Path to the scene to instantiate'),
71
- parent_path: z.string().optional().describe('Parent node path, defaults to scene root'),
72
- },
73
- },
74
- async (args) => callGodot(bridge, 'scene/add_instance', args),
75
- );
76
- // 7. play_scene
77
- server.registerTool(
78
- 'play_scene',
79
- {
80
- description: 'Start playing the current or specified scene',
81
- inputSchema: {
82
- mode: z.enum(['main', 'current', 'custom']).optional().describe("Play mode: 'main', 'current', or 'custom'"),
83
- scene_path: z.string().optional().describe("Scene to play when mode is 'custom'"),
84
- },
85
- },
86
- async (args) => callGodot(bridge, 'scene/play', args),
87
- );
88
- // 8. stop_scene
89
- server.registerTool(
90
- 'stop_scene',
91
- {
92
- description: 'Stop the currently playing scene',
93
- inputSchema: {},
94
- },
95
- async () => callGodot(bridge, 'scene/stop'),
96
- );
97
- // 9. save_scene
98
- server.registerTool(
99
- 'save_scene',
100
- {
101
- description: 'Save the current scene or save it to a new path',
102
- inputSchema: {
103
- path: z.string().optional().describe('Path of the scene to save (defaults to current)'),
104
- },
105
- },
106
- async (args) => callGodot(bridge, 'scene/save', args),
107
- );
108
- // 10. get_loaded_scenes
109
- server.registerTool(
110
- 'get_loaded_scenes',
111
- {
112
- description: 'Get a list of all currently loaded scenes in the editor',
113
- inputSchema: {},
114
- },
115
- async () => callGodot(bridge, 'scene/get_loaded'),
116
- );
117
- // 11. set_main_scene
118
- server.registerTool(
119
- 'set_main_scene',
120
- {
121
- description: "Set the project's main scene",
122
- inputSchema: {
123
- path: ScenePath.describe('Scene file path to set as main scene'),
124
- },
125
- },
126
- async (args) => callGodot(bridge, 'scene/set_main', args),
127
- );
7
+ // 1. get_scene_tree
8
+ server.registerTool('get_scene_tree', {
9
+ description: 'Get the node tree of the specified or currently open scene',
10
+ inputSchema: {
11
+ max_depth: z.number().int().positive().optional().default(15).describe('Maximum tree depth to serialize (default: 15)'),
12
+ },
13
+ }, async (args) => callGodot(bridge, 'scene/get_tree', args));
14
+ // 2. get_scene_file_content
15
+ server.registerTool('get_scene_file_content', {
16
+ description: 'Read the raw .tscn/.scn file content of a scene',
17
+ inputSchema: {
18
+ path: ScenePath,
19
+ },
20
+ }, async (args) => callGodot(bridge, 'scene/get_file_content', args));
21
+ // 3. create_scene
22
+ server.registerTool('create_scene', {
23
+ description: 'Create a new empty scene with a specified root node type',
24
+ inputSchema: {
25
+ path: ScenePath.describe("Path to save the scene (e.g. 'res://scenes/new.tscn')"),
26
+ root_node_type: z.string().optional().describe("Root node type (e.g. 'Node2D', 'Control')"),
27
+ },
28
+ }, async (args) => callGodot(bridge, 'scene/create', args));
29
+ // 4. open_scene
30
+ server.registerTool('open_scene', {
31
+ description: 'Open a scene file in the editor',
32
+ inputSchema: {
33
+ path: ScenePath.describe('Scene file path to open'),
34
+ },
35
+ }, async (args) => callGodot(bridge, 'scene/open', args));
36
+ // 5. delete_scene
37
+ server.registerTool('delete_scene', {
38
+ description: 'Delete a scene file from the project',
39
+ inputSchema: {
40
+ path: ScenePath.describe('Scene file path to delete'),
41
+ force: z.boolean().optional().describe('Force close and delete if scene is currently open'),
42
+ },
43
+ }, async (args) => callGodot(bridge, 'scene/delete', args));
44
+ // 6. add_scene_instance
45
+ server.registerTool('add_scene_instance', {
46
+ description: 'Add an instance of a scene as a child of a node in the current scene',
47
+ inputSchema: {
48
+ scene_path: ScenePath.describe('Path to the scene to instantiate'),
49
+ parent_path: z.string().optional().describe('Parent node path, defaults to scene root'),
50
+ },
51
+ }, async (args) => callGodot(bridge, 'scene/add_instance', args));
52
+ // 7. play_scene
53
+ server.registerTool('play_scene', {
54
+ description: 'Start playing the current or specified scene. Required before using any runtime tools (get_game_*, capture_frames, etc.)',
55
+ inputSchema: {
56
+ mode: z.enum(['main', 'current', 'custom']).optional().describe("Play mode: 'main' (main scene), 'current' (open scene), or 'custom' (specified by scene_path)"),
57
+ scene_path: z.string().optional().describe("Scene to play when mode is 'custom'"),
58
+ },
59
+ }, async (args) => callGodot(bridge, 'scene/play', args));
60
+ // 8. stop_scene
61
+ server.registerTool('stop_scene', {
62
+ description: 'Stop the currently playing scene',
63
+ inputSchema: {},
64
+ }, async () => callGodot(bridge, 'scene/stop'));
65
+ // 9. save_scene
66
+ server.registerTool('save_scene', {
67
+ description: 'Save the current scene or save it to a new path',
68
+ inputSchema: {
69
+ path: z.string().optional().describe('Path of the scene to save (defaults to current)'),
70
+ },
71
+ }, async (args) => callGodot(bridge, 'scene/save', args));
72
+ // 10. get_loaded_scenes
73
+ server.registerTool('get_loaded_scenes', {
74
+ description: 'Get a list of all currently loaded scenes in the editor',
75
+ inputSchema: {},
76
+ }, async () => callGodot(bridge, 'scene/get_loaded'));
77
+ // 11. set_main_scene
78
+ server.registerTool('set_main_scene', {
79
+ description: "Set the project's main scene",
80
+ inputSchema: {
81
+ path: ScenePath.describe('Scene file path to set as main scene'),
82
+ },
83
+ }, async (args) => callGodot(bridge, 'scene/set_main', args));
128
84
  }
129
- //# sourceMappingURL=scene.js.map
85
+ //# sourceMappingURL=scene.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scene.js","sourceRoot":"","sources":["../../src/tools/scene.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,MAAmB;IACvE,oBAAoB;IACpB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,WAAW,EAAE,4DAA4D;QACzE,WAAW,EAAE;YACX,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,+CAA+C,CAAC;SACxH;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAA+B,CAAC,CACrF,CAAC;IAEF,4BAA4B;IAC5B,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE;YACX,IAAI,EAAE,SAAS;SAChB;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,wBAAwB,EAAE,IAA+B,CAAC,CAC7F,CAAC;IAEF,kBAAkB;IAClB,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,0DAA0D;QACvE,WAAW,EAAE;YACX,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,uDAAuD,CAAC;YACjF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;SAC5F;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,IAA+B,CAAC,CACnF,CAAC;IAEF,gBAAgB;IAChB,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,iCAAiC;QAC9C,WAAW,EAAE;YACX,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAAC;SACpD;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,IAA+B,CAAC,CACjF,CAAC;IAEF,kBAAkB;IAClB,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,sCAAsC;QACnD,WAAW,EAAE;YACX,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACrD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;SAC5F;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,IAA+B,CAAC,CACnF,CAAC;IAEF,wBAAwB;IACxB,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,WAAW,EAAE,sEAAsE;QACnF,WAAW,EAAE;YACX,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAClE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;SACxF;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAA+B,CAAC,CACzF,CAAC;IAEF,gBAAgB;IAChB,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,8CAA8C;QAC3D,WAAW,EAAE;YACX,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;iBACnC,QAAQ,EAAE;iBACV,QAAQ,CAAC,2CAA2C,CAAC;YACxD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;SAClF;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,IAA+B,CAAC,CACjF,CAAC;IAEF,gBAAgB;IAChB,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,CAC5C,CAAC;IAEF,gBAAgB;IAChB,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;SACxF;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,IAA+B,CAAC,CACjF,CAAC;IAEF,wBAAwB;IACxB,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,WAAW,EAAE,yDAAyD;QACtE,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAClD,CAAC;IAEF,qBAAqB;IACrB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,WAAW,EAAE,8BAA8B;QAC3C,WAAW,EAAE;YACX,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,sCAAsC,CAAC;SACjE;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAA+B,CAAC,CACrF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"scene.js","sourceRoot":"","sources":["../../src/tools/scene.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scene3d.d.ts","sourceRoot":"","sources":["../../src/tools/scene3d.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CA4FjF"}
1
+ {"version":3,"file":"scene3d.d.ts","sourceRoot":"","sources":["../../src/tools/scene3d.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAgFjF"}
@@ -4,79 +4,55 @@
4
4
  import { callGodot } from '../server.js';
5
5
  import { z, NodePath, ParentPath, Properties, OptionalProperties } from './shared-types.js';
6
6
  export function registerScene3dTools(server, bridge) {
7
- // 1. add_mesh_instance
8
- server.registerTool(
9
- 'add_mesh_instance',
10
- {
11
- description: 'Add a MeshInstance3D with a primitive mesh type',
12
- inputSchema: {
13
- parent: ParentPath,
14
- mesh_type: z.enum(['cube', 'sphere', 'cylinder', 'capsule', 'plane', 'prism', 'torus']).describe('Primitive mesh type'),
15
- properties: OptionalProperties.describe('Mesh properties (size, material_path, etc.)'),
16
- },
17
- },
18
- async (args) => callGodot(bridge, 'scene3d/add_mesh', args),
19
- );
20
- // 2. setup_camera_3d
21
- server.registerTool(
22
- 'setup_camera_3d',
23
- {
24
- description: 'Add and configure a Camera3D node',
25
- inputSchema: {
26
- path: NodePath.describe('Camera node path'),
27
- properties: Properties.describe('Camera properties (fov, near, far, position, look_at, make_current, etc.)'),
28
- },
29
- },
30
- async (args) => callGodot(bridge, 'scene3d/setup_camera', args),
31
- );
32
- // 3. setup_lighting
33
- server.registerTool(
34
- 'setup_lighting',
35
- {
36
- description: 'Add a light node (DirectionalLight3D, OmniLight3D, SpotLight3D)',
37
- inputSchema: {
38
- parent: ParentPath,
39
- type: z.enum(['omni', 'spot', 'directional']).describe('Light type'),
40
- properties: OptionalProperties.describe('Light properties (color, energy, position, shadow_enabled, etc.)'),
41
- },
42
- },
43
- async (args) => callGodot(bridge, 'scene3d/setup_lighting', args),
44
- );
45
- // 4. setup_environment
46
- server.registerTool(
47
- 'setup_environment',
48
- {
49
- description: 'Configure the WorldEnvironment for the 3D scene',
50
- inputSchema: {
51
- path: NodePath.describe('WorldEnvironment node path'),
52
- properties: Properties.describe('Environment properties (background_mode, background_color, ambient_light_color, fog_enabled, glow_enabled, etc.)'),
53
- },
54
- },
55
- async (args) => callGodot(bridge, 'scene3d/setup_environment', args),
56
- );
57
- // 5. add_gridmap
58
- server.registerTool(
59
- 'add_gridmap',
60
- {
61
- description: 'Add a GridMap node for 3D tile-based level design',
62
- inputSchema: {
63
- parent: ParentPath,
64
- properties: OptionalProperties.describe('GridMap properties (mesh_library_path, cell_size, etc.)'),
65
- },
66
- },
67
- async (args) => callGodot(bridge, 'scene3d/add_gridmap', args),
68
- );
69
- // 6. set_material_3d
70
- server.registerTool(
71
- 'set_material_3d',
72
- {
73
- description: 'Create and apply a StandardMaterial3D or ShaderMaterial to a mesh',
74
- inputSchema: {
75
- path: NodePath.describe('MeshInstance3D node path'),
76
- properties: Properties.describe('Material properties (albedo_color, metallic, roughness, shader_path, etc.)'),
77
- },
78
- },
79
- async (args) => callGodot(bridge, 'scene3d/set_material', args),
80
- );
7
+ // 1. add_mesh_instance
8
+ server.registerTool('add_mesh_instance', {
9
+ description: 'Add a MeshInstance3D with a primitive mesh type',
10
+ inputSchema: {
11
+ parent: ParentPath,
12
+ mesh_type: z.enum(['cube', 'sphere', 'cylinder', 'capsule', 'plane', 'prism', 'torus']).describe('Primitive mesh type'),
13
+ properties: OptionalProperties.describe('Mesh properties (size, material_path, etc.)'),
14
+ },
15
+ }, async (args) => callGodot(bridge, 'scene3d/add_mesh', args));
16
+ // 2. setup_camera_3d
17
+ server.registerTool('setup_camera_3d', {
18
+ description: 'Add and configure a Camera3D node',
19
+ inputSchema: {
20
+ path: NodePath.describe('Camera node path'),
21
+ properties: Properties.describe('Camera properties (fov, near, far, position, look_at, make_current, etc.)'),
22
+ },
23
+ }, async (args) => callGodot(bridge, 'scene3d/setup_camera', args));
24
+ // 3. setup_lighting
25
+ server.registerTool('setup_lighting', {
26
+ description: 'Add a light node (DirectionalLight3D, OmniLight3D, SpotLight3D)',
27
+ inputSchema: {
28
+ parent: ParentPath,
29
+ type: z.enum(['omni', 'spot', 'directional']).describe('Light type'),
30
+ properties: OptionalProperties.describe('Light properties (color, energy, position, shadow_enabled, etc.)'),
31
+ },
32
+ }, async (args) => callGodot(bridge, 'scene3d/setup_lighting', args));
33
+ // 4. setup_environment
34
+ server.registerTool('setup_environment', {
35
+ description: 'Configure the WorldEnvironment for the 3D scene',
36
+ inputSchema: {
37
+ path: NodePath.describe('WorldEnvironment node path'),
38
+ properties: Properties.describe('Environment properties (background_mode, background_color, ambient_light_color, fog_enabled, glow_enabled, etc.)'),
39
+ },
40
+ }, async (args) => callGodot(bridge, 'scene3d/setup_environment', args));
41
+ // 5. add_gridmap
42
+ server.registerTool('add_gridmap', {
43
+ description: 'Add a GridMap node for 3D tile-based level design',
44
+ inputSchema: {
45
+ parent: ParentPath,
46
+ properties: OptionalProperties.describe('GridMap properties (mesh_library_path, cell_size, etc.)'),
47
+ },
48
+ }, async (args) => callGodot(bridge, 'scene3d/add_gridmap', args));
49
+ // 6. set_material_3d
50
+ server.registerTool('set_material_3d', {
51
+ description: 'Create and apply a StandardMaterial3D or ShaderMaterial to a mesh',
52
+ inputSchema: {
53
+ path: NodePath.describe('MeshInstance3D node path'),
54
+ properties: Properties.describe('Material properties (albedo_color, metallic, roughness, shader_path, etc.)'),
55
+ },
56
+ }, async (args) => callGodot(bridge, 'scene3d/set_material', args));
81
57
  }
82
- //# sourceMappingURL=scene3d.js.map
58
+ //# sourceMappingURL=scene3d.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scene3d.js","sourceRoot":"","sources":["../../src/tools/scene3d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scene3d.js","sourceRoot":"","sources":["../../src/tools/scene3d.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scene_config.d.ts","sourceRoot":"","sources":["../../src/tools/scene_config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CA+ErF"}
1
+ {"version":3,"file":"scene_config.d.ts","sourceRoot":"","sources":["../../src/tools/scene_config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CA6ErF"}
@@ -4,76 +4,52 @@
4
4
  import { callGodot } from '../server.js';
5
5
  import { z, NodePath, OptionalScenePath } from './shared-types.js';
6
6
  export function registerSceneConfigTools(server, bridge) {
7
- // 1. get_scene_inheritance
8
- server.registerTool(
9
- 'get_scene_inheritance',
10
- {
11
- description: 'Get the scene inheritance chain (instantiated scenes, inherited scenes)',
12
- inputSchema: {
13
- scene_path: OptionalScenePath.describe('Scene file path (empty for current scene)'),
14
- },
15
- },
16
- async (args) => callGodot(bridge, 'scene_config/get_inheritance', args),
17
- );
18
- // 2. set_scene_unique_name
19
- server.registerTool(
20
- 'set_scene_unique_name',
21
- {
22
- description: 'Toggle the unique name flag on a node (accessible as %NodeName)',
23
- inputSchema: {
24
- node_path: NodePath.describe('Node path within the scene'),
25
- unique: z.boolean().optional().default(true).describe('Enable (true) or disable (false) unique name (default: true)'),
26
- },
27
- },
28
- async (args) => callGodot(bridge, 'scene_config/set_unique_name', args),
29
- );
30
- // 3. get_scene_groups
31
- server.registerTool(
32
- 'get_scene_groups',
33
- {
34
- description: 'Get all groups used in a scene and which nodes belong to each',
35
- inputSchema: {
36
- scene_path: OptionalScenePath.describe('Scene file path (empty for current scene)'),
37
- },
38
- },
39
- async (args) => callGodot(bridge, 'scene_config/get_groups', args),
40
- );
41
- // 4. set_scene_group
42
- server.registerTool(
43
- 'set_scene_group',
44
- {
45
- description: 'Add or remove a node from a group',
46
- inputSchema: {
47
- node_path: NodePath.describe('Node path within the current scene'),
48
- group: z.string().describe('Group name'),
49
- add: z.boolean().optional().default(true).describe('true to add to group, false to remove (default: true)'),
50
- },
51
- },
52
- async (args) => callGodot(bridge, 'scene_config/set_group', args),
53
- );
54
- // 5. get_scene_meta
55
- server.registerTool(
56
- 'get_scene_meta',
57
- {
58
- description: "Get metadata stored on a scene's root node",
59
- inputSchema: {
60
- scene_path: OptionalScenePath.describe('Scene file path (empty for current scene)'),
61
- },
62
- },
63
- async (args) => callGodot(bridge, 'scene_config/get_meta', args),
64
- );
65
- // 6. set_scene_meta
66
- server.registerTool(
67
- 'set_scene_meta',
68
- {
69
- description: "Set metadata on the current scene's root node",
70
- inputSchema: {
71
- scene_path: z.string().optional().describe('Omit or pass empty string — only the current scene is supported'),
72
- key: z.string().describe('Metadata key'),
73
- value: z.unknown().describe('Metadata value (string, number, bool, array, or dict)'),
74
- },
75
- },
76
- async (args) => callGodot(bridge, 'scene_config/set_meta', args),
77
- );
7
+ // 1. get_scene_inheritance
8
+ server.registerTool('get_scene_inheritance', {
9
+ description: 'Get the scene inheritance chain (instantiated scenes, inherited scenes)',
10
+ inputSchema: {
11
+ scene_path: OptionalScenePath.describe('Scene file path (empty for current scene)'),
12
+ },
13
+ }, async (args) => callGodot(bridge, 'scene_config/get_inheritance', args));
14
+ // 2. set_scene_unique_name
15
+ server.registerTool('set_scene_unique_name', {
16
+ description: 'Toggle the unique name flag on a node (accessible as %NodeName)',
17
+ inputSchema: {
18
+ node_path: NodePath.describe('Node path within the scene'),
19
+ unique: z.boolean().optional().default(true).describe('Enable (true) or disable (false) unique name (default: true)'),
20
+ },
21
+ }, async (args) => callGodot(bridge, 'scene_config/set_unique_name', args));
22
+ // 3. get_scene_groups
23
+ server.registerTool('get_scene_groups', {
24
+ description: 'Get all groups used in a scene and which nodes belong to each',
25
+ inputSchema: {
26
+ scene_path: OptionalScenePath.describe('Scene file path (empty for current scene)'),
27
+ },
28
+ }, async (args) => callGodot(bridge, 'scene_config/get_groups', args));
29
+ // 4. set_scene_group
30
+ server.registerTool('set_scene_group', {
31
+ description: 'Add or remove a node from a group',
32
+ inputSchema: {
33
+ node_path: NodePath.describe('Node path within the current scene'),
34
+ group: z.string().describe('Group name'),
35
+ add: z.boolean().optional().default(true).describe('true to add to group, false to remove (default: true)'),
36
+ },
37
+ }, async (args) => callGodot(bridge, 'scene_config/set_group', args));
38
+ // 5. get_scene_meta
39
+ server.registerTool('get_scene_meta', {
40
+ description: "Get metadata stored on a scene's root node",
41
+ inputSchema: {
42
+ scene_path: OptionalScenePath.describe('Scene file path (empty for current scene)'),
43
+ },
44
+ }, async (args) => callGodot(bridge, 'scene_config/get_meta', args));
45
+ // 6. set_scene_meta
46
+ server.registerTool('set_scene_meta', {
47
+ description: "Set metadata on the current scene's root node",
48
+ inputSchema: {
49
+ scene_path: z.string().optional().describe('Omit or pass empty string only the current scene is supported'),
50
+ key: z.string().describe('Metadata key'),
51
+ value: z.unknown().describe('Metadata value (string, number, bool, array, or dict)'),
52
+ },
53
+ }, async (args) => callGodot(bridge, 'scene_config/set_meta', args));
78
54
  }
79
- //# sourceMappingURL=scene_config.js.map
55
+ //# sourceMappingURL=scene_config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scene_config.js","sourceRoot":"","sources":["../../src/tools/scene_config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scene_config.js","sourceRoot":"","sources":["../../src/tools/scene_config.ts"],"names":[],"mappings":"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"}