@keeveeg/godot-mcp 1.0.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.
- package/dist/config.d.ts +30 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +28 -0
- package/dist/config.js.map +1 -0
- package/dist/godot-bridge.d.ts +81 -0
- package/dist/godot-bridge.d.ts.map +1 -0
- package/dist/godot-bridge.js +294 -0
- package/dist/godot-bridge.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/index.js.map +1 -0
- package/dist/server.d.ts +25 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +45 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/accessibility.d.ts +7 -0
- package/dist/tools/accessibility.d.ts.map +1 -0
- package/dist/tools/accessibility.js +71 -0
- package/dist/tools/accessibility.js.map +1 -0
- package/dist/tools/addon_management.d.ts +7 -0
- package/dist/tools/addon_management.d.ts.map +1 -0
- package/dist/tools/addon_management.js +64 -0
- package/dist/tools/addon_management.js.map +1 -0
- package/dist/tools/analysis.d.ts +7 -0
- package/dist/tools/analysis.d.ts.map +1 -0
- package/dist/tools/analysis.js +43 -0
- package/dist/tools/analysis.js.map +1 -0
- package/dist/tools/analytics.d.ts +7 -0
- package/dist/tools/analytics.d.ts.map +1 -0
- package/dist/tools/analytics.js +76 -0
- package/dist/tools/analytics.js.map +1 -0
- package/dist/tools/animation.d.ts +7 -0
- package/dist/tools/animation.d.ts.map +1 -0
- package/dist/tools/animation.js +142 -0
- package/dist/tools/animation.js.map +1 -0
- package/dist/tools/asset_pipeline.d.ts +7 -0
- package/dist/tools/asset_pipeline.d.ts.map +1 -0
- package/dist/tools/asset_pipeline.js +102 -0
- package/dist/tools/asset_pipeline.js.map +1 -0
- package/dist/tools/asset_scaffolding.d.ts +7 -0
- package/dist/tools/asset_scaffolding.d.ts.map +1 -0
- package/dist/tools/asset_scaffolding.js +113 -0
- package/dist/tools/asset_scaffolding.js.map +1 -0
- package/dist/tools/audio.d.ts +7 -0
- package/dist/tools/audio.d.ts.map +1 -0
- package/dist/tools/audio.js +116 -0
- package/dist/tools/audio.js.map +1 -0
- package/dist/tools/audio_config.d.ts +7 -0
- package/dist/tools/audio_config.d.ts.map +1 -0
- package/dist/tools/audio_config.js +83 -0
- package/dist/tools/audio_config.js.map +1 -0
- package/dist/tools/batch.d.ts +7 -0
- package/dist/tools/batch.d.ts.map +1 -0
- package/dist/tools/batch.js +96 -0
- package/dist/tools/batch.js.map +1 -0
- package/dist/tools/build_config.d.ts +7 -0
- package/dist/tools/build_config.d.ts.map +1 -0
- package/dist/tools/build_config.js +98 -0
- package/dist/tools/build_config.js.map +1 -0
- package/dist/tools/cicd_pipeline.d.ts +7 -0
- package/dist/tools/cicd_pipeline.d.ts.map +1 -0
- package/dist/tools/cicd_pipeline.js +125 -0
- package/dist/tools/cicd_pipeline.js.map +1 -0
- package/dist/tools/cloud_services.d.ts +7 -0
- package/dist/tools/cloud_services.d.ts.map +1 -0
- package/dist/tools/cloud_services.js +97 -0
- package/dist/tools/cloud_services.js.map +1 -0
- package/dist/tools/code_generation.d.ts +7 -0
- package/dist/tools/code_generation.d.ts.map +1 -0
- package/dist/tools/code_generation.js +79 -0
- package/dist/tools/code_generation.js.map +1 -0
- package/dist/tools/code_quality.d.ts +7 -0
- package/dist/tools/code_quality.d.ts.map +1 -0
- package/dist/tools/code_quality.js +98 -0
- package/dist/tools/code_quality.js.map +1 -0
- package/dist/tools/collaboration.d.ts +7 -0
- package/dist/tools/collaboration.d.ts.map +1 -0
- package/dist/tools/collaboration.js +73 -0
- package/dist/tools/collaboration.js.map +1 -0
- package/dist/tools/debug_config.d.ts +7 -0
- package/dist/tools/debug_config.d.ts.map +1 -0
- package/dist/tools/debug_config.js +77 -0
- package/dist/tools/debug_config.js.map +1 -0
- package/dist/tools/debugging.d.ts +7 -0
- package/dist/tools/debugging.d.ts.map +1 -0
- package/dist/tools/debugging.js +90 -0
- package/dist/tools/debugging.js.map +1 -0
- package/dist/tools/documentation_tools.d.ts +7 -0
- package/dist/tools/documentation_tools.d.ts.map +1 -0
- package/dist/tools/documentation_tools.js +89 -0
- package/dist/tools/documentation_tools.js.map +1 -0
- package/dist/tools/editor.d.ts +7 -0
- package/dist/tools/editor.d.ts.map +1 -0
- package/dist/tools/editor.js +97 -0
- package/dist/tools/editor.js.map +1 -0
- package/dist/tools/editor_config.d.ts +7 -0
- package/dist/tools/editor_config.d.ts.map +1 -0
- package/dist/tools/editor_config.js +92 -0
- package/dist/tools/editor_config.js.map +1 -0
- package/dist/tools/export.d.ts +7 -0
- package/dist/tools/export.d.ts.map +1 -0
- package/dist/tools/export.js +81 -0
- package/dist/tools/export.js.map +1 -0
- package/dist/tools/game_template.d.ts +7 -0
- package/dist/tools/game_template.d.ts.map +1 -0
- package/dist/tools/game_template.js +112 -0
- package/dist/tools/game_template.js.map +1 -0
- package/dist/tools/gameplay_automation.d.ts +7 -0
- package/dist/tools/gameplay_automation.d.ts.map +1 -0
- package/dist/tools/gameplay_automation.js +109 -0
- package/dist/tools/gameplay_automation.js.map +1 -0
- package/dist/tools/git_integration.d.ts +7 -0
- package/dist/tools/git_integration.d.ts.map +1 -0
- package/dist/tools/git_integration.js +75 -0
- package/dist/tools/git_integration.js.map +1 -0
- package/dist/tools/headless_testing.d.ts +7 -0
- package/dist/tools/headless_testing.d.ts.map +1 -0
- package/dist/tools/headless_testing.js +65 -0
- package/dist/tools/headless_testing.js.map +1 -0
- package/dist/tools/iap_monetization.d.ts +7 -0
- package/dist/tools/iap_monetization.d.ts.map +1 -0
- package/dist/tools/iap_monetization.js +70 -0
- package/dist/tools/iap_monetization.js.map +1 -0
- package/dist/tools/index.d.ts +12 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +93 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/input.d.ts +7 -0
- package/dist/tools/input.d.ts.map +1 -0
- package/dist/tools/input.js +110 -0
- package/dist/tools/input.js.map +1 -0
- package/dist/tools/localization.d.ts +7 -0
- package/dist/tools/localization.d.ts.map +1 -0
- package/dist/tools/localization.js +97 -0
- package/dist/tools/localization.js.map +1 -0
- package/dist/tools/marketing.d.ts +7 -0
- package/dist/tools/marketing.d.ts.map +1 -0
- package/dist/tools/marketing.js +87 -0
- package/dist/tools/marketing.js.map +1 -0
- package/dist/tools/memory_profiling.d.ts +7 -0
- package/dist/tools/memory_profiling.d.ts.map +1 -0
- package/dist/tools/memory_profiling.js +58 -0
- package/dist/tools/memory_profiling.js.map +1 -0
- package/dist/tools/mod_support.d.ts +7 -0
- package/dist/tools/mod_support.d.ts.map +1 -0
- package/dist/tools/mod_support.js +93 -0
- package/dist/tools/mod_support.js.map +1 -0
- package/dist/tools/navigation.d.ts +7 -0
- package/dist/tools/navigation.d.ts.map +1 -0
- package/dist/tools/navigation.js +133 -0
- package/dist/tools/navigation.js.map +1 -0
- package/dist/tools/networking.d.ts +7 -0
- package/dist/tools/networking.d.ts.map +1 -0
- package/dist/tools/networking.js +94 -0
- package/dist/tools/networking.js.map +1 -0
- package/dist/tools/node.d.ts +7 -0
- package/dist/tools/node.d.ts.map +1 -0
- package/dist/tools/node.js +209 -0
- package/dist/tools/node.js.map +1 -0
- package/dist/tools/node_config.d.ts +7 -0
- package/dist/tools/node_config.d.ts.map +1 -0
- package/dist/tools/node_config.js +97 -0
- package/dist/tools/node_config.js.map +1 -0
- package/dist/tools/particles.d.ts +7 -0
- package/dist/tools/particles.d.ts.map +1 -0
- package/dist/tools/particles.js +118 -0
- package/dist/tools/particles.js.map +1 -0
- package/dist/tools/performance_optimization.d.ts +7 -0
- package/dist/tools/performance_optimization.d.ts.map +1 -0
- package/dist/tools/performance_optimization.js +75 -0
- package/dist/tools/performance_optimization.js.map +1 -0
- package/dist/tools/physics.d.ts +7 -0
- package/dist/tools/physics.d.ts.map +1 -0
- package/dist/tools/physics.js +106 -0
- package/dist/tools/physics.js.map +1 -0
- package/dist/tools/physics_config.d.ts +7 -0
- package/dist/tools/physics_config.d.ts.map +1 -0
- package/dist/tools/physics_config.js +95 -0
- package/dist/tools/physics_config.js.map +1 -0
- package/dist/tools/platform_export.d.ts +7 -0
- package/dist/tools/platform_export.d.ts.map +1 -0
- package/dist/tools/platform_export.js +76 -0
- package/dist/tools/platform_export.js.map +1 -0
- package/dist/tools/platform_specific.d.ts +7 -0
- package/dist/tools/platform_specific.d.ts.map +1 -0
- package/dist/tools/platform_specific.js +92 -0
- package/dist/tools/platform_specific.js.map +1 -0
- package/dist/tools/profiling.d.ts +7 -0
- package/dist/tools/profiling.d.ts.map +1 -0
- package/dist/tools/profiling.js +28 -0
- package/dist/tools/profiling.js.map +1 -0
- package/dist/tools/project.d.ts +7 -0
- package/dist/tools/project.d.ts.map +1 -0
- package/dist/tools/project.js +86 -0
- package/dist/tools/project.js.map +1 -0
- package/dist/tools/project_config.d.ts +7 -0
- package/dist/tools/project_config.d.ts.map +1 -0
- package/dist/tools/project_config.js +143 -0
- package/dist/tools/project_config.js.map +1 -0
- package/dist/tools/project_creation.d.ts +7 -0
- package/dist/tools/project_creation.d.ts.map +1 -0
- package/dist/tools/project_creation.js +147 -0
- package/dist/tools/project_creation.js.map +1 -0
- package/dist/tools/rendering_config.d.ts +7 -0
- package/dist/tools/rendering_config.d.ts.map +1 -0
- package/dist/tools/rendering_config.js +110 -0
- package/dist/tools/rendering_config.js.map +1 -0
- package/dist/tools/resource.d.ts +7 -0
- package/dist/tools/resource.d.ts.map +1 -0
- package/dist/tools/resource.js +124 -0
- package/dist/tools/resource.js.map +1 -0
- package/dist/tools/resource_config.d.ts +7 -0
- package/dist/tools/resource_config.d.ts.map +1 -0
- package/dist/tools/resource_config.js +76 -0
- package/dist/tools/resource_config.js.map +1 -0
- package/dist/tools/runtime.d.ts +7 -0
- package/dist/tools/runtime.d.ts.map +1 -0
- package/dist/tools/runtime.js +231 -0
- package/dist/tools/runtime.js.map +1 -0
- package/dist/tools/save_load.d.ts +7 -0
- package/dist/tools/save_load.d.ts.map +1 -0
- package/dist/tools/save_load.js +63 -0
- package/dist/tools/save_load.js.map +1 -0
- package/dist/tools/scene.d.ts +7 -0
- package/dist/tools/scene.d.ts.map +1 -0
- package/dist/tools/scene.js +129 -0
- package/dist/tools/scene.js.map +1 -0
- package/dist/tools/scene3d.d.ts +7 -0
- package/dist/tools/scene3d.d.ts.map +1 -0
- package/dist/tools/scene3d.js +82 -0
- package/dist/tools/scene3d.js.map +1 -0
- package/dist/tools/scene_config.d.ts +7 -0
- package/dist/tools/scene_config.d.ts.map +1 -0
- package/dist/tools/scene_config.js +79 -0
- package/dist/tools/scene_config.js.map +1 -0
- package/dist/tools/scene_scaffolding.d.ts +7 -0
- package/dist/tools/scene_scaffolding.d.ts.map +1 -0
- package/dist/tools/scene_scaffolding.js +110 -0
- package/dist/tools/scene_scaffolding.js.map +1 -0
- package/dist/tools/script.d.ts +7 -0
- package/dist/tools/script.d.ts.map +1 -0
- package/dist/tools/script.js +111 -0
- package/dist/tools/script.js.map +1 -0
- package/dist/tools/script_scaffolding.d.ts +7 -0
- package/dist/tools/script_scaffolding.d.ts.map +1 -0
- package/dist/tools/script_scaffolding.js +115 -0
- package/dist/tools/script_scaffolding.js.map +1 -0
- package/dist/tools/security.d.ts +7 -0
- package/dist/tools/security.d.ts.map +1 -0
- package/dist/tools/security.js +73 -0
- package/dist/tools/security.js.map +1 -0
- package/dist/tools/shader.d.ts +7 -0
- package/dist/tools/shader.d.ts.map +1 -0
- package/dist/tools/shader.js +118 -0
- package/dist/tools/shader.js.map +1 -0
- package/dist/tools/shared-types.d.ts +138 -0
- package/dist/tools/shared-types.d.ts.map +1 -0
- package/dist/tools/shared-types.js +170 -0
- package/dist/tools/shared-types.js.map +1 -0
- package/dist/tools/testing.d.ts +7 -0
- package/dist/tools/testing.d.ts.map +1 -0
- package/dist/tools/testing.js +78 -0
- package/dist/tools/testing.js.map +1 -0
- package/dist/tools/theme.d.ts +7 -0
- package/dist/tools/theme.d.ts.map +1 -0
- package/dist/tools/theme.js +97 -0
- package/dist/tools/theme.js.map +1 -0
- package/dist/tools/tilemap.d.ts +7 -0
- package/dist/tools/tilemap.d.ts.map +1 -0
- package/dist/tools/tilemap.js +89 -0
- package/dist/tools/tilemap.js.map +1 -0
- package/dist/tools/version_control_advanced.d.ts +7 -0
- package/dist/tools/version_control_advanced.d.ts.map +1 -0
- package/dist/tools/version_control_advanced.js +100 -0
- package/dist/tools/version_control_advanced.js.map +1 -0
- package/dist/tools/visual_testing.d.ts +7 -0
- package/dist/tools/visual_testing.d.ts.map +1 -0
- package/dist/tools/visual_testing.js +81 -0
- package/dist/tools/visual_testing.js.map +1 -0
- package/dist/types.d.ts +77 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +37 -0
- package/dist/types.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Particles tools - 8 tools for particle system management
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, NodePath, ParentPath, Dimension, Properties, OptionalProperties } from './shared-types.js';
|
|
6
|
+
export function registerParticlesTools(server, bridge) {
|
|
7
|
+
// 1. create_particles
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'create_particles',
|
|
10
|
+
{
|
|
11
|
+
description: 'Create a GPUParticles2D or GPUParticles3D node',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
parent: ParentPath,
|
|
14
|
+
type: Dimension,
|
|
15
|
+
properties: OptionalProperties,
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
async (args) => callGodot(bridge, 'particles/create', args),
|
|
19
|
+
);
|
|
20
|
+
// 8. delete_particles
|
|
21
|
+
server.registerTool(
|
|
22
|
+
'delete_particles',
|
|
23
|
+
{
|
|
24
|
+
description: 'Delete a particle system node from the scene',
|
|
25
|
+
inputSchema: {
|
|
26
|
+
node_path: NodePath.describe('Path to the particle node to delete'),
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
async (args) => callGodot(bridge, 'particles/delete', args),
|
|
30
|
+
);
|
|
31
|
+
// 2. set_particle_material
|
|
32
|
+
server.registerTool(
|
|
33
|
+
'set_particle_material',
|
|
34
|
+
{
|
|
35
|
+
description: 'Set or create a ParticleProcessMaterial for a particle system',
|
|
36
|
+
inputSchema: {
|
|
37
|
+
path: NodePath.describe('Particle node path'),
|
|
38
|
+
properties: Properties.describe('Process material properties (direction, spread, gravity, initial_velocity, etc.)'),
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
async (args) => callGodot(bridge, 'particles/set_material', args),
|
|
42
|
+
);
|
|
43
|
+
// 3. set_particle_color_gradient
|
|
44
|
+
server.registerTool(
|
|
45
|
+
'set_particle_color_gradient',
|
|
46
|
+
{
|
|
47
|
+
description: 'Set a color gradient on a particle system',
|
|
48
|
+
inputSchema: {
|
|
49
|
+
path: NodePath.describe('Particle node path'),
|
|
50
|
+
gradient: z
|
|
51
|
+
.array(
|
|
52
|
+
z.object({
|
|
53
|
+
offset: z.number().min(0).max(1).describe('Gradient position (0-1)'),
|
|
54
|
+
color: z.string().describe("Color as hex (e.g. '#FF0000FF')"),
|
|
55
|
+
}),
|
|
56
|
+
)
|
|
57
|
+
.describe('Gradient color stops'),
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
async (args) => callGodot(bridge, 'particles/set_color_gradient', args),
|
|
61
|
+
);
|
|
62
|
+
// 4. apply_particle_preset
|
|
63
|
+
server.registerTool(
|
|
64
|
+
'apply_particle_preset',
|
|
65
|
+
{
|
|
66
|
+
description: 'Apply a predefined particle effect preset',
|
|
67
|
+
inputSchema: {
|
|
68
|
+
path: NodePath.describe('Particle node path'),
|
|
69
|
+
preset: z.enum(['fire', 'smoke', 'sparks', 'rain', 'snow']).describe('Particle preset name'),
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
async (args) => callGodot(bridge, 'particles/apply_preset', args),
|
|
73
|
+
);
|
|
74
|
+
// 5. get_particle_info
|
|
75
|
+
server.registerTool(
|
|
76
|
+
'get_particle_info',
|
|
77
|
+
{
|
|
78
|
+
description: "Get information about a particle system's configuration",
|
|
79
|
+
inputSchema: {
|
|
80
|
+
path: NodePath.describe('Particle node path'),
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
async (args) => callGodot(bridge, 'particles/get_info', args),
|
|
84
|
+
);
|
|
85
|
+
// 6. set_particle_emission_shape
|
|
86
|
+
server.registerTool(
|
|
87
|
+
'set_particle_emission_shape',
|
|
88
|
+
{
|
|
89
|
+
description: 'Set the emission shape for a particle system',
|
|
90
|
+
inputSchema: {
|
|
91
|
+
path: NodePath.describe('Particle node path'),
|
|
92
|
+
shape: z.enum(['point', 'sphere', 'box', 'ring']).describe('Emission shape type'),
|
|
93
|
+
size: z.array(z.number()).optional().describe('Shape size parameters'),
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
async (args) => callGodot(bridge, 'particles/set_emission_shape', args),
|
|
97
|
+
);
|
|
98
|
+
// 7. set_particle_velocity_curve
|
|
99
|
+
server.registerTool(
|
|
100
|
+
'set_particle_velocity_curve',
|
|
101
|
+
{
|
|
102
|
+
description: 'Set a velocity curve for a particle system',
|
|
103
|
+
inputSchema: {
|
|
104
|
+
path: NodePath.describe('Particle node path'),
|
|
105
|
+
curve: z
|
|
106
|
+
.array(
|
|
107
|
+
z.object({
|
|
108
|
+
offset: z.number().min(0).max(1).describe('Curve position (0-1)'),
|
|
109
|
+
value: z.number().describe('Velocity value at this point'),
|
|
110
|
+
}),
|
|
111
|
+
)
|
|
112
|
+
.describe('Curve points'),
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
async (args) => callGodot(bridge, 'particles/set_velocity_curve', args),
|
|
116
|
+
);
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=particles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"particles.js","sourceRoot":"","sources":["../../src/tools/particles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Performance optimization tools - 6 tools for runtime performance analysis and optimization
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
5
|
+
import type { GodotBridge } from "../godot-bridge.js";
|
|
6
|
+
export declare function registerPerformanceOptimizationTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=performance_optimization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performance_optimization.d.ts","sourceRoot":"","sources":["../../src/tools/performance_optimization.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,oCAAoC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAyEjG"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Performance optimization tools - 6 tools for runtime performance analysis and optimization
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, ScenePath } from './shared-types.js';
|
|
6
|
+
export function registerPerformanceOptimizationTools(server, bridge) {
|
|
7
|
+
// 1. analyze_performance
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'analyze_performance',
|
|
10
|
+
{
|
|
11
|
+
description: 'Analyze performance of the current or specified scene over a duration',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
scene_path: ScenePath.optional().describe('Path to the scene to analyze (defaults to current scene)'),
|
|
14
|
+
duration: z.number().int().min(1).max(60).optional().describe('Analysis duration in seconds (default: 5)'),
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
async (args) => callGodot(bridge, 'analyze_performance', args),
|
|
18
|
+
);
|
|
19
|
+
// 2. suggest_optimizations
|
|
20
|
+
server.registerTool(
|
|
21
|
+
'suggest_optimizations',
|
|
22
|
+
{
|
|
23
|
+
description: 'Analyze a scene and suggest performance optimizations',
|
|
24
|
+
inputSchema: {
|
|
25
|
+
scene_path: ScenePath.optional().describe('Path to the scene to analyze (defaults to current scene)'),
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
async (args) => callGodot(bridge, 'suggest_optimizations', args),
|
|
29
|
+
);
|
|
30
|
+
// 3. auto_optimize
|
|
31
|
+
server.registerTool(
|
|
32
|
+
'auto_optimize',
|
|
33
|
+
{
|
|
34
|
+
description: 'Automatically apply performance optimizations to achieve a target FPS or quality level',
|
|
35
|
+
inputSchema: {
|
|
36
|
+
target_fps: z.number().int().min(15).max(240).optional().describe('Target frame rate (default: 60)'),
|
|
37
|
+
quality_level: z.enum(['low', 'medium', 'high']).optional().describe('Target quality level (default: medium)'),
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
async (args) => callGodot(bridge, 'auto_optimize', args),
|
|
41
|
+
);
|
|
42
|
+
// 4. batch_draw_calls
|
|
43
|
+
server.registerTool(
|
|
44
|
+
'batch_draw_calls',
|
|
45
|
+
{
|
|
46
|
+
description: 'Analyze and optimize draw calls in a scene to reduce rendering overhead',
|
|
47
|
+
inputSchema: {
|
|
48
|
+
scene_path: ScenePath,
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
async (args) => callGodot(bridge, 'batch_draw_calls', args),
|
|
52
|
+
);
|
|
53
|
+
// 5. optimize_textures
|
|
54
|
+
server.registerTool(
|
|
55
|
+
'optimize_textures',
|
|
56
|
+
{
|
|
57
|
+
description: 'Optimize textures in a directory by resizing and compressing them',
|
|
58
|
+
inputSchema: {
|
|
59
|
+
path: z.string().optional().describe('Directory path to scan for textures (default: res://assets/)'),
|
|
60
|
+
max_size: z.number().int().min(64).max(4096).optional().describe('Maximum texture dimension in pixels (default: 2048)'),
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
async (args) => callGodot(bridge, 'optimize_textures', args),
|
|
64
|
+
);
|
|
65
|
+
// 6. profile_loading_times
|
|
66
|
+
server.registerTool(
|
|
67
|
+
'profile_loading_times',
|
|
68
|
+
{
|
|
69
|
+
description: 'Profile resource loading times and identify bottlenecks',
|
|
70
|
+
inputSchema: {},
|
|
71
|
+
},
|
|
72
|
+
async () => callGodot(bridge, 'profile_loading_times'),
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=performance_optimization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performance_optimization.js","sourceRoot":"","sources":["../../src/tools/performance_optimization.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Physics tools - 8 tools for physics setup
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerPhysicsTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=physics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physics.d.ts","sourceRoot":"","sources":["../../src/tools/physics.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,CAyHjF"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Physics tools - 8 tools for physics setup
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, NodePath, ParentPath, Properties, OptionalProperties } from './shared-types.js';
|
|
6
|
+
export function registerPhysicsTools(server, bridge) {
|
|
7
|
+
// 1. setup_physics_body
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'setup_physics_body',
|
|
10
|
+
{
|
|
11
|
+
description: 'Add and configure a physics body on a node',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
path: NodePath.describe('Node to add the physics body to'),
|
|
14
|
+
properties: Properties.describe('Body properties (mass, gravity_scale, etc.)'),
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
async (args) => callGodot(bridge, 'physics/setup_body', args),
|
|
18
|
+
);
|
|
19
|
+
// 2. setup_collision
|
|
20
|
+
server.registerTool(
|
|
21
|
+
'setup_collision',
|
|
22
|
+
{
|
|
23
|
+
description: 'Add and configure a collision shape on a node',
|
|
24
|
+
inputSchema: {
|
|
25
|
+
path: NodePath.describe('Node to add collision to'),
|
|
26
|
+
shape_type: z.enum(['box', 'sphere', 'capsule', 'cylinder', 'convex', 'concave', 'polygon', 'circle', 'rectangle']).describe('Collision shape type'),
|
|
27
|
+
properties: OptionalProperties.describe('Shape properties (size, radius, height, etc.)'),
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
async (args) => callGodot(bridge, 'physics/setup_collision', args),
|
|
31
|
+
);
|
|
32
|
+
// 3. set_physics_layers
|
|
33
|
+
server.registerTool(
|
|
34
|
+
'set_physics_layers',
|
|
35
|
+
{
|
|
36
|
+
description: 'Set physics collision layers and masks on a node',
|
|
37
|
+
inputSchema: {
|
|
38
|
+
path: NodePath.describe('Node with collision object'),
|
|
39
|
+
layer: z.number().int().min(1).max(32).optional().describe('Collision layer (1-32)'),
|
|
40
|
+
mask: z.number().int().min(1).max(32).optional().describe('Collision mask (1-32)'),
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
async (args) => callGodot(bridge, 'physics/set_layers', args),
|
|
44
|
+
);
|
|
45
|
+
// 4. get_physics_layers
|
|
46
|
+
server.registerTool(
|
|
47
|
+
'get_physics_layers',
|
|
48
|
+
{
|
|
49
|
+
description: 'Get physics layer and mask information for a node',
|
|
50
|
+
inputSchema: {
|
|
51
|
+
path: NodePath.describe('Node with collision object'),
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
async (args) => callGodot(bridge, 'physics/get_layers', args),
|
|
55
|
+
);
|
|
56
|
+
// 5. get_collision_info
|
|
57
|
+
server.registerTool(
|
|
58
|
+
'get_collision_info',
|
|
59
|
+
{
|
|
60
|
+
description: 'Get collision information for a physics body',
|
|
61
|
+
inputSchema: {
|
|
62
|
+
path: NodePath.describe('Physics body node path'),
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
async (args) => callGodot(bridge, 'physics/get_collision_info', args),
|
|
66
|
+
);
|
|
67
|
+
// 6. add_raycast
|
|
68
|
+
server.registerTool(
|
|
69
|
+
'add_raycast',
|
|
70
|
+
{
|
|
71
|
+
description: 'Add a RayCast2D or RayCast3D node',
|
|
72
|
+
inputSchema: {
|
|
73
|
+
parent_path: ParentPath,
|
|
74
|
+
properties: OptionalProperties.describe('Raycast properties (target, enabled, collide_with_areas, etc.)'),
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
async (args) => callGodot(bridge, 'physics/add_raycast', args),
|
|
78
|
+
);
|
|
79
|
+
// 7. get_physics_material
|
|
80
|
+
server.registerTool(
|
|
81
|
+
'get_physics_material',
|
|
82
|
+
{
|
|
83
|
+
description: 'Get the physics material properties of a node',
|
|
84
|
+
inputSchema: {
|
|
85
|
+
path: NodePath,
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
async (args) => callGodot(bridge, 'physics/get_material', args),
|
|
89
|
+
);
|
|
90
|
+
// 8. set_physics_material
|
|
91
|
+
server.registerTool(
|
|
92
|
+
'set_physics_material',
|
|
93
|
+
{
|
|
94
|
+
description: 'Create and set a physics material on a node',
|
|
95
|
+
inputSchema: {
|
|
96
|
+
path: NodePath,
|
|
97
|
+
friction: z.number().min(0).optional().describe('Friction coefficient'),
|
|
98
|
+
bounce: z.number().min(0).max(1).optional().describe('Bounce/Restitution coefficient'),
|
|
99
|
+
rough: z.boolean().optional().describe('Whether surface is rough'),
|
|
100
|
+
absorbent: z.boolean().optional().describe('Whether the surface absorbs impact energy'),
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
async (args) => callGodot(bridge, 'physics/set_material', args),
|
|
104
|
+
);
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=physics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physics.js","sourceRoot":"","sources":["../../src/tools/physics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Physics configuration tools - 8 tools for physics engine settings
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerPhysicsConfigTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=physics_config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physics_config.d.ts","sourceRoot":"","sources":["../../src/tools/physics_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,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAmGvF"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Physics configuration tools - 8 tools for physics engine settings
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, Name } from './shared-types.js';
|
|
6
|
+
export function registerPhysicsConfigTools(server, bridge) {
|
|
7
|
+
// 1. get_physics_settings
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'get_physics_settings',
|
|
10
|
+
{
|
|
11
|
+
description: 'Get all physics engine settings (gravity, FPS, engine, layers, damping)',
|
|
12
|
+
inputSchema: {},
|
|
13
|
+
},
|
|
14
|
+
async () => callGodot(bridge, 'physics_config/get_settings'),
|
|
15
|
+
);
|
|
16
|
+
// 2. set_gravity
|
|
17
|
+
server.registerTool(
|
|
18
|
+
'set_gravity',
|
|
19
|
+
{
|
|
20
|
+
description: 'Set the default gravity vector for the physics world',
|
|
21
|
+
inputSchema: {
|
|
22
|
+
x: z.number().describe('Gravity X component'),
|
|
23
|
+
y: z.number().describe('Gravity Y component'),
|
|
24
|
+
z: z.number().optional().default(0).describe('Gravity Z component (for 3D, default 0)'),
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
async (args) => callGodot(bridge, 'physics_config/set_gravity', args),
|
|
28
|
+
);
|
|
29
|
+
// 3. set_physics_fps
|
|
30
|
+
server.registerTool(
|
|
31
|
+
'set_physics_fps',
|
|
32
|
+
{
|
|
33
|
+
description: 'Set the physics simulation tick rate',
|
|
34
|
+
inputSchema: {
|
|
35
|
+
fps: z.number().int().min(1).max(240).optional().default(60).describe('Physics ticks per second (default 60)'),
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
async (args) => callGodot(bridge, 'physics_config/set_fps', args),
|
|
39
|
+
);
|
|
40
|
+
// 4. set_physics_engine
|
|
41
|
+
server.registerTool(
|
|
42
|
+
'set_physics_engine',
|
|
43
|
+
{
|
|
44
|
+
description: 'Set which physics engine backend to use',
|
|
45
|
+
inputSchema: {
|
|
46
|
+
engine: z.enum(['default', 'godot_physics', 'jolt']).describe('Physics engine backend'),
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
async (args) => callGodot(bridge, 'physics_config/set_engine', args),
|
|
50
|
+
);
|
|
51
|
+
// 5. set_collision_layer_name
|
|
52
|
+
server.registerTool(
|
|
53
|
+
'set_collision_layer_name',
|
|
54
|
+
{
|
|
55
|
+
description: 'Assign a human-readable name to a collision layer (1-32)',
|
|
56
|
+
inputSchema: {
|
|
57
|
+
layer: z.number().int().min(1).max(32).describe('Layer number (1-32)'),
|
|
58
|
+
name: Name.describe("Layer name (e.g. 'Player', 'Enemies', 'Terrain')"),
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
async (args) => callGodot(bridge, 'physics_config/set_layer_name', args),
|
|
62
|
+
);
|
|
63
|
+
// 6. get_collision_layers
|
|
64
|
+
server.registerTool(
|
|
65
|
+
'get_collision_layers',
|
|
66
|
+
{
|
|
67
|
+
description: 'Get all collision layer names (1-32)',
|
|
68
|
+
inputSchema: {},
|
|
69
|
+
},
|
|
70
|
+
async () => callGodot(bridge, 'physics_config/get_layers'),
|
|
71
|
+
);
|
|
72
|
+
// 7. set_default_gravity
|
|
73
|
+
server.registerTool(
|
|
74
|
+
'set_default_gravity',
|
|
75
|
+
{
|
|
76
|
+
description: 'Set the default gravity magnitude in project settings',
|
|
77
|
+
inputSchema: {
|
|
78
|
+
value: z.number().describe('Gravity value (980.0 for 2D, 9.8 for 3D)'),
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
async (args) => callGodot(bridge, 'physics_config/set_default_gravity', args),
|
|
82
|
+
);
|
|
83
|
+
// 8. set_default_linear_damp
|
|
84
|
+
server.registerTool(
|
|
85
|
+
'set_default_linear_damp',
|
|
86
|
+
{
|
|
87
|
+
description: 'Set the default linear damping for physics bodies',
|
|
88
|
+
inputSchema: {
|
|
89
|
+
value: z.number().min(0).optional().default(0.1).describe('Linear damping value (default 0.1)'),
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
async (args) => callGodot(bridge, 'physics_config/set_default_linear_damp', args),
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=physics_config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physics_config.js","sourceRoot":"","sources":["../../src/tools/physics_config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform export tools - 6 tools for multi-platform export management
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerPlatformExportTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=platform_export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform_export.d.ts","sourceRoot":"","sources":["../../src/tools/platform_export.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,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAgFxF"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform export tools - 6 tools for multi-platform export management
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, Name, FilePath, OptionalProperties } from './shared-types.js';
|
|
6
|
+
export function registerPlatformExportTools(server, bridge) {
|
|
7
|
+
// 1. export_for_platform
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'export_for_platform',
|
|
10
|
+
{
|
|
11
|
+
description: 'Export the project for a specific platform',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
platform: z.enum(['windows', 'linux', 'macos', 'android', 'ios', 'web']).describe('Target platform'),
|
|
14
|
+
debug: z.boolean().optional().default(false).describe('Export as debug build (default: false = release)'),
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
async (args) => callGodot(bridge, 'export_for_platform', args),
|
|
18
|
+
);
|
|
19
|
+
// 2. validate_platform_export
|
|
20
|
+
server.registerTool(
|
|
21
|
+
'validate_platform_export',
|
|
22
|
+
{
|
|
23
|
+
description: 'Validate the project for export on a specific platform, checking for issues',
|
|
24
|
+
inputSchema: {
|
|
25
|
+
platform: z.string().describe('Platform to validate for'),
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
async (args) => callGodot(bridge, 'validate_platform_export', args),
|
|
29
|
+
);
|
|
30
|
+
// 3. get_platform_export_templates
|
|
31
|
+
server.registerTool(
|
|
32
|
+
'get_platform_export_templates',
|
|
33
|
+
{
|
|
34
|
+
description: 'Get available export templates installed for the current Godot version',
|
|
35
|
+
inputSchema: {},
|
|
36
|
+
},
|
|
37
|
+
async () => callGodot(bridge, 'get_platform_export_templates'),
|
|
38
|
+
);
|
|
39
|
+
// 4. create_platform_export_preset
|
|
40
|
+
server.registerTool(
|
|
41
|
+
'create_platform_export_preset',
|
|
42
|
+
{
|
|
43
|
+
description: 'Create a new export preset for a specific platform with optional custom settings',
|
|
44
|
+
inputSchema: {
|
|
45
|
+
platform: z.string().describe("Target platform (e.g. 'Windows Desktop', 'Linux', 'Android', 'Web')"),
|
|
46
|
+
name: Name.describe('Preset name'),
|
|
47
|
+
settings: OptionalProperties,
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
async (args) => callGodot(bridge, 'create_platform_export_preset', args),
|
|
51
|
+
);
|
|
52
|
+
// 5. run_exported_build
|
|
53
|
+
server.registerTool(
|
|
54
|
+
'run_exported_build',
|
|
55
|
+
{
|
|
56
|
+
description: 'Run an exported build and capture its output',
|
|
57
|
+
inputSchema: {
|
|
58
|
+
path: FilePath.describe('Path to the exported executable'),
|
|
59
|
+
args: z.array(z.string()).optional().describe('Command-line arguments for the build'),
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
async (args) => callGodot(bridge, 'run_exported_build', args),
|
|
63
|
+
);
|
|
64
|
+
// 6. validate_export_for_platform
|
|
65
|
+
server.registerTool(
|
|
66
|
+
'validate_export_for_platform',
|
|
67
|
+
{
|
|
68
|
+
description: 'Validate the project for export on a specific platform with detailed checks',
|
|
69
|
+
inputSchema: {
|
|
70
|
+
platform: z.string().describe('Platform to validate for'),
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
async (args) => callGodot(bridge, 'export/validate_platform', args),
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=platform_export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform_export.js","sourceRoot":"","sources":["../../src/tools/platform_export.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE1E,MAAM,UAAU,2BAA2B,CAAC,MAAiB,EAAE,MAAmB;IAChF,yBAAyB;IACzB,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,WAAW,EAAE,4CAA4C;QACzD,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;iBAC5D,QAAQ,CAAC,iBAAiB,CAAC;YAC9B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,kDAAkD,CAAC;SAC1G;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,qBAAqB,EAAE,IAA+B,CAAC,CAC1F,CAAC;IAEF,8BAA8B;IAC9B,MAAM,CAAC,YAAY,CACjB,0BAA0B,EAC1B;QACE,WAAW,EAAE,6EAA6E;QAC1F,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;SAC1D;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,0BAA0B,EAAE,IAA+B,CAAC,CAC/F,CAAC;IAEF,mCAAmC;IACnC,MAAM,CAAC,YAAY,CACjB,+BAA+B,EAC/B;QACE,WAAW,EAAE,wEAAwE;QACrF,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,+BAA+B,CAAC,CAC/D,CAAC;IAEF,mCAAmC;IACnC,MAAM,CAAC,YAAY,CACjB,+BAA+B,EAC/B;QACE,WAAW,EACT,kFAAkF;QACpF,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,CAAC,qEAAqE,CAAC;YAClF,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;YAClC,QAAQ,EAAE,kBAAkB;SAC7B;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,+BAA+B,EAAE,IAA+B,CAAC,CACtF,CAAC;IAEF,wBAAwB;IACxB,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,WAAW,EAAE,8CAA8C;QAC3D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC1D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;SACtF;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAA+B,CAAC,CACzF,CAAC;IAEF,kCAAkC;IAClC,MAAM,CAAC,YAAY,CACjB,8BAA8B,EAC9B;QACE,WAAW,EAAE,6EAA6E;QAC1F,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;SAC1D;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,0BAA0B,EAAE,IAA+B,CAAC,CAC/F,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform-specific tools - 6 tools for platform configuration and validation
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerPlatformSpecificTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=platform_specific.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform_specific.d.ts","sourceRoot":"","sources":["../../src/tools/platform_specific.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,6BAA6B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAwG1F"}
|