unreal-engine-mcp-server 0.3.1 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.production +1 -1
- package/.github/copilot-instructions.md +45 -0
- package/.github/workflows/publish-mcp.yml +1 -1
- package/README.md +22 -7
- package/dist/index.js +137 -46
- package/dist/prompts/index.d.ts +10 -3
- package/dist/prompts/index.js +186 -7
- package/dist/resources/actors.d.ts +19 -1
- package/dist/resources/actors.js +55 -64
- package/dist/resources/assets.d.ts +3 -2
- package/dist/resources/assets.js +117 -109
- package/dist/resources/levels.d.ts +21 -3
- package/dist/resources/levels.js +31 -56
- package/dist/tools/actors.d.ts +3 -14
- package/dist/tools/actors.js +246 -302
- package/dist/tools/animation.d.ts +57 -102
- package/dist/tools/animation.js +429 -450
- package/dist/tools/assets.d.ts +13 -2
- package/dist/tools/assets.js +58 -46
- package/dist/tools/audio.d.ts +22 -13
- package/dist/tools/audio.js +467 -121
- package/dist/tools/blueprint.d.ts +32 -13
- package/dist/tools/blueprint.js +699 -448
- package/dist/tools/build_environment_advanced.d.ts +0 -1
- package/dist/tools/build_environment_advanced.js +236 -87
- package/dist/tools/consolidated-tool-definitions.d.ts +232 -15
- package/dist/tools/consolidated-tool-definitions.js +124 -255
- package/dist/tools/consolidated-tool-handlers.js +749 -766
- package/dist/tools/debug.d.ts +72 -10
- package/dist/tools/debug.js +170 -36
- package/dist/tools/editor.d.ts +9 -2
- package/dist/tools/editor.js +30 -44
- package/dist/tools/foliage.d.ts +34 -15
- package/dist/tools/foliage.js +97 -107
- package/dist/tools/introspection.js +19 -21
- package/dist/tools/landscape.d.ts +1 -2
- package/dist/tools/landscape.js +311 -168
- package/dist/tools/level.d.ts +3 -28
- package/dist/tools/level.js +642 -192
- package/dist/tools/lighting.d.ts +14 -3
- package/dist/tools/lighting.js +236 -123
- package/dist/tools/materials.d.ts +25 -7
- package/dist/tools/materials.js +102 -79
- package/dist/tools/niagara.d.ts +10 -12
- package/dist/tools/niagara.js +74 -94
- package/dist/tools/performance.d.ts +12 -4
- package/dist/tools/performance.js +38 -79
- package/dist/tools/physics.d.ts +34 -10
- package/dist/tools/physics.js +364 -292
- package/dist/tools/rc.js +98 -24
- package/dist/tools/sequence.d.ts +1 -0
- package/dist/tools/sequence.js +146 -24
- package/dist/tools/ui.d.ts +31 -4
- package/dist/tools/ui.js +83 -66
- package/dist/tools/visual.d.ts +11 -0
- package/dist/tools/visual.js +245 -30
- package/dist/types/tool-types.d.ts +0 -6
- package/dist/types/tool-types.js +1 -8
- package/dist/unreal-bridge.d.ts +32 -2
- package/dist/unreal-bridge.js +621 -127
- package/dist/utils/elicitation.d.ts +57 -0
- package/dist/utils/elicitation.js +104 -0
- package/dist/utils/error-handler.d.ts +0 -33
- package/dist/utils/error-handler.js +4 -111
- package/dist/utils/http.d.ts +2 -22
- package/dist/utils/http.js +12 -75
- package/dist/utils/normalize.d.ts +4 -4
- package/dist/utils/normalize.js +15 -7
- package/dist/utils/python-output.d.ts +18 -0
- package/dist/utils/python-output.js +290 -0
- package/dist/utils/python.d.ts +2 -0
- package/dist/utils/python.js +4 -0
- package/dist/utils/response-validator.d.ts +6 -1
- package/dist/utils/response-validator.js +66 -13
- package/dist/utils/result-helpers.d.ts +27 -0
- package/dist/utils/result-helpers.js +147 -0
- package/dist/utils/safe-json.d.ts +0 -2
- package/dist/utils/safe-json.js +0 -43
- package/dist/utils/validation.d.ts +16 -0
- package/dist/utils/validation.js +70 -7
- package/mcp-config-example.json +2 -2
- package/package.json +11 -10
- package/server.json +37 -14
- package/src/index.ts +146 -50
- package/src/prompts/index.ts +211 -13
- package/src/resources/actors.ts +59 -44
- package/src/resources/assets.ts +123 -102
- package/src/resources/levels.ts +37 -47
- package/src/tools/actors.ts +269 -313
- package/src/tools/animation.ts +556 -539
- package/src/tools/assets.ts +59 -45
- package/src/tools/audio.ts +507 -113
- package/src/tools/blueprint.ts +778 -462
- package/src/tools/build_environment_advanced.ts +312 -106
- package/src/tools/consolidated-tool-definitions.ts +136 -267
- package/src/tools/consolidated-tool-handlers.ts +871 -795
- package/src/tools/debug.ts +179 -38
- package/src/tools/editor.ts +35 -37
- package/src/tools/foliage.ts +110 -104
- package/src/tools/introspection.ts +24 -22
- package/src/tools/landscape.ts +334 -181
- package/src/tools/level.ts +683 -182
- package/src/tools/lighting.ts +244 -123
- package/src/tools/materials.ts +114 -83
- package/src/tools/niagara.ts +87 -81
- package/src/tools/performance.ts +49 -88
- package/src/tools/physics.ts +393 -299
- package/src/tools/rc.ts +103 -25
- package/src/tools/sequence.ts +157 -30
- package/src/tools/ui.ts +101 -70
- package/src/tools/visual.ts +250 -29
- package/src/types/tool-types.ts +0 -9
- package/src/unreal-bridge.ts +658 -140
- package/src/utils/elicitation.ts +129 -0
- package/src/utils/error-handler.ts +4 -159
- package/src/utils/http.ts +16 -115
- package/src/utils/normalize.ts +20 -10
- package/src/utils/python-output.ts +351 -0
- package/src/utils/python.ts +3 -0
- package/src/utils/response-validator.ts +68 -17
- package/src/utils/result-helpers.ts +193 -0
- package/src/utils/safe-json.ts +0 -50
- package/src/utils/validation.ts +94 -7
- package/tests/run-unreal-tool-tests.mjs +720 -0
- package/tsconfig.json +2 -2
- package/dist/python-utils.d.ts +0 -29
- package/dist/python-utils.js +0 -54
- package/dist/tools/tool-definitions.d.ts +0 -4919
- package/dist/tools/tool-definitions.js +0 -1065
- package/dist/tools/tool-handlers.d.ts +0 -47
- package/dist/tools/tool-handlers.js +0 -863
- package/dist/types/index.d.ts +0 -323
- package/dist/types/index.js +0 -28
- package/dist/utils/cache-manager.d.ts +0 -64
- package/dist/utils/cache-manager.js +0 -176
- package/dist/utils/errors.d.ts +0 -133
- package/dist/utils/errors.js +0 -256
- package/src/python/editor_compat.py +0 -181
- package/src/python-utils.ts +0 -57
- package/src/tools/tool-definitions.ts +0 -1081
- package/src/tools/tool-handlers.ts +0 -973
- package/src/types/index.ts +0 -414
- package/src/utils/cache-manager.ts +0 -213
- package/src/utils/errors.ts +0 -312
package/dist/unreal-bridge.d.ts
CHANGED
|
@@ -15,6 +15,8 @@ export declare class UnrealBridge {
|
|
|
15
15
|
private readonly MAX_RECONNECT_ATTEMPTS;
|
|
16
16
|
private readonly BASE_RECONNECT_DELAY;
|
|
17
17
|
private autoReconnectEnabled;
|
|
18
|
+
private engineVersionCache?;
|
|
19
|
+
private readonly ENGINE_VERSION_TTL_MS;
|
|
18
20
|
private commandQueue;
|
|
19
21
|
private isProcessing;
|
|
20
22
|
private readonly MIN_COMMAND_DELAY;
|
|
@@ -22,8 +24,13 @@ export declare class UnrealBridge {
|
|
|
22
24
|
private readonly STAT_COMMAND_DELAY;
|
|
23
25
|
private lastCommandTime;
|
|
24
26
|
private lastStatCommandTime;
|
|
25
|
-
private
|
|
27
|
+
private consoleObjectCache;
|
|
28
|
+
private readonly CONSOLE_CACHE_TTL;
|
|
29
|
+
private pluginStatusCache;
|
|
30
|
+
private readonly PLUGIN_CACHE_TTL;
|
|
26
31
|
private readonly UNSAFE_VIEWMODES;
|
|
32
|
+
private readonly HARD_BLOCKED_VIEWMODES;
|
|
33
|
+
private readonly VIEWMODE_ALIASES;
|
|
27
34
|
private readonly PYTHON_TEMPLATES;
|
|
28
35
|
get isConnected(): boolean;
|
|
29
36
|
/**
|
|
@@ -37,9 +44,28 @@ export declare class UnrealBridge {
|
|
|
37
44
|
tryConnect(maxAttempts?: number, timeoutMs?: number, retryDelayMs?: number): Promise<boolean>;
|
|
38
45
|
connect(timeoutMs?: number): Promise<void>;
|
|
39
46
|
httpCall<T = any>(path: string, method?: 'GET' | 'POST' | 'PUT', body?: any): Promise<T>;
|
|
47
|
+
private parsePythonJsonResult;
|
|
48
|
+
ensurePluginsEnabled(pluginNames: string[], context?: string): Promise<string[]>;
|
|
40
49
|
call(body: RcCallBody): Promise<any>;
|
|
41
50
|
getExposed(): Promise<any>;
|
|
42
|
-
executeConsoleCommand(command: string
|
|
51
|
+
executeConsoleCommand(command: string, options?: {
|
|
52
|
+
allowPython?: boolean;
|
|
53
|
+
}): Promise<any>;
|
|
54
|
+
summarizeConsoleCommand(command: string, response: any): {
|
|
55
|
+
command: string;
|
|
56
|
+
output: string;
|
|
57
|
+
logLines: any[];
|
|
58
|
+
returnValue: any;
|
|
59
|
+
raw: any;
|
|
60
|
+
};
|
|
61
|
+
executeConsoleCommands(commands: Iterable<string | {
|
|
62
|
+
command: string;
|
|
63
|
+
priority?: number;
|
|
64
|
+
allowPython?: boolean;
|
|
65
|
+
}>, options?: {
|
|
66
|
+
continueOnError?: boolean;
|
|
67
|
+
delayMs?: number;
|
|
68
|
+
}): Promise<any[]>;
|
|
43
69
|
executePython(command: string): Promise<any>;
|
|
44
70
|
setAutoReconnectEnabled(enabled: boolean): void;
|
|
45
71
|
private scheduleReconnect;
|
|
@@ -109,6 +135,10 @@ export declare class UnrealBridge {
|
|
|
109
135
|
* Start the command processor
|
|
110
136
|
*/
|
|
111
137
|
private startCommandProcessor;
|
|
138
|
+
/**
|
|
139
|
+
* Clean expired entries from console object cache
|
|
140
|
+
*/
|
|
141
|
+
private cleanConsoleCache;
|
|
112
142
|
/**
|
|
113
143
|
* Helper delay function
|
|
114
144
|
*/
|