@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,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform-specific tools - 6 tools for platform configuration and validation
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, OptionalProperties } from './shared-types.js';
|
|
6
|
+
export function registerPlatformSpecificTools(server, bridge) {
|
|
7
|
+
// 1. get_platform_settings
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'get_platform_settings',
|
|
10
|
+
{
|
|
11
|
+
description: 'Get platform-specific settings for a target platform',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
platform: z.string().describe("Platform name (e.g. 'ios', 'android', 'web', 'windows', 'linux', 'macos')"),
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
async (args) => callGodot(bridge, 'get_platform_settings', args),
|
|
17
|
+
);
|
|
18
|
+
// 2. configure_ios
|
|
19
|
+
server.registerTool(
|
|
20
|
+
'configure_ios',
|
|
21
|
+
{
|
|
22
|
+
description: 'Configure iOS-specific project settings including bundle ID, team ID, and code signing',
|
|
23
|
+
inputSchema: {
|
|
24
|
+
settings: z
|
|
25
|
+
.object({
|
|
26
|
+
bundle_id: z.string().optional().describe('iOS bundle identifier (e.g. com.company.game)'),
|
|
27
|
+
team_id: z.string().optional().describe('Apple Developer Team ID'),
|
|
28
|
+
signing: OptionalProperties.describe('Code signing configuration'),
|
|
29
|
+
})
|
|
30
|
+
.describe('iOS settings to configure'),
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
async (args) => callGodot(bridge, 'configure_ios', args),
|
|
34
|
+
);
|
|
35
|
+
// 3. configure_android
|
|
36
|
+
server.registerTool(
|
|
37
|
+
'configure_android',
|
|
38
|
+
{
|
|
39
|
+
description: 'Configure Android-specific project settings including package name, keystore, and permissions',
|
|
40
|
+
inputSchema: {
|
|
41
|
+
settings: z
|
|
42
|
+
.object({
|
|
43
|
+
package_name: z.string().optional().describe('Android package name (e.g. com.company.game)'),
|
|
44
|
+
keystore: OptionalProperties.describe('Keystore configuration for signing'),
|
|
45
|
+
permissions: z.array(z.string()).optional().describe('Android permissions to declare'),
|
|
46
|
+
})
|
|
47
|
+
.describe('Android settings to configure'),
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
async (args) => callGodot(bridge, 'configure_android', args),
|
|
51
|
+
);
|
|
52
|
+
// 4. configure_web
|
|
53
|
+
server.registerTool(
|
|
54
|
+
'configure_web',
|
|
55
|
+
{
|
|
56
|
+
description: 'Configure web/HTML5 export settings including canvas resize, threading, and PWA support',
|
|
57
|
+
inputSchema: {
|
|
58
|
+
settings: z
|
|
59
|
+
.object({
|
|
60
|
+
canvas_resize: z.boolean().optional().describe('Enable automatic canvas resizing'),
|
|
61
|
+
threading: z.boolean().optional().describe('Enable SharedArrayBuffer threading support'),
|
|
62
|
+
pwa: z.boolean().optional().describe('Enable Progressive Web App support'),
|
|
63
|
+
})
|
|
64
|
+
.describe('Web platform settings to configure'),
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
async (args) => callGodot(bridge, 'configure_web', args),
|
|
68
|
+
);
|
|
69
|
+
// 5. get_platform_capabilities
|
|
70
|
+
server.registerTool(
|
|
71
|
+
'get_platform_capabilities',
|
|
72
|
+
{
|
|
73
|
+
description: 'Get the available features and capabilities for a specific platform',
|
|
74
|
+
inputSchema: {
|
|
75
|
+
platform: z.string().describe('Platform name to query capabilities for'),
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
async (args) => callGodot(bridge, 'get_platform_capabilities', args),
|
|
79
|
+
);
|
|
80
|
+
// 6. validate_platform_build
|
|
81
|
+
server.registerTool(
|
|
82
|
+
'validate_platform_build',
|
|
83
|
+
{
|
|
84
|
+
description: 'Validate the project for building on a specific platform, checking for issues',
|
|
85
|
+
inputSchema: {
|
|
86
|
+
platform: z.string().describe('Platform to validate the build for'),
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
async (args) => callGodot(bridge, 'validate_platform_build', args),
|
|
90
|
+
);
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=platform_specific.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform_specific.js","sourceRoot":"","sources":["../../src/tools/platform_specific.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,UAAU,6BAA6B,CAAC,MAAiB,EAAE,MAAmB;IAClF,2BAA2B;IAC3B,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EAAE,sDAAsD;QACnE,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,CAAC,2EAA2E,CAAC;SACzF;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAA+B,CAAC,CAC5F,CAAC;IAEF,mBAAmB;IACnB,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,WAAW,EACT,wFAAwF;QAC1F,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,CAAC;gBACN,SAAS,EAAE,CAAC;qBACT,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,+CAA+C,CAAC;gBAC5D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;gBAClE,OAAO,EAAE,kBAAkB,CAAC,QAAQ,CAAC,4BAA4B,CAAC;aACnE,CAAC;iBACD,QAAQ,CAAC,2BAA2B,CAAC;SACzC;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,IAA+B,CAAC,CACpF,CAAC;IAEF,uBAAuB;IACvB,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,WAAW,EACT,+FAA+F;QACjG,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,CAAC;gBACN,YAAY,EAAE,CAAC;qBACZ,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,8CAA8C,CAAC;gBAC3D,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC,oCAAoC,CAAC;gBAC3E,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;aACvF,CAAC;iBACD,QAAQ,CAAC,+BAA+B,CAAC;SAC7C;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAA+B,CAAC,CACxF,CAAC;IAEF,mBAAmB;IACnB,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,WAAW,EACT,yFAAyF;QAC3F,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,CAAC;gBACN,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;gBAClF,SAAS,EAAE,CAAC;qBACT,OAAO,EAAE;qBACT,QAAQ,EAAE;qBACV,QAAQ,CAAC,4CAA4C,CAAC;gBACzD,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;aAC3E,CAAC;iBACD,QAAQ,CAAC,oCAAoC,CAAC;SAClD;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,IAA+B,CAAC,CACpF,CAAC;IAEF,+BAA+B;IAC/B,MAAM,CAAC,YAAY,CACjB,2BAA2B,EAC3B;QACE,WAAW,EAAE,qEAAqE;QAClF,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;SACzE;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,2BAA2B,EAAE,IAA+B,CAAC,CAChG,CAAC;IAEF,6BAA6B;IAC7B,MAAM,CAAC,YAAY,CACjB,yBAAyB,EACzB;QACE,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;SACpE;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,yBAAyB,EAAE,IAA+B,CAAC,CAC9F,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Profiling tools - 2 tools for performance profiling
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerProfilingTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=profiling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profiling.d.ts","sourceRoot":"","sources":["../../src/tools/profiling.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,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAwBnF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Profiling tools - 2 tools for performance profiling
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z } from './shared-types.js';
|
|
6
|
+
export function registerProfilingTools(server, bridge) {
|
|
7
|
+
// 1. get_performance_monitors
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'get_performance_monitors',
|
|
10
|
+
{
|
|
11
|
+
description: 'Get all performance monitor values (FPS, memory, physics, rendering, navigation)',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
monitors: z.array(z.string()).optional().describe('Filter to specific monitor names only (e.g. ["time/fps", "memory/static"]). Returns all monitors if omitted.'),
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
async (args) => callGodot(bridge, 'profiling/monitors', args),
|
|
17
|
+
);
|
|
18
|
+
// 2. get_editor_performance
|
|
19
|
+
server.registerTool(
|
|
20
|
+
'get_editor_performance',
|
|
21
|
+
{
|
|
22
|
+
description: 'Get editor performance snapshot (FPS, timing, memory usage, object counts, render stats, physics activity)',
|
|
23
|
+
inputSchema: {},
|
|
24
|
+
},
|
|
25
|
+
async () => callGodot(bridge, 'profiling/editor_performance'),
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=profiling.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profiling.js","sourceRoot":"","sources":["../../src/tools/profiling.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAEtC,MAAM,UAAU,sBAAsB,CAAC,MAAiB,EAAE,MAAmB;IAC3E,8BAA8B;IAC9B,MAAM,CAAC,YAAY,CACjB,0BAA0B,EAC1B;QACE,WAAW,EAAE,kFAAkF;QAC/F,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC/C,8GAA8G,CAC/G;SACF;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAA+B,CAAC,CACzF,CAAC;IAEF,4BAA4B;IAC5B,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,WAAW,EAAE,4GAA4G;QACzH,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAC9D,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project tools - 7 tools for project management
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerProjectTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=project.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/tools/project.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,CAsFjF"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project tools - 7 tools for project management
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, ResourcePath, SearchQuery } from './shared-types.js';
|
|
6
|
+
export function registerProjectTools(server, bridge) {
|
|
7
|
+
// 1. get_project_info
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'get_project_info',
|
|
10
|
+
{
|
|
11
|
+
description: 'Get project metadata including name, version, engine version, and main scene',
|
|
12
|
+
inputSchema: {},
|
|
13
|
+
},
|
|
14
|
+
async () => callGodot(bridge, 'project/get_info'),
|
|
15
|
+
);
|
|
16
|
+
// 2. get_filesystem_tree
|
|
17
|
+
server.registerTool(
|
|
18
|
+
'get_filesystem_tree',
|
|
19
|
+
{
|
|
20
|
+
description: 'Get the project filesystem tree structure',
|
|
21
|
+
inputSchema: {
|
|
22
|
+
path: ResourcePath.describe("Root path to list from (e.g. 'res://')"),
|
|
23
|
+
filters: z.array(z.string()).optional().describe("Array of file extensions to filter (e.g. ['gd', 'tscn'])"),
|
|
24
|
+
max_depth: z.number().int().positive().optional().default(10).describe('Maximum recursion depth (default: 10)'),
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
async (args) => callGodot(bridge, 'project/get_filesystem_tree', args),
|
|
28
|
+
);
|
|
29
|
+
// 3. search_files
|
|
30
|
+
server.registerTool(
|
|
31
|
+
'search_files',
|
|
32
|
+
{
|
|
33
|
+
description: 'Search for files in the project by name pattern or content',
|
|
34
|
+
inputSchema: {
|
|
35
|
+
query: SearchQuery,
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
async (args) => callGodot(bridge, 'project/search_files', args),
|
|
39
|
+
);
|
|
40
|
+
// 4. get_project_settings
|
|
41
|
+
server.registerTool(
|
|
42
|
+
'get_project_settings',
|
|
43
|
+
{
|
|
44
|
+
description: 'Get all project settings (project.godot values)',
|
|
45
|
+
inputSchema: {
|
|
46
|
+
filter: z.string().optional().describe("Prefix filter for settings (e.g. 'application/')"),
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
async (args) => callGodot(bridge, 'project/get_settings', args),
|
|
50
|
+
);
|
|
51
|
+
// 5. set_project_setting
|
|
52
|
+
server.registerTool(
|
|
53
|
+
'set_project_setting',
|
|
54
|
+
{
|
|
55
|
+
description: 'Set a project setting value',
|
|
56
|
+
inputSchema: {
|
|
57
|
+
key: z.string().describe("Setting key (e.g. 'display/window/size/viewport_width')"),
|
|
58
|
+
value: z.unknown().describe('New value for the setting (string, number, boolean, etc.)'),
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
async (args) => callGodot(bridge, 'project/set_setting', args),
|
|
62
|
+
);
|
|
63
|
+
// 6. uid_to_project_path
|
|
64
|
+
server.registerTool(
|
|
65
|
+
'uid_to_project_path',
|
|
66
|
+
{
|
|
67
|
+
description: 'Convert a Godot UID to a project file path',
|
|
68
|
+
inputSchema: {
|
|
69
|
+
uid: z.string().describe("The UID to look up (e.g. 'uid://abc123')"),
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
async (args) => callGodot(bridge, 'project/uid_to_path', args),
|
|
73
|
+
);
|
|
74
|
+
// 7. project_path_to_uid
|
|
75
|
+
server.registerTool(
|
|
76
|
+
'project_path_to_uid',
|
|
77
|
+
{
|
|
78
|
+
description: 'Convert a project file path to its UID',
|
|
79
|
+
inputSchema: {
|
|
80
|
+
path: ResourcePath.describe("The project path (e.g. 'res://scenes/main.tscn')"),
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
async (args) => callGodot(bridge, 'project/path_to_uid', args),
|
|
84
|
+
);
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=project.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/tools/project.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project configuration tools - 12 tools for project settings, input map, and autoloads
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerProjectConfigTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=project_config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project_config.d.ts","sourceRoot":"","sources":["../../src/tools/project_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,CAuKvF"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project configuration tools - 12 tools for project settings, input map, and autoloads
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, Name, FilePath, PropertyValue } from './shared-types.js';
|
|
6
|
+
export function registerProjectConfigTools(server, bridge) {
|
|
7
|
+
// 1. get_project_setting
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'get_project_setting',
|
|
10
|
+
{
|
|
11
|
+
description: "Get a single project setting value by key (e.g. 'display/window/size/viewport_width')",
|
|
12
|
+
inputSchema: {
|
|
13
|
+
key: z.string().describe('Project setting key path'),
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
async (args) => callGodot(bridge, 'project_config/get_setting', args),
|
|
17
|
+
);
|
|
18
|
+
// 2. set_project_setting_config
|
|
19
|
+
server.registerTool(
|
|
20
|
+
'set_project_setting_config',
|
|
21
|
+
{
|
|
22
|
+
description: 'Set a project setting value and save project.godot',
|
|
23
|
+
inputSchema: {
|
|
24
|
+
key: z.string().describe('Project setting key path'),
|
|
25
|
+
value: PropertyValue,
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
async (args) => callGodot(bridge, 'project_config/set_setting_config', args),
|
|
29
|
+
);
|
|
30
|
+
// 3. get_all_project_settings
|
|
31
|
+
server.registerTool(
|
|
32
|
+
'get_all_project_settings',
|
|
33
|
+
{
|
|
34
|
+
description: 'Get all project settings, optionally filtered by prefix',
|
|
35
|
+
inputSchema: {
|
|
36
|
+
filter: z.string().optional().describe("Prefix filter (e.g. 'display/', 'input/')"),
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
async (args) => callGodot(bridge, 'project_config/get_all_settings', args),
|
|
40
|
+
);
|
|
41
|
+
// 4. reset_project_setting
|
|
42
|
+
server.registerTool(
|
|
43
|
+
'reset_project_setting',
|
|
44
|
+
{
|
|
45
|
+
description: 'Reset a project setting to its default value',
|
|
46
|
+
inputSchema: {
|
|
47
|
+
key: z.string().describe('Project setting key to reset'),
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
async (args) => callGodot(bridge, 'project_config/reset_setting', args),
|
|
51
|
+
);
|
|
52
|
+
// 5. get_input_map
|
|
53
|
+
server.registerTool(
|
|
54
|
+
'get_input_map',
|
|
55
|
+
{
|
|
56
|
+
description: 'Get all input actions and their mapped events from the InputMap',
|
|
57
|
+
inputSchema: {},
|
|
58
|
+
},
|
|
59
|
+
async () => callGodot(bridge, 'project_config/get_input_map'),
|
|
60
|
+
);
|
|
61
|
+
// 6. set_input_map
|
|
62
|
+
server.registerTool(
|
|
63
|
+
'set_input_map',
|
|
64
|
+
{
|
|
65
|
+
description: 'Replace the entire input map with the given actions and events',
|
|
66
|
+
inputSchema: {
|
|
67
|
+
actions: z
|
|
68
|
+
.record(z.array(z.object({ type: z.string() }).passthrough().describe('Input event (type: key, mouse_button, joypad_button, etc.)')))
|
|
69
|
+
.describe('Map of action name to array of input events'),
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
async (args) => callGodot(bridge, 'project_config/set_input_map', args),
|
|
73
|
+
);
|
|
74
|
+
// 7. add_input_action
|
|
75
|
+
server.registerTool(
|
|
76
|
+
'add_input_action',
|
|
77
|
+
{
|
|
78
|
+
description: 'Add a new input action with optional deadzone and event mappings',
|
|
79
|
+
inputSchema: {
|
|
80
|
+
action: z.string().describe("Action name (e.g. 'jump', 'move_left')"),
|
|
81
|
+
deadzone: z.number().min(0).max(1).optional().default(0.5).describe('Deadzone value (0-1, default 0.5)'),
|
|
82
|
+
events: z.array(z.object({ type: z.string() }).passthrough().describe('Input event definition')).describe('Array of input events to map'),
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
async (args) => callGodot(bridge, 'project_config/add_input_action', args),
|
|
86
|
+
);
|
|
87
|
+
// 8. remove_input_action
|
|
88
|
+
server.registerTool(
|
|
89
|
+
'remove_input_action',
|
|
90
|
+
{
|
|
91
|
+
description: 'Remove an input action from the InputMap',
|
|
92
|
+
inputSchema: {
|
|
93
|
+
action: z.string().describe('Action name to remove'),
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
async (args) => callGodot(bridge, 'project_config/remove_input_action', args),
|
|
97
|
+
);
|
|
98
|
+
// 9. get_autoloads
|
|
99
|
+
server.registerTool(
|
|
100
|
+
'get_autoloads',
|
|
101
|
+
{
|
|
102
|
+
description: 'Get all autoload singletons configured in the project',
|
|
103
|
+
inputSchema: {},
|
|
104
|
+
},
|
|
105
|
+
async () => callGodot(bridge, 'project_config/get_autoloads'),
|
|
106
|
+
);
|
|
107
|
+
// 10. add_autoload_config
|
|
108
|
+
server.registerTool(
|
|
109
|
+
'add_autoload_config',
|
|
110
|
+
{
|
|
111
|
+
description: 'Add an autoload singleton to the project',
|
|
112
|
+
inputSchema: {
|
|
113
|
+
name: Name.describe('Autoload singleton name'),
|
|
114
|
+
path: FilePath.describe("Script or scene path (e.g. 'res://autoload/global.gd')"),
|
|
115
|
+
enabled: z.boolean().optional().default(true).describe('Whether the autoload is enabled (default: true)'),
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
async (args) => callGodot(bridge, 'project_config/add_autoload_config', args),
|
|
119
|
+
);
|
|
120
|
+
// 11. remove_autoload_config
|
|
121
|
+
server.registerTool(
|
|
122
|
+
'remove_autoload_config',
|
|
123
|
+
{
|
|
124
|
+
description: 'Remove an autoload singleton from the project',
|
|
125
|
+
inputSchema: {
|
|
126
|
+
name: Name.describe('Autoload singleton name to remove'),
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
async (args) => callGodot(bridge, 'project_config/remove_autoload_config', args),
|
|
130
|
+
);
|
|
131
|
+
// 12. reorder_autoloads
|
|
132
|
+
server.registerTool(
|
|
133
|
+
'reorder_autoloads',
|
|
134
|
+
{
|
|
135
|
+
description: 'Set the loading order of autoload singletons',
|
|
136
|
+
inputSchema: {
|
|
137
|
+
order: z.array(z.string()).describe('Ordered list of autoload names (first loads first)'),
|
|
138
|
+
},
|
|
139
|
+
},
|
|
140
|
+
async (args) => callGodot(bridge, 'project_config/reorder_autoloads', args),
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=project_config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project_config.js","sourceRoot":"","sources":["../../src/tools/project_config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project creation tools - 10 tools for project scaffolding and setup
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerProjectCreationTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=project_creation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project_creation.d.ts","sourceRoot":"","sources":["../../src/tools/project_creation.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,4BAA4B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAqLzF"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project creation tools - 10 tools for project scaffolding and setup
|
|
3
|
+
*/
|
|
4
|
+
import { callGodot } from '../server.js';
|
|
5
|
+
import { z, Name, FilePath } from './shared-types.js';
|
|
6
|
+
export function registerProjectCreationTools(server, bridge) {
|
|
7
|
+
// 1. create_project
|
|
8
|
+
server.registerTool(
|
|
9
|
+
'create_project',
|
|
10
|
+
{
|
|
11
|
+
description: 'Create a complete Godot project from scratch with proper structure and configuration',
|
|
12
|
+
inputSchema: {
|
|
13
|
+
path: FilePath.describe('Directory path where the project will be created'),
|
|
14
|
+
name: Name.describe('Project name'),
|
|
15
|
+
template: z.enum(['empty', '2d', '3d', 'ui', 'custom']).optional().describe('Project template type'),
|
|
16
|
+
godot_version: z.string().optional().describe("Target Godot version (e.g. '4.3')"),
|
|
17
|
+
renderer: z.enum(['forward_plus', 'mobile', 'gl_compatibility']).optional().describe('Rendering engine'),
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
async (args) => callGodot(bridge, 'project_creation/create_project', args),
|
|
21
|
+
);
|
|
22
|
+
// 2. create_project_from_template
|
|
23
|
+
server.registerTool(
|
|
24
|
+
'create_project_from_template',
|
|
25
|
+
{
|
|
26
|
+
description: 'Create a new Godot project from an existing template project',
|
|
27
|
+
inputSchema: {
|
|
28
|
+
path: FilePath.describe('Directory path where the project will be created'),
|
|
29
|
+
template_path: FilePath.describe('Path to the template project directory'),
|
|
30
|
+
name: Name.optional().describe('Override project name'),
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
async (args) => callGodot(bridge, 'project_creation/create_from_template', args),
|
|
34
|
+
);
|
|
35
|
+
// 3. scaffold_project_structure
|
|
36
|
+
server.registerTool(
|
|
37
|
+
'scaffold_project_structure',
|
|
38
|
+
{
|
|
39
|
+
description: 'Create a standard folder structure for a Godot project',
|
|
40
|
+
inputSchema: {
|
|
41
|
+
project_path: FilePath.describe('Path to the Godot project root'),
|
|
42
|
+
structure: z.enum(['standard', 'minimal', 'full']).optional().describe('Folder structure preset'),
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
async (args) => callGodot(bridge, 'project_creation/scaffold_structure', args),
|
|
46
|
+
);
|
|
47
|
+
// 4. create_project_with_assets
|
|
48
|
+
server.registerTool(
|
|
49
|
+
'create_project_with_assets',
|
|
50
|
+
{
|
|
51
|
+
description: 'Create a new Godot project and import specified assets into it',
|
|
52
|
+
inputSchema: {
|
|
53
|
+
path: FilePath.describe('Directory path where the project will be created'),
|
|
54
|
+
name: Name.describe('Project name'),
|
|
55
|
+
assets: z
|
|
56
|
+
.array(
|
|
57
|
+
z.object({
|
|
58
|
+
type: z.string().describe("Asset type (e.g. 'texture', 'audio', 'scene', 'script')"),
|
|
59
|
+
source: z.string().describe('Source file path to import from'),
|
|
60
|
+
destination: z.string().describe('Destination path within the project (res://...)'),
|
|
61
|
+
}),
|
|
62
|
+
)
|
|
63
|
+
.describe('List of assets to import into the project'),
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
async (args) => callGodot(bridge, 'project_creation/create_with_assets', args),
|
|
67
|
+
);
|
|
68
|
+
// 5. initialize_git_repository
|
|
69
|
+
server.registerTool(
|
|
70
|
+
'initialize_git_repository',
|
|
71
|
+
{
|
|
72
|
+
description: 'Initialize a Git repository in the project directory with a proper .gitignore',
|
|
73
|
+
inputSchema: {
|
|
74
|
+
project_path: FilePath.describe('Path to the Godot project root'),
|
|
75
|
+
include_gitignore: z.boolean().optional().describe('Whether to create a Godot-specific .gitignore'),
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
async (args) => callGodot(bridge, 'project_creation/init_git', args),
|
|
79
|
+
);
|
|
80
|
+
// 6. create_project_readme
|
|
81
|
+
server.registerTool(
|
|
82
|
+
'create_project_readme',
|
|
83
|
+
{
|
|
84
|
+
description: 'Generate a README.md file for the project',
|
|
85
|
+
inputSchema: {
|
|
86
|
+
project_path: FilePath.describe('Path to the Godot project root'),
|
|
87
|
+
content: z.string().optional().describe('Custom README content (overrides template)'),
|
|
88
|
+
template: z.enum(['basic', 'detailed', 'game']).optional().describe('README template style'),
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
async (args) => callGodot(bridge, 'project_creation/create_readme', args),
|
|
92
|
+
);
|
|
93
|
+
// 7. create_project_license
|
|
94
|
+
server.registerTool(
|
|
95
|
+
'create_project_license',
|
|
96
|
+
{
|
|
97
|
+
description: 'Create a LICENSE file for the project',
|
|
98
|
+
inputSchema: {
|
|
99
|
+
project_path: FilePath.describe('Path to the Godot project root'),
|
|
100
|
+
license: z.enum(['MIT', 'Apache-2.0', 'GPL-3.0', 'BSD-3-Clause', 'custom']).describe('License type'),
|
|
101
|
+
custom_text: z.string().optional().describe("Custom license text (required when license is 'custom')"),
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
async (args) => callGodot(bridge, 'project_creation/create_license', args),
|
|
105
|
+
);
|
|
106
|
+
// 8. setup_project_dependencies
|
|
107
|
+
server.registerTool(
|
|
108
|
+
'setup_project_dependencies',
|
|
109
|
+
{
|
|
110
|
+
description: 'Install and configure project addons/dependencies',
|
|
111
|
+
inputSchema: {
|
|
112
|
+
project_path: FilePath.describe('Path to the Godot project root'),
|
|
113
|
+
addons: z
|
|
114
|
+
.array(
|
|
115
|
+
z.object({
|
|
116
|
+
name: z.string().describe('Addon name'),
|
|
117
|
+
source: z.enum(['asset_lib', 'git', 'local']).describe('Where to get the addon from'),
|
|
118
|
+
url: z.string().optional().describe('Git URL or local path (required for git/local sources)'),
|
|
119
|
+
}),
|
|
120
|
+
)
|
|
121
|
+
.describe('List of addons to install'),
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
async (args) => callGodot(bridge, 'project_creation/setup_dependencies', args),
|
|
125
|
+
);
|
|
126
|
+
// 9. validate_project_structure
|
|
127
|
+
server.registerTool(
|
|
128
|
+
'validate_project_structure',
|
|
129
|
+
{
|
|
130
|
+
description: "Validate a Godot project's folder structure and configuration for correctness",
|
|
131
|
+
inputSchema: {
|
|
132
|
+
project_path: FilePath.describe('Path to the Godot project root'),
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
async (args) => callGodot(bridge, 'project_creation/validate_structure', args),
|
|
136
|
+
);
|
|
137
|
+
// 10. get_project_templates
|
|
138
|
+
server.registerTool(
|
|
139
|
+
'get_project_templates',
|
|
140
|
+
{
|
|
141
|
+
description: 'List all available project templates that can be used with create_project',
|
|
142
|
+
inputSchema: {},
|
|
143
|
+
},
|
|
144
|
+
async () => callGodot(bridge, 'project_creation/get_templates'),
|
|
145
|
+
);
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=project_creation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project_creation.js","sourceRoot":"","sources":["../../src/tools/project_creation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,UAAU,4BAA4B,CAAC,MAAiB,EAAE,MAAmB;IACjF,oBAAoB;IACpB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,WAAW,EACT,sFAAsF;QACxF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,kDAAkD,CAAC;YAC3E,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YACnC,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;iBAC3C,QAAQ,EAAE;iBACV,QAAQ,CAAC,uBAAuB,CAAC;YACpC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YAClF,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,cAAc,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;iBACpD,QAAQ,EAAE;iBACV,QAAQ,CAAC,kBAAkB,CAAC;SAChC;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,iCAAiC,EAAE,IAA+B,CAAC,CACxF,CAAC;IAEF,kCAAkC;IAClC,MAAM,CAAC,YAAY,CACjB,8BAA8B,EAC9B;QACE,WAAW,EAAE,8DAA8D;QAC3E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,kDAAkD,CAAC;YAC3E,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YAC1E,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;SACxD;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,uCAAuC,EAAE,IAA+B,CAAC,CAC9F,CAAC;IAEF,gCAAgC;IAChC,MAAM,CAAC,YAAY,CACjB,4BAA4B,EAC5B;QACE,WAAW,EAAE,wDAAwD;QACrE,WAAW,EAAE;YACX,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACjE,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;iBACrC,QAAQ,EAAE;iBACV,QAAQ,CAAC,yBAAyB,CAAC;SACvC;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,qCAAqC,EAAE,IAA+B,CAAC,CAC5F,CAAC;IAEF,gCAAgC;IAChC,MAAM,CAAC,YAAY,CACjB,4BAA4B,EAC5B;QACE,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,kDAAkD,CAAC;YAC3E,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YACnC,MAAM,EAAE,CAAC;iBACN,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;gBACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;gBACpF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;gBAC9D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;aACpF,CAAC,CACH;iBACA,QAAQ,CAAC,2CAA2C,CAAC;SACzD;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,qCAAqC,EAAE,IAA+B,CAAC,CAC5F,CAAC;IAEF,+BAA+B;IAC/B,MAAM,CAAC,YAAY,CACjB,2BAA2B,EAC3B;QACE,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE;YACX,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACjE,iBAAiB,EAAE,CAAC;iBACjB,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,+CAA+C,CAAC;SAC7D;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,2BAA2B,EAAE,IAA+B,CAAC,CAChG,CAAC;IAEF,2BAA2B;IAC3B,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EAAE,2CAA2C;QACxD,WAAW,EAAE;YACX,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACjE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;YACrF,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;iBACnC,QAAQ,EAAE;iBACV,QAAQ,CAAC,uBAAuB,CAAC;SACrC;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,gCAAgC,EAAE,IAA+B,CAAC,CACvF,CAAC;IAEF,4BAA4B;IAC5B,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,WAAW,EAAE,uCAAuC;QACpD,WAAW,EAAE;YACX,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACjE,OAAO,EAAE,CAAC;iBACP,IAAI,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;iBAChE,QAAQ,CAAC,cAAc,CAAC;YAC3B,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,yDAAyD,CAAC;SACvE;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,iCAAiC,EAAE,IAA+B,CAAC,CACxF,CAAC;IAEF,gCAAgC;IAChC,MAAM,CAAC,YAAY,CACjB,4BAA4B,EAC5B;QACE,WAAW,EAAE,mDAAmD;QAChE,WAAW,EAAE;YACX,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACjE,MAAM,EAAE,CAAC;iBACN,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;gBACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACvC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;gBACrF,GAAG,EAAE,CAAC;qBACH,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,wDAAwD,CAAC;aACtE,CAAC,CACH;iBACA,QAAQ,CAAC,2BAA2B,CAAC;SACzC;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,qCAAqC,EAAE,IAA+B,CAAC,CAC5F,CAAC;IAEF,gCAAgC;IAChC,MAAM,CAAC,YAAY,CACjB,4BAA4B,EAC5B;QACE,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE;YACX,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC;SAClE;KACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,SAAS,CAAC,MAAM,EAAE,qCAAqC,EAAE,IAA+B,CAAC,CAC5F,CAAC;IAEF,4BAA4B;IAC5B,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EAAE,2EAA2E;QACxF,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAChE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rendering configuration tools - 10 tools for rendering settings
|
|
3
|
+
*/
|
|
4
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
5
|
+
import type { GodotBridge } from '../godot-bridge.js';
|
|
6
|
+
export declare function registerRenderingConfigTools(server: McpServer, bridge: GodotBridge): void;
|
|
7
|
+
//# sourceMappingURL=rendering_config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rendering_config.d.ts","sourceRoot":"","sources":["../../src/tools/rendering_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,4BAA4B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAiIzF"}
|