@keeveeg/godot-mcp 1.0.2 → 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 (223) hide show
  1. package/package.json +1 -1
  2. package/server/dist/config.js +1 -1
  3. package/server/dist/godot-bridge.d.ts.map +1 -1
  4. package/server/dist/godot-bridge.js +264 -261
  5. package/server/dist/godot-bridge.js.map +1 -1
  6. package/server/dist/index.js +46 -45
  7. package/server/dist/server.d.ts.map +1 -1
  8. package/server/dist/server.js +25 -23
  9. package/server/dist/server.js.map +1 -1
  10. package/server/dist/tools/addon_management.d.ts.map +1 -1
  11. package/server/dist/tools/addon_management.js +37 -57
  12. package/server/dist/tools/addon_management.js.map +1 -1
  13. package/server/dist/tools/analysis.d.ts.map +1 -1
  14. package/server/dist/tools/analysis.js +21 -37
  15. package/server/dist/tools/analysis.js.map +1 -1
  16. package/server/dist/tools/animation.d.ts.map +1 -1
  17. package/server/dist/tools/animation.js +95 -135
  18. package/server/dist/tools/animation.js.map +1 -1
  19. package/server/dist/tools/audio.d.ts.map +1 -1
  20. package/server/dist/tools/audio.js +81 -109
  21. package/server/dist/tools/audio.js.map +1 -1
  22. package/server/dist/tools/audio_config.d.ts.map +1 -1
  23. package/server/dist/tools/audio_config.js +50 -76
  24. package/server/dist/tools/audio_config.js.map +1 -1
  25. package/server/dist/tools/batch.d.ts.map +1 -1
  26. package/server/dist/tools/batch.js +57 -89
  27. package/server/dist/tools/batch.js.map +1 -1
  28. package/server/dist/tools/build_config.d.ts.map +1 -1
  29. package/server/dist/tools/build_config.js +59 -91
  30. package/server/dist/tools/build_config.js.map +1 -1
  31. package/server/dist/tools/debug_config.d.ts.map +1 -1
  32. package/server/dist/tools/debug_config.js +46 -70
  33. package/server/dist/tools/debug_config.js.map +1 -1
  34. package/server/dist/tools/debugging.d.ts.map +1 -1
  35. package/server/dist/tools/debugging.js +51 -83
  36. package/server/dist/tools/debugging.js.map +1 -1
  37. package/server/dist/tools/editor.d.ts.map +1 -1
  38. package/server/dist/tools/editor.js +54 -90
  39. package/server/dist/tools/editor.js.map +1 -1
  40. package/server/dist/tools/editor_config.d.ts.map +1 -1
  41. package/server/dist/tools/editor_config.js +53 -85
  42. package/server/dist/tools/editor_config.js.map +1 -1
  43. package/server/dist/tools/export.d.ts.map +1 -1
  44. package/server/dist/tools/export.js +46 -74
  45. package/server/dist/tools/export.js.map +1 -1
  46. package/server/dist/tools/gameplay_automation.d.ts.map +1 -1
  47. package/server/dist/tools/gameplay_automation.js +70 -102
  48. package/server/dist/tools/gameplay_automation.js.map +1 -1
  49. package/server/dist/tools/index.js +42 -42
  50. package/server/dist/tools/input.d.ts.map +1 -1
  51. package/server/dist/tools/input.js +68 -100
  52. package/server/dist/tools/input.js.map +1 -1
  53. package/server/dist/tools/memory_profiling.d.ts.map +1 -1
  54. package/server/dist/tools/memory_profiling.js +31 -51
  55. package/server/dist/tools/memory_profiling.js.map +1 -1
  56. package/server/dist/tools/navigation.d.ts.map +1 -1
  57. package/server/dist/tools/navigation.js +86 -126
  58. package/server/dist/tools/navigation.js.map +1 -1
  59. package/server/dist/tools/node.d.ts.map +1 -1
  60. package/server/dist/tools/node.js +134 -202
  61. package/server/dist/tools/node.js.map +1 -1
  62. package/server/dist/tools/node_config.d.ts.map +1 -1
  63. package/server/dist/tools/node_config.js +58 -90
  64. package/server/dist/tools/node_config.js.map +1 -1
  65. package/server/dist/tools/particles.d.ts.map +1 -1
  66. package/server/dist/tools/particles.js +75 -111
  67. package/server/dist/tools/particles.js.map +1 -1
  68. package/server/dist/tools/physics.d.ts.map +1 -1
  69. package/server/dist/tools/physics.js +67 -99
  70. package/server/dist/tools/physics.js.map +1 -1
  71. package/server/dist/tools/physics_config.d.ts.map +1 -1
  72. package/server/dist/tools/physics_config.js +56 -88
  73. package/server/dist/tools/physics_config.js.map +1 -1
  74. package/server/dist/tools/platform_export.d.ts.map +1 -1
  75. package/server/dist/tools/platform_export.js +45 -69
  76. package/server/dist/tools/platform_export.js.map +1 -1
  77. package/server/dist/tools/platform_specific.d.ts.map +1 -1
  78. package/server/dist/tools/platform_specific.js +61 -85
  79. package/server/dist/tools/platform_specific.js.map +1 -1
  80. package/server/dist/tools/profiling.d.ts.map +1 -1
  81. package/server/dist/tools/profiling.js +13 -21
  82. package/server/dist/tools/profiling.js.map +1 -1
  83. package/server/dist/tools/project.d.ts.map +1 -1
  84. package/server/dist/tools/project.js +51 -79
  85. package/server/dist/tools/project.js.map +1 -1
  86. package/server/dist/tools/project_config.d.ts.map +1 -1
  87. package/server/dist/tools/project_config.js +88 -136
  88. package/server/dist/tools/project_config.js.map +1 -1
  89. package/server/dist/tools/project_creation.d.ts.map +1 -1
  90. package/server/dist/tools/project_creation.js +96 -140
  91. package/server/dist/tools/project_creation.js.map +1 -1
  92. package/server/dist/tools/rendering_config.d.ts.map +1 -1
  93. package/server/dist/tools/rendering_config.js +67 -103
  94. package/server/dist/tools/rendering_config.js.map +1 -1
  95. package/server/dist/tools/resource.js +77 -117
  96. package/server/dist/tools/resource_config.d.ts.map +1 -1
  97. package/server/dist/tools/resource_config.js +45 -69
  98. package/server/dist/tools/resource_config.js.map +1 -1
  99. package/server/dist/tools/runtime.d.ts.map +1 -1
  100. package/server/dist/tools/runtime.js +148 -224
  101. package/server/dist/tools/runtime.js.map +1 -1
  102. package/server/dist/tools/save_load.d.ts.map +1 -1
  103. package/server/dist/tools/save_load.js +36 -56
  104. package/server/dist/tools/save_load.js.map +1 -1
  105. package/server/dist/tools/scene.d.ts.map +1 -1
  106. package/server/dist/tools/scene.js +78 -122
  107. package/server/dist/tools/scene.js.map +1 -1
  108. package/server/dist/tools/scene3d.d.ts.map +1 -1
  109. package/server/dist/tools/scene3d.js +51 -75
  110. package/server/dist/tools/scene3d.js.map +1 -1
  111. package/server/dist/tools/scene_config.d.ts.map +1 -1
  112. package/server/dist/tools/scene_config.js +48 -72
  113. package/server/dist/tools/scene_config.js.map +1 -1
  114. package/server/dist/tools/script.js +68 -104
  115. package/server/dist/tools/script.js.map +1 -1
  116. package/server/dist/tools/shader.d.ts.map +1 -1
  117. package/server/dist/tools/shader.js +75 -111
  118. package/server/dist/tools/shader.js.map +1 -1
  119. package/server/dist/tools/shared-types.d.ts +2 -2
  120. package/server/dist/tools/shared-types.d.ts.map +1 -1
  121. package/server/dist/tools/shared-types.js +38 -36
  122. package/server/dist/tools/shared-types.js.map +1 -1
  123. package/server/dist/tools/testing.d.ts.map +1 -1
  124. package/server/dist/tools/testing.js +47 -69
  125. package/server/dist/tools/testing.js.map +1 -1
  126. package/server/dist/tools/theme.js +62 -90
  127. package/server/dist/tools/tilemap.js +58 -82
  128. package/server/dist/tools/visual_testing.d.ts.map +1 -1
  129. package/server/dist/tools/visual_testing.js +50 -74
  130. package/server/dist/tools/visual_testing.js.map +1 -1
  131. package/server/dist/types.js +15 -15
  132. package/server/dist/tools/accessibility.d.ts +0 -7
  133. package/server/dist/tools/accessibility.d.ts.map +0 -1
  134. package/server/dist/tools/accessibility.js +0 -71
  135. package/server/dist/tools/accessibility.js.map +0 -1
  136. package/server/dist/tools/analytics.d.ts +0 -7
  137. package/server/dist/tools/analytics.d.ts.map +0 -1
  138. package/server/dist/tools/analytics.js +0 -76
  139. package/server/dist/tools/analytics.js.map +0 -1
  140. package/server/dist/tools/asset_pipeline.d.ts +0 -7
  141. package/server/dist/tools/asset_pipeline.d.ts.map +0 -1
  142. package/server/dist/tools/asset_pipeline.js +0 -102
  143. package/server/dist/tools/asset_pipeline.js.map +0 -1
  144. package/server/dist/tools/asset_scaffolding.d.ts +0 -7
  145. package/server/dist/tools/asset_scaffolding.d.ts.map +0 -1
  146. package/server/dist/tools/asset_scaffolding.js +0 -113
  147. package/server/dist/tools/asset_scaffolding.js.map +0 -1
  148. package/server/dist/tools/cicd_pipeline.d.ts +0 -7
  149. package/server/dist/tools/cicd_pipeline.d.ts.map +0 -1
  150. package/server/dist/tools/cicd_pipeline.js +0 -125
  151. package/server/dist/tools/cicd_pipeline.js.map +0 -1
  152. package/server/dist/tools/cloud_services.d.ts +0 -7
  153. package/server/dist/tools/cloud_services.d.ts.map +0 -1
  154. package/server/dist/tools/cloud_services.js +0 -97
  155. package/server/dist/tools/cloud_services.js.map +0 -1
  156. package/server/dist/tools/code_generation.d.ts +0 -7
  157. package/server/dist/tools/code_generation.d.ts.map +0 -1
  158. package/server/dist/tools/code_generation.js +0 -79
  159. package/server/dist/tools/code_generation.js.map +0 -1
  160. package/server/dist/tools/code_quality.d.ts +0 -7
  161. package/server/dist/tools/code_quality.d.ts.map +0 -1
  162. package/server/dist/tools/code_quality.js +0 -98
  163. package/server/dist/tools/code_quality.js.map +0 -1
  164. package/server/dist/tools/collaboration.d.ts +0 -7
  165. package/server/dist/tools/collaboration.d.ts.map +0 -1
  166. package/server/dist/tools/collaboration.js +0 -73
  167. package/server/dist/tools/collaboration.js.map +0 -1
  168. package/server/dist/tools/documentation_tools.d.ts +0 -7
  169. package/server/dist/tools/documentation_tools.d.ts.map +0 -1
  170. package/server/dist/tools/documentation_tools.js +0 -89
  171. package/server/dist/tools/documentation_tools.js.map +0 -1
  172. package/server/dist/tools/game_template.d.ts +0 -7
  173. package/server/dist/tools/game_template.d.ts.map +0 -1
  174. package/server/dist/tools/game_template.js +0 -112
  175. package/server/dist/tools/game_template.js.map +0 -1
  176. package/server/dist/tools/git_integration.d.ts +0 -7
  177. package/server/dist/tools/git_integration.d.ts.map +0 -1
  178. package/server/dist/tools/git_integration.js +0 -75
  179. package/server/dist/tools/git_integration.js.map +0 -1
  180. package/server/dist/tools/headless_testing.d.ts +0 -7
  181. package/server/dist/tools/headless_testing.d.ts.map +0 -1
  182. package/server/dist/tools/headless_testing.js +0 -65
  183. package/server/dist/tools/headless_testing.js.map +0 -1
  184. package/server/dist/tools/iap_monetization.d.ts +0 -7
  185. package/server/dist/tools/iap_monetization.d.ts.map +0 -1
  186. package/server/dist/tools/iap_monetization.js +0 -70
  187. package/server/dist/tools/iap_monetization.js.map +0 -1
  188. package/server/dist/tools/localization.d.ts +0 -7
  189. package/server/dist/tools/localization.d.ts.map +0 -1
  190. package/server/dist/tools/localization.js +0 -97
  191. package/server/dist/tools/localization.js.map +0 -1
  192. package/server/dist/tools/marketing.d.ts +0 -7
  193. package/server/dist/tools/marketing.d.ts.map +0 -1
  194. package/server/dist/tools/marketing.js +0 -87
  195. package/server/dist/tools/marketing.js.map +0 -1
  196. package/server/dist/tools/mod_support.d.ts +0 -7
  197. package/server/dist/tools/mod_support.d.ts.map +0 -1
  198. package/server/dist/tools/mod_support.js +0 -93
  199. package/server/dist/tools/mod_support.js.map +0 -1
  200. package/server/dist/tools/networking.d.ts +0 -7
  201. package/server/dist/tools/networking.d.ts.map +0 -1
  202. package/server/dist/tools/networking.js +0 -94
  203. package/server/dist/tools/networking.js.map +0 -1
  204. package/server/dist/tools/performance_optimization.d.ts +0 -7
  205. package/server/dist/tools/performance_optimization.d.ts.map +0 -1
  206. package/server/dist/tools/performance_optimization.js +0 -75
  207. package/server/dist/tools/performance_optimization.js.map +0 -1
  208. package/server/dist/tools/scene_scaffolding.d.ts +0 -7
  209. package/server/dist/tools/scene_scaffolding.d.ts.map +0 -1
  210. package/server/dist/tools/scene_scaffolding.js +0 -110
  211. package/server/dist/tools/scene_scaffolding.js.map +0 -1
  212. package/server/dist/tools/script_scaffolding.d.ts +0 -7
  213. package/server/dist/tools/script_scaffolding.d.ts.map +0 -1
  214. package/server/dist/tools/script_scaffolding.js +0 -115
  215. package/server/dist/tools/script_scaffolding.js.map +0 -1
  216. package/server/dist/tools/security.d.ts +0 -7
  217. package/server/dist/tools/security.d.ts.map +0 -1
  218. package/server/dist/tools/security.js +0 -73
  219. package/server/dist/tools/security.js.map +0 -1
  220. package/server/dist/tools/version_control_advanced.d.ts +0 -7
  221. package/server/dist/tools/version_control_advanced.d.ts.map +0 -1
  222. package/server/dist/tools/version_control_advanced.js +0 -100
  223. 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":"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"}
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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"}