@satelliteoflove/godot-mcp 0.1.2 → 0.1.4

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.
@@ -0,0 +1,326 @@
1
+ import { z } from 'zod';
2
+ import { defineTool } from '../core/define-tool.js';
3
+ const Vector2iSchema = z.object({
4
+ x: z.number().int(),
5
+ y: z.number().int(),
6
+ });
7
+ const Vector3iSchema = z.object({
8
+ x: z.number().int(),
9
+ y: z.number().int(),
10
+ z: z.number().int(),
11
+ });
12
+ export const listTilemapLayers = defineTool({
13
+ name: 'list_tilemap_layers',
14
+ description: 'Find all TileMapLayer nodes in the scene',
15
+ schema: z.object({
16
+ root_path: z
17
+ .string()
18
+ .optional()
19
+ .describe('Starting node path, defaults to scene root'),
20
+ }),
21
+ async execute({ root_path }, { godot }) {
22
+ const result = await godot.sendCommand('list_tilemap_layers', { root_path });
23
+ if (result.tilemap_layers.length === 0) {
24
+ return 'No TileMapLayer nodes found in scene';
25
+ }
26
+ return `Found ${result.tilemap_layers.length} TileMapLayer(s):\n${result.tilemap_layers.map((l) => ` - ${l.path}`).join('\n')}`;
27
+ },
28
+ });
29
+ export const getTilemapLayerInfo = defineTool({
30
+ name: 'get_tilemap_layer_info',
31
+ description: 'Get TileMapLayer properties (tileset, enabled, etc.)',
32
+ schema: z.object({
33
+ node_path: z.string().describe('Path to TileMapLayer node'),
34
+ }),
35
+ async execute({ node_path }, { godot }) {
36
+ const result = await godot.sendCommand('get_tilemap_layer_info', { node_path });
37
+ return JSON.stringify(result, null, 2);
38
+ },
39
+ });
40
+ export const getTilesetInfo = defineTool({
41
+ name: 'get_tileset_info',
42
+ description: 'Get TileSet sources and atlas information',
43
+ schema: z.object({
44
+ node_path: z.string().describe('Path to TileMapLayer node'),
45
+ }),
46
+ async execute({ node_path }, { godot }) {
47
+ const result = await godot.sendCommand('get_tileset_info', { node_path });
48
+ return JSON.stringify(result, null, 2);
49
+ },
50
+ });
51
+ export const getUsedCells = defineTool({
52
+ name: 'get_used_cells',
53
+ description: 'Get all non-empty cell coordinates in a TileMapLayer',
54
+ schema: z.object({
55
+ node_path: z.string().describe('Path to TileMapLayer node'),
56
+ }),
57
+ async execute({ node_path }, { godot }) {
58
+ const result = await godot.sendCommand('get_used_cells', { node_path });
59
+ return JSON.stringify(result, null, 2);
60
+ },
61
+ });
62
+ export const getCell = defineTool({
63
+ name: 'get_cell',
64
+ description: 'Get cell data (source_id, atlas_coords, alternative_tile)',
65
+ schema: z.object({
66
+ node_path: z.string().describe('Path to TileMapLayer node'),
67
+ coords: Vector2iSchema.describe('Cell coordinates'),
68
+ }),
69
+ async execute({ node_path, coords }, { godot }) {
70
+ const result = await godot.sendCommand('get_cell', { node_path, coords });
71
+ return JSON.stringify(result, null, 2);
72
+ },
73
+ });
74
+ export const setCell = defineTool({
75
+ name: 'set_cell',
76
+ description: 'Set a cell with tile data',
77
+ schema: z.object({
78
+ node_path: z.string().describe('Path to TileMapLayer node'),
79
+ coords: Vector2iSchema.describe('Cell coordinates'),
80
+ source_id: z.number().int().optional().describe('TileSet source ID (default 0)'),
81
+ atlas_coords: Vector2iSchema.optional().describe('Atlas coordinates (default 0,0)'),
82
+ alternative_tile: z
83
+ .number()
84
+ .int()
85
+ .optional()
86
+ .describe('Alternative tile ID (default 0)'),
87
+ }),
88
+ async execute({ node_path, coords, source_id, atlas_coords, alternative_tile }, { godot }) {
89
+ const result = await godot.sendCommand('set_cell', {
90
+ node_path,
91
+ coords,
92
+ source_id,
93
+ atlas_coords,
94
+ alternative_tile,
95
+ });
96
+ return `Set cell at (${result.coords.x}, ${result.coords.y}) with source ${result.source_id}, atlas (${result.atlas_coords.x}, ${result.atlas_coords.y})`;
97
+ },
98
+ });
99
+ export const eraseCell = defineTool({
100
+ name: 'erase_cell',
101
+ description: 'Clear a single cell',
102
+ schema: z.object({
103
+ node_path: z.string().describe('Path to TileMapLayer node'),
104
+ coords: Vector2iSchema.describe('Cell coordinates to erase'),
105
+ }),
106
+ async execute({ node_path, coords }, { godot }) {
107
+ const result = await godot.sendCommand('erase_cell', { node_path, coords });
108
+ return `Erased cell at (${result.erased.x}, ${result.erased.y})`;
109
+ },
110
+ });
111
+ export const clearLayer = defineTool({
112
+ name: 'clear_layer',
113
+ description: 'Clear all cells in a TileMapLayer',
114
+ schema: z.object({
115
+ node_path: z.string().describe('Path to TileMapLayer node'),
116
+ }),
117
+ async execute({ node_path }, { godot }) {
118
+ const result = await godot.sendCommand('clear_layer', { node_path });
119
+ return `Cleared layer: ${result.cells_removed} cells removed`;
120
+ },
121
+ });
122
+ export const getCellsInRegion = defineTool({
123
+ name: 'get_cells_in_region',
124
+ description: 'Get cells within a rectangular region',
125
+ schema: z.object({
126
+ node_path: z.string().describe('Path to TileMapLayer node'),
127
+ min_coords: Vector2iSchema.describe('Minimum corner of region'),
128
+ max_coords: Vector2iSchema.describe('Maximum corner of region'),
129
+ }),
130
+ async execute({ node_path, min_coords, max_coords }, { godot }) {
131
+ const result = await godot.sendCommand('get_cells_in_region', { node_path, min_coords, max_coords });
132
+ return JSON.stringify(result, null, 2);
133
+ },
134
+ });
135
+ export const setCellsBatch = defineTool({
136
+ name: 'set_cells_batch',
137
+ description: 'Set multiple cells at once',
138
+ schema: z.object({
139
+ node_path: z.string().describe('Path to TileMapLayer node'),
140
+ cells: z
141
+ .array(z.object({
142
+ coords: Vector2iSchema,
143
+ source_id: z.number().int().optional(),
144
+ atlas_coords: Vector2iSchema.optional(),
145
+ alternative_tile: z.number().int().optional(),
146
+ }))
147
+ .describe('Array of cells to set'),
148
+ }),
149
+ async execute({ node_path, cells }, { godot }) {
150
+ const result = await godot.sendCommand('set_cells_batch', { node_path, cells });
151
+ return `Set ${result.cells_set} cells`;
152
+ },
153
+ });
154
+ export const convertCoords = defineTool({
155
+ name: 'convert_coords',
156
+ description: 'Convert between local and map coordinates',
157
+ schema: z.object({
158
+ node_path: z.string().describe('Path to TileMapLayer node'),
159
+ local_position: z
160
+ .object({ x: z.number(), y: z.number() })
161
+ .optional()
162
+ .describe('Local position to convert to map coords'),
163
+ map_coords: Vector2iSchema.optional().describe('Map coordinates to convert to local position'),
164
+ }),
165
+ async execute({ node_path, local_position, map_coords }, { godot }) {
166
+ const result = await godot.sendCommand('convert_coords', { node_path, local_position, map_coords });
167
+ return JSON.stringify(result, null, 2);
168
+ },
169
+ });
170
+ export const listGridmaps = defineTool({
171
+ name: 'list_gridmaps',
172
+ description: 'Find all GridMap nodes in the scene',
173
+ schema: z.object({
174
+ root_path: z
175
+ .string()
176
+ .optional()
177
+ .describe('Starting node path, defaults to scene root'),
178
+ }),
179
+ async execute({ root_path }, { godot }) {
180
+ const result = await godot.sendCommand('list_gridmaps', { root_path });
181
+ if (result.gridmaps.length === 0) {
182
+ return 'No GridMap nodes found in scene';
183
+ }
184
+ return `Found ${result.gridmaps.length} GridMap(s):\n${result.gridmaps.map((g) => ` - ${g.path}`).join('\n')}`;
185
+ },
186
+ });
187
+ export const getGridmapInfo = defineTool({
188
+ name: 'get_gridmap_info',
189
+ description: 'Get GridMap properties (mesh_library, cell_size, etc.)',
190
+ schema: z.object({
191
+ node_path: z.string().describe('Path to GridMap node'),
192
+ }),
193
+ async execute({ node_path }, { godot }) {
194
+ const result = await godot.sendCommand('get_gridmap_info', { node_path });
195
+ return JSON.stringify(result, null, 2);
196
+ },
197
+ });
198
+ export const getMeshlibInfo = defineTool({
199
+ name: 'get_meshlib_info',
200
+ description: 'Get MeshLibrary item names and indices',
201
+ schema: z.object({
202
+ node_path: z.string().describe('Path to GridMap node'),
203
+ }),
204
+ async execute({ node_path }, { godot }) {
205
+ const result = await godot.sendCommand('get_meshlib_info', { node_path });
206
+ return JSON.stringify(result, null, 2);
207
+ },
208
+ });
209
+ export const getGridmapUsedCells = defineTool({
210
+ name: 'get_gridmap_used_cells',
211
+ description: 'Get all non-empty cell coordinates in a GridMap',
212
+ schema: z.object({
213
+ node_path: z.string().describe('Path to GridMap node'),
214
+ }),
215
+ async execute({ node_path }, { godot }) {
216
+ const result = await godot.sendCommand('get_gridmap_used_cells', { node_path });
217
+ return JSON.stringify(result, null, 2);
218
+ },
219
+ });
220
+ export const getGridmapCell = defineTool({
221
+ name: 'get_gridmap_cell',
222
+ description: 'Get cell data (item index, orientation)',
223
+ schema: z.object({
224
+ node_path: z.string().describe('Path to GridMap node'),
225
+ coords: Vector3iSchema.describe('Cell coordinates'),
226
+ }),
227
+ async execute({ node_path, coords }, { godot }) {
228
+ const result = await godot.sendCommand('get_gridmap_cell', { node_path, coords });
229
+ return JSON.stringify(result, null, 2);
230
+ },
231
+ });
232
+ export const setGridmapCell = defineTool({
233
+ name: 'set_gridmap_cell',
234
+ description: 'Set a cell with an item',
235
+ schema: z.object({
236
+ node_path: z.string().describe('Path to GridMap node'),
237
+ coords: Vector3iSchema.describe('Cell coordinates'),
238
+ item: z.number().int().describe('MeshLibrary item index'),
239
+ orientation: z
240
+ .number()
241
+ .int()
242
+ .optional()
243
+ .describe('Orientation (0-23, default 0)'),
244
+ }),
245
+ async execute({ node_path, coords, item, orientation }, { godot }) {
246
+ const result = await godot.sendCommand('set_gridmap_cell', { node_path, coords, item, orientation });
247
+ return `Set cell at (${result.coords.x}, ${result.coords.y}, ${result.coords.z}) with item ${result.item}, orientation ${result.orientation}`;
248
+ },
249
+ });
250
+ export const clearGridmapCell = defineTool({
251
+ name: 'clear_gridmap_cell',
252
+ description: 'Clear a single cell',
253
+ schema: z.object({
254
+ node_path: z.string().describe('Path to GridMap node'),
255
+ coords: Vector3iSchema.describe('Cell coordinates to clear'),
256
+ }),
257
+ async execute({ node_path, coords }, { godot }) {
258
+ const result = await godot.sendCommand('clear_gridmap_cell', { node_path, coords });
259
+ return `Cleared cell at (${result.cleared.x}, ${result.cleared.y}, ${result.cleared.z})`;
260
+ },
261
+ });
262
+ export const clearGridmap = defineTool({
263
+ name: 'clear_gridmap',
264
+ description: 'Clear all cells in a GridMap',
265
+ schema: z.object({
266
+ node_path: z.string().describe('Path to GridMap node'),
267
+ }),
268
+ async execute({ node_path }, { godot }) {
269
+ const result = await godot.sendCommand('clear_gridmap', { node_path });
270
+ return `Cleared GridMap: ${result.cells_removed} cells removed`;
271
+ },
272
+ });
273
+ export const getCellsByItem = defineTool({
274
+ name: 'get_cells_by_item',
275
+ description: 'Get all cells containing a specific item',
276
+ schema: z.object({
277
+ node_path: z.string().describe('Path to GridMap node'),
278
+ item: z.number().int().describe('MeshLibrary item index to search for'),
279
+ }),
280
+ async execute({ node_path, item }, { godot }) {
281
+ const result = await godot.sendCommand('get_cells_by_item', { node_path, item });
282
+ return JSON.stringify(result, null, 2);
283
+ },
284
+ });
285
+ export const setGridmapCellsBatch = defineTool({
286
+ name: 'set_gridmap_cells_batch',
287
+ description: 'Set multiple cells at once',
288
+ schema: z.object({
289
+ node_path: z.string().describe('Path to GridMap node'),
290
+ cells: z
291
+ .array(z.object({
292
+ coords: Vector3iSchema,
293
+ item: z.number().int(),
294
+ orientation: z.number().int().optional(),
295
+ }))
296
+ .describe('Array of cells to set'),
297
+ }),
298
+ async execute({ node_path, cells }, { godot }) {
299
+ const result = await godot.sendCommand('set_gridmap_cells_batch', { node_path, cells });
300
+ return `Set ${result.cells_set} cells`;
301
+ },
302
+ });
303
+ export const tilemapTools = [
304
+ listTilemapLayers,
305
+ getTilemapLayerInfo,
306
+ getTilesetInfo,
307
+ getUsedCells,
308
+ getCell,
309
+ setCell,
310
+ eraseCell,
311
+ clearLayer,
312
+ getCellsInRegion,
313
+ setCellsBatch,
314
+ convertCoords,
315
+ listGridmaps,
316
+ getGridmapInfo,
317
+ getMeshlibInfo,
318
+ getGridmapUsedCells,
319
+ getGridmapCell,
320
+ setGridmapCell,
321
+ clearGridmapCell,
322
+ clearGridmap,
323
+ getCellsByItem,
324
+ setGridmapCellsBatch,
325
+ ];
326
+ //# sourceMappingURL=tilemap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilemap.js","sourceRoot":"","sources":["../../src/tools/tilemap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@satelliteoflove/godot-mcp",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "MCP server for Godot Engine integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",