unreal-engine-mcp-server 0.5.4 → 0.5.5
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/automation/bridge.d.ts.map +1 -0
- package/dist/automation/bridge.js.map +1 -0
- package/dist/automation/connection-manager.d.ts.map +1 -0
- package/dist/automation/connection-manager.js.map +1 -0
- package/dist/automation/handshake.d.ts.map +1 -0
- package/dist/automation/handshake.js.map +1 -0
- package/dist/automation/index.d.ts.map +1 -0
- package/dist/automation/index.js.map +1 -0
- package/dist/automation/message-handler.d.ts.map +1 -0
- package/dist/automation/message-handler.js.map +1 -0
- package/dist/automation/request-tracker.d.ts.map +1 -0
- package/dist/automation/request-tracker.js.map +1 -0
- package/dist/automation/types.d.ts.map +1 -0
- package/dist/automation/types.js.map +1 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +4 -3
- package/dist/cli.js.map +1 -0
- package/dist/config/class-aliases.d.ts.map +1 -0
- package/dist/config/class-aliases.js.map +1 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js.map +1 -0
- package/dist/graphql/loaders.d.ts.map +1 -0
- package/dist/graphql/loaders.js.map +1 -0
- package/dist/graphql/resolvers.d.ts.map +1 -0
- package/dist/graphql/resolvers.js +29 -29
- package/dist/graphql/resolvers.js.map +1 -0
- package/dist/graphql/schema.d.ts.map +1 -0
- package/dist/graphql/schema.js.map +1 -0
- package/dist/graphql/server.d.ts.map +1 -0
- package/dist/graphql/server.js.map +1 -0
- package/dist/graphql/types.d.ts.map +1 -0
- package/dist/graphql/types.js.map +1 -0
- package/dist/handlers/resource-handlers.d.ts.map +1 -0
- package/dist/handlers/resource-handlers.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +64 -7
- package/dist/index.js.map +1 -0
- package/dist/resources/actors.d.ts.map +1 -0
- package/dist/resources/actors.js.map +1 -0
- package/dist/resources/assets.d.ts.map +1 -0
- package/dist/resources/assets.js +6 -4
- package/dist/resources/assets.js.map +1 -0
- package/dist/resources/levels.d.ts.map +1 -0
- package/dist/resources/levels.js.map +1 -0
- package/dist/server/resource-registry.d.ts.map +1 -0
- package/dist/server/resource-registry.js.map +1 -0
- package/dist/server/tool-registry.d.ts.map +1 -0
- package/dist/server/tool-registry.js.map +1 -0
- package/dist/server-setup.d.ts.map +1 -0
- package/dist/server-setup.js.map +1 -0
- package/dist/services/health-monitor.d.ts.map +1 -0
- package/dist/services/health-monitor.js.map +1 -0
- package/dist/services/metrics-server.d.ts.map +1 -0
- package/dist/services/metrics-server.js.map +1 -0
- package/dist/tools/actors.d.ts.map +1 -0
- package/dist/tools/actors.js +3 -1
- package/dist/tools/actors.js.map +1 -0
- package/dist/tools/animation.d.ts.map +1 -0
- package/dist/tools/animation.js +2 -2
- package/dist/tools/animation.js.map +1 -0
- package/dist/tools/assets.d.ts.map +1 -0
- package/dist/tools/assets.js.map +1 -0
- package/dist/tools/audio.d.ts.map +1 -0
- package/dist/tools/audio.js.map +1 -0
- package/dist/tools/base-tool.d.ts.map +1 -0
- package/dist/tools/base-tool.js.map +1 -0
- package/dist/tools/behavior-tree.d.ts.map +1 -0
- package/dist/tools/behavior-tree.js.map +1 -0
- package/dist/tools/blueprint.d.ts.map +1 -0
- package/dist/tools/blueprint.js +4 -2
- package/dist/tools/blueprint.js.map +1 -0
- package/dist/tools/consolidated-tool-definitions.d.ts.map +1 -0
- package/dist/tools/consolidated-tool-definitions.js.map +1 -0
- package/dist/tools/consolidated-tool-handlers.d.ts.map +1 -0
- package/dist/tools/consolidated-tool-handlers.js.map +1 -0
- package/dist/tools/debug.d.ts.map +1 -0
- package/dist/tools/debug.js +3 -1
- package/dist/tools/debug.js.map +1 -0
- package/dist/tools/dynamic-handler-registry.d.ts.map +1 -0
- package/dist/tools/dynamic-handler-registry.js +3 -1
- package/dist/tools/dynamic-handler-registry.js.map +1 -0
- package/dist/tools/editor.d.ts.map +1 -0
- package/dist/tools/editor.js +1 -1
- package/dist/tools/editor.js.map +1 -0
- package/dist/tools/engine.d.ts.map +1 -0
- package/dist/tools/engine.js.map +1 -0
- package/dist/tools/environment.d.ts.map +1 -0
- package/dist/tools/environment.js +2 -2
- package/dist/tools/environment.js.map +1 -0
- package/dist/tools/foliage.d.ts.map +1 -0
- package/dist/tools/foliage.js.map +1 -0
- package/dist/tools/handlers/actor-handlers.d.ts +1 -1
- package/dist/tools/handlers/actor-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/actor-handlers.js +6 -5
- package/dist/tools/handlers/actor-handlers.js.map +1 -0
- package/dist/tools/handlers/animation-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/animation-handlers.js.map +1 -0
- package/dist/tools/handlers/argument-helper.d.ts.map +1 -0
- package/dist/tools/handlers/argument-helper.js.map +1 -0
- package/dist/tools/handlers/asset-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/asset-handlers.js +5 -1
- package/dist/tools/handlers/asset-handlers.js.map +1 -0
- package/dist/tools/handlers/audio-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/audio-handlers.js.map +1 -0
- package/dist/tools/handlers/blueprint-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/blueprint-handlers.js +2 -1
- package/dist/tools/handlers/blueprint-handlers.js.map +1 -0
- package/dist/tools/handlers/common-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/common-handlers.js.map +1 -0
- package/dist/tools/handlers/editor-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/editor-handlers.js +12 -2
- package/dist/tools/handlers/editor-handlers.js.map +1 -0
- package/dist/tools/handlers/effect-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/effect-handlers.js.map +1 -0
- package/dist/tools/handlers/environment-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/environment-handlers.js.map +1 -0
- package/dist/tools/handlers/graph-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/graph-handlers.js +61 -1
- package/dist/tools/handlers/graph-handlers.js.map +1 -0
- package/dist/tools/handlers/input-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/input-handlers.js.map +1 -0
- package/dist/tools/handlers/inspect-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/inspect-handlers.js.map +1 -0
- package/dist/tools/handlers/level-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/level-handlers.js.map +1 -0
- package/dist/tools/handlers/lighting-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/lighting-handlers.js +23 -1
- package/dist/tools/handlers/lighting-handlers.js.map +1 -0
- package/dist/tools/handlers/performance-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/performance-handlers.js +15 -2
- package/dist/tools/handlers/performance-handlers.js.map +1 -0
- package/dist/tools/handlers/pipeline-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/pipeline-handlers.js.map +1 -0
- package/dist/tools/handlers/sequence-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/sequence-handlers.js.map +1 -0
- package/dist/tools/handlers/system-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/system-handlers.js +16 -1
- package/dist/tools/handlers/system-handlers.js.map +1 -0
- package/dist/tools/input.d.ts.map +1 -0
- package/dist/tools/input.js +3 -1
- package/dist/tools/input.js.map +1 -0
- package/dist/tools/introspection.d.ts.map +1 -0
- package/dist/tools/introspection.js.map +1 -0
- package/dist/tools/landscape.d.ts.map +1 -0
- package/dist/tools/landscape.js +3 -1
- package/dist/tools/landscape.js.map +1 -0
- package/dist/tools/level.d.ts.map +1 -0
- package/dist/tools/level.js.map +1 -0
- package/dist/tools/lighting.d.ts.map +1 -0
- package/dist/tools/lighting.js +3 -1
- package/dist/tools/lighting.js.map +1 -0
- package/dist/tools/logs.d.ts.map +1 -0
- package/dist/tools/logs.js.map +1 -0
- package/dist/tools/materials.d.ts.map +1 -0
- package/dist/tools/materials.js +3 -1
- package/dist/tools/materials.js.map +1 -0
- package/dist/tools/niagara.d.ts.map +1 -0
- package/dist/tools/niagara.js +7 -5
- package/dist/tools/niagara.js.map +1 -0
- package/dist/tools/performance.d.ts.map +1 -0
- package/dist/tools/performance.js.map +1 -0
- package/dist/tools/physics.d.ts.map +1 -0
- package/dist/tools/physics.js +9 -7
- package/dist/tools/physics.js.map +1 -0
- package/dist/tools/property-dictionary.d.ts.map +1 -0
- package/dist/tools/property-dictionary.js.map +1 -0
- package/dist/tools/sequence.d.ts.map +1 -0
- package/dist/tools/sequence.js +3 -1
- package/dist/tools/sequence.js.map +1 -0
- package/dist/tools/tool-definition-utils.d.ts.map +1 -0
- package/dist/tools/tool-definition-utils.js.map +1 -0
- package/dist/tools/ui.d.ts.map +1 -0
- package/dist/tools/ui.js +3 -1
- package/dist/tools/ui.js.map +1 -0
- package/dist/types/automation-responses.d.ts.map +1 -0
- package/dist/types/automation-responses.js.map +1 -0
- package/dist/types/env.d.ts.map +1 -0
- package/dist/types/env.js.map +1 -0
- package/dist/types/handler-types.d.ts.map +1 -0
- package/dist/types/handler-types.js.map +1 -0
- package/dist/types/tool-interfaces.d.ts.map +1 -0
- package/dist/types/tool-interfaces.js.map +1 -0
- package/dist/types/tool-types.d.ts.map +1 -0
- package/dist/types/tool-types.js.map +1 -0
- package/dist/unreal-bridge.d.ts +1 -0
- package/dist/unreal-bridge.d.ts.map +1 -0
- package/dist/unreal-bridge.js +8 -0
- package/dist/unreal-bridge.js.map +1 -0
- package/dist/utils/command-validator.d.ts.map +1 -0
- package/dist/utils/command-validator.js.map +1 -0
- package/dist/utils/elicitation.d.ts.map +1 -0
- package/dist/utils/elicitation.js.map +1 -0
- package/dist/utils/error-handler.d.ts.map +1 -0
- package/dist/utils/error-handler.js.map +1 -0
- package/dist/utils/ini-reader.d.ts.map +1 -0
- package/dist/utils/ini-reader.js.map +1 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/normalize.d.ts.map +1 -0
- package/dist/utils/normalize.js.map +1 -0
- package/dist/utils/path-security.d.ts.map +1 -0
- package/dist/utils/path-security.js.map +1 -0
- package/dist/utils/response-factory.d.ts.map +1 -0
- package/dist/utils/response-factory.js +3 -1
- package/dist/utils/response-factory.js.map +1 -0
- package/dist/utils/response-validator.d.ts.map +1 -0
- package/dist/utils/response-validator.js.map +1 -0
- package/dist/utils/result-helpers.d.ts.map +1 -0
- package/dist/utils/result-helpers.js.map +1 -0
- package/dist/utils/safe-json.d.ts.map +1 -0
- package/dist/utils/safe-json.js.map +1 -0
- package/dist/utils/unreal-command-queue.d.ts.map +1 -0
- package/dist/utils/unreal-command-queue.js.map +1 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/wasm/index.d.ts.map +1 -0
- package/dist/wasm/index.js.map +1 -0
- package/package.json +12 -34
- package/server.json +2 -2
- package/.dockerignore +0 -57
- package/.env.example +0 -26
- package/.env.production +0 -61
- package/.eslintrc.json +0 -0
- package/.eslintrc.override.json +0 -8
- package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -94
- package/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -56
- package/.github/copilot-instructions.md +0 -478
- package/.github/dependabot.yml +0 -19
- package/.github/labeler.yml +0 -24
- package/.github/labels.yml +0 -70
- package/.github/pull_request_template.md +0 -42
- package/.github/release-drafter-config.yml +0 -51
- package/.github/workflows/auto-merge.yml +0 -38
- package/.github/workflows/ci.yml +0 -38
- package/.github/workflows/dependency-review.yml +0 -17
- package/.github/workflows/gemini-issue-triage.yml +0 -172
- package/.github/workflows/greetings.yml +0 -27
- package/.github/workflows/labeler.yml +0 -17
- package/.github/workflows/links.yml +0 -80
- package/.github/workflows/pr-size-labeler.yml +0 -137
- package/.github/workflows/publish-mcp.yml +0 -79
- package/.github/workflows/release-drafter.yml +0 -24
- package/.github/workflows/release.yml +0 -112
- package/.github/workflows/semantic-pull-request.yml +0 -35
- package/.github/workflows/smoke-test.yml +0 -36
- package/.github/workflows/stale.yml +0 -28
- package/CONTRIBUTING.md +0 -140
- package/Dockerfile +0 -37
- package/GEMINI.md +0 -115
- package/Public/Plugin_setup_guide.mp4 +0 -0
- package/Public/icon.png +0 -0
- package/claude_desktop_config_example.json +0 -15
- package/dist/types/responses.d.ts +0 -249
- package/dist/types/responses.js +0 -2
- package/docs/GraphQL-API.md +0 -888
- package/docs/Migration-Guide-v0.5.0.md +0 -684
- package/docs/Roadmap.md +0 -53
- package/docs/WebAssembly-Integration.md +0 -628
- package/docs/editor-plugin-extension.md +0 -370
- package/docs/handler-mapping.md +0 -249
- package/docs/native-automation-progress.md +0 -128
- package/docs/testing-guide.md +0 -423
- package/eslint.config.mjs +0 -68
- package/mcp-config-example.json +0 -14
- package/plugins/McpAutomationBridge/Config/FilterPlugin.ini +0 -8
- package/plugins/McpAutomationBridge/McpAutomationBridge.uplugin +0 -64
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/McpAutomationBridge.Build.cs +0 -189
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeGlobals.cpp +0 -22
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeGlobals.h +0 -30
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeHelpers.h +0 -1983
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeModule.cpp +0 -72
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeSettings.cpp +0 -46
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeSubsystem.cpp +0 -846
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_AnimationHandlers.cpp +0 -2393
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_AssetQueryHandlers.cpp +0 -300
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_AssetWorkflowHandlers.cpp +0 -2807
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_AudioHandlers.cpp +0 -1087
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BehaviorTreeHandlers.cpp +0 -488
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintCreationHandlers.cpp +0 -643
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintCreationHandlers.h +0 -31
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintGraphHandlers.cpp +0 -1094
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintHandlers.cpp +0 -5750
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintHandlers_List.cpp +0 -152
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_ControlHandlers.cpp +0 -2614
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_DebugHandlers.cpp +0 -42
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_EditorFunctionHandlers.cpp +0 -1237
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_EffectHandlers.cpp +0 -1725
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_EnvironmentHandlers.cpp +0 -2265
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_FoliageHandlers.cpp +0 -954
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_InputHandlers.cpp +0 -209
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_InsightsHandlers.cpp +0 -41
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_LandscapeHandlers.cpp +0 -1164
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_LevelHandlers.cpp +0 -762
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_LightingHandlers.cpp +0 -663
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_LogHandlers.cpp +0 -136
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_MaterialGraphHandlers.cpp +0 -494
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_NiagaraGraphHandlers.cpp +0 -278
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_NiagaraHandlers.cpp +0 -625
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_PerformanceHandlers.cpp +0 -401
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_PipelineHandlers.cpp +0 -67
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_ProcessRequest.cpp +0 -472
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_PropertyHandlers.cpp +0 -2634
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_RenderHandlers.cpp +0 -189
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_SCSHandlers.cpp +0 -917
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_SCSHandlers.h +0 -39
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_SequenceHandlers.cpp +0 -2706
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_SequencerHandlers.cpp +0 -519
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_TestHandlers.cpp +0 -38
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_UiHandlers.cpp +0 -668
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_WorldPartitionHandlers.cpp +0 -346
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpBridgeWebSocket.cpp +0 -1345
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpBridgeWebSocket.h +0 -149
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpConnectionManager.cpp +0 -782
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Public/McpAutomationBridgeSettings.h +0 -115
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Public/McpAutomationBridgeSubsystem.h +0 -796
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Public/McpConnectionManager.h +0 -117
- package/scripts/check-unreal-connection.mjs +0 -19
- package/scripts/clean-tmp.js +0 -23
- package/scripts/patch-wasm.js +0 -26
- package/scripts/run-all-tests.mjs +0 -136
- package/scripts/smoke-test.ts +0 -94
- package/scripts/sync-mcp-plugin.js +0 -143
- package/scripts/test-no-plugin-alternates.mjs +0 -113
- package/scripts/validate-server.js +0 -46
- package/scripts/verify-automation-bridge.js +0 -200
- package/src/automation/bridge.ts +0 -630
- package/src/automation/connection-manager.ts +0 -148
- package/src/automation/handshake.ts +0 -99
- package/src/automation/index.ts +0 -2
- package/src/automation/message-handler.ts +0 -192
- package/src/automation/request-tracker.ts +0 -155
- package/src/automation/types.ts +0 -108
- package/src/cli.ts +0 -34
- package/src/config/class-aliases.ts +0 -65
- package/src/config.ts +0 -73
- package/src/constants.ts +0 -29
- package/src/graphql/loaders.ts +0 -244
- package/src/graphql/resolvers.ts +0 -1008
- package/src/graphql/schema.ts +0 -452
- package/src/graphql/server.ts +0 -156
- package/src/graphql/types.ts +0 -10
- package/src/handlers/resource-handlers.ts +0 -186
- package/src/index.ts +0 -243
- package/src/resources/actors.ts +0 -127
- package/src/resources/assets.ts +0 -286
- package/src/resources/levels.ts +0 -68
- package/src/server/resource-registry.ts +0 -47
- package/src/server/tool-registry.ts +0 -354
- package/src/server-setup.ts +0 -114
- package/src/services/health-monitor.ts +0 -132
- package/src/services/metrics-server.ts +0 -176
- package/src/tools/actors.ts +0 -564
- package/src/tools/animation.ts +0 -941
- package/src/tools/assets.ts +0 -394
- package/src/tools/audio.ts +0 -499
- package/src/tools/base-tool.ts +0 -52
- package/src/tools/behavior-tree.ts +0 -45
- package/src/tools/blueprint.ts +0 -940
- package/src/tools/consolidated-tool-definitions.ts +0 -1256
- package/src/tools/consolidated-tool-handlers.ts +0 -302
- package/src/tools/debug.ts +0 -622
- package/src/tools/dynamic-handler-registry.ts +0 -33
- package/src/tools/editor.ts +0 -435
- package/src/tools/engine.ts +0 -43
- package/src/tools/environment.ts +0 -281
- package/src/tools/foliage.ts +0 -596
- package/src/tools/handlers/actor-handlers.ts +0 -244
- package/src/tools/handlers/animation-handlers.ts +0 -237
- package/src/tools/handlers/argument-helper.ts +0 -142
- package/src/tools/handlers/asset-handlers.ts +0 -550
- package/src/tools/handlers/audio-handlers.ts +0 -194
- package/src/tools/handlers/blueprint-handlers.ts +0 -380
- package/src/tools/handlers/common-handlers.ts +0 -108
- package/src/tools/handlers/editor-handlers.ts +0 -124
- package/src/tools/handlers/effect-handlers.ts +0 -224
- package/src/tools/handlers/environment-handlers.ts +0 -183
- package/src/tools/handlers/graph-handlers.ts +0 -117
- package/src/tools/handlers/input-handlers.ts +0 -28
- package/src/tools/handlers/inspect-handlers.ts +0 -450
- package/src/tools/handlers/level-handlers.ts +0 -253
- package/src/tools/handlers/lighting-handlers.ts +0 -151
- package/src/tools/handlers/performance-handlers.ts +0 -132
- package/src/tools/handlers/pipeline-handlers.ts +0 -194
- package/src/tools/handlers/sequence-handlers.ts +0 -438
- package/src/tools/handlers/system-handlers.ts +0 -564
- package/src/tools/input.ts +0 -160
- package/src/tools/introspection.ts +0 -689
- package/src/tools/landscape.ts +0 -649
- package/src/tools/level.ts +0 -989
- package/src/tools/lighting.ts +0 -1052
- package/src/tools/logs.ts +0 -219
- package/src/tools/materials.ts +0 -295
- package/src/tools/niagara.ts +0 -485
- package/src/tools/performance.ts +0 -661
- package/src/tools/physics.ts +0 -679
- package/src/tools/property-dictionary.ts +0 -98
- package/src/tools/sequence.ts +0 -385
- package/src/tools/tool-definition-utils.ts +0 -35
- package/src/tools/ui.ts +0 -452
- package/src/types/automation-responses.ts +0 -119
- package/src/types/env.ts +0 -17
- package/src/types/handler-types.ts +0 -442
- package/src/types/responses.ts +0 -355
- package/src/types/tool-interfaces.ts +0 -250
- package/src/types/tool-types.ts +0 -575
- package/src/unreal-bridge.ts +0 -693
- package/src/utils/command-validator.ts +0 -139
- package/src/utils/elicitation.ts +0 -132
- package/src/utils/error-handler.ts +0 -287
- package/src/utils/ini-reader.ts +0 -86
- package/src/utils/logger.ts +0 -35
- package/src/utils/normalize.test.ts +0 -162
- package/src/utils/normalize.ts +0 -146
- package/src/utils/path-security.ts +0 -43
- package/src/utils/response-factory.ts +0 -44
- package/src/utils/response-validator.ts +0 -395
- package/src/utils/result-helpers.ts +0 -195
- package/src/utils/safe-json.test.ts +0 -90
- package/src/utils/safe-json.ts +0 -70
- package/src/utils/unreal-command-queue.ts +0 -166
- package/src/utils/validation.test.ts +0 -184
- package/src/utils/validation.ts +0 -312
- package/src/wasm/index.ts +0 -838
- package/test-server.mjs +0 -100
- package/tests/test-animation.mjs +0 -369
- package/tests/test-asset-advanced.mjs +0 -82
- package/tests/test-asset-graph.mjs +0 -311
- package/tests/test-audio.mjs +0 -417
- package/tests/test-automation-timeouts.mjs +0 -98
- package/tests/test-behavior-tree.mjs +0 -444
- package/tests/test-blueprint-graph.mjs +0 -410
- package/tests/test-blueprint.mjs +0 -577
- package/tests/test-client-mode.mjs +0 -86
- package/tests/test-console-command.mjs +0 -56
- package/tests/test-control-actor.mjs +0 -425
- package/tests/test-control-editor.mjs +0 -112
- package/tests/test-graphql.mjs +0 -372
- package/tests/test-input.mjs +0 -349
- package/tests/test-inspect.mjs +0 -302
- package/tests/test-landscape.mjs +0 -316
- package/tests/test-lighting.mjs +0 -428
- package/tests/test-manage-asset.mjs +0 -438
- package/tests/test-manage-level.mjs +0 -89
- package/tests/test-materials.mjs +0 -356
- package/tests/test-niagara.mjs +0 -185
- package/tests/test-no-inline-python.mjs +0 -122
- package/tests/test-performance.mjs +0 -539
- package/tests/test-plugin-handshake.mjs +0 -82
- package/tests/test-runner.mjs +0 -993
- package/tests/test-sequence.mjs +0 -104
- package/tests/test-system.mjs +0 -96
- package/tests/test-wasm.mjs +0 -283
- package/tests/test-world-partition.mjs +0 -215
- package/tsconfig.json +0 -56
- package/vitest.config.ts +0 -35
- package/wasm/Cargo.lock +0 -363
- package/wasm/Cargo.toml +0 -42
- package/wasm/LICENSE +0 -21
- package/wasm/README.md +0 -253
- package/wasm/src/dependency_resolver.rs +0 -377
- package/wasm/src/lib.rs +0 -153
- package/wasm/src/property_parser.rs +0 -271
- package/wasm/src/transform_math.rs +0 -396
- package/wasm/tests/integration.rs +0 -109
package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Public/McpAutomationBridgeSubsystem.h
DELETED
|
@@ -1,796 +0,0 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include "Containers/Ticker.h"
|
|
4
|
-
#include "CoreMinimal.h"
|
|
5
|
-
#include "Dom/JsonObject.h"
|
|
6
|
-
#include "EditorSubsystem.h"
|
|
7
|
-
#include "HAL/CriticalSection.h"
|
|
8
|
-
#include "Templates/SharedPointer.h"
|
|
9
|
-
#include "McpAutomationBridgeSubsystem.generated.h"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
UENUM(BlueprintType)
|
|
13
|
-
enum class EMcpAutomationBridgeState : uint8 {
|
|
14
|
-
Disconnected,
|
|
15
|
-
Connecting,
|
|
16
|
-
Connected
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
/** Minimal payload wrapper for incoming automation messages. */
|
|
20
|
-
USTRUCT(BlueprintType)
|
|
21
|
-
struct MCPAUTOMATIONBRIDGE_API FMcpAutomationMessage {
|
|
22
|
-
GENERATED_BODY()
|
|
23
|
-
|
|
24
|
-
UPROPERTY(BlueprintReadOnly, Category = "MCP Automation")
|
|
25
|
-
FString Type;
|
|
26
|
-
|
|
27
|
-
UPROPERTY(BlueprintReadOnly, Category = "MCP Automation")
|
|
28
|
-
FString PayloadJson;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FMcpAutomationMessageReceived,
|
|
32
|
-
const FMcpAutomationMessage &,
|
|
33
|
-
Message);
|
|
34
|
-
|
|
35
|
-
class FMcpBridgeWebSocket;
|
|
36
|
-
DECLARE_LOG_CATEGORY_EXTERN(LogMcpAutomationBridgeSubsystem, Log, All);
|
|
37
|
-
|
|
38
|
-
UCLASS()
|
|
39
|
-
class MCPAUTOMATIONBRIDGE_API UMcpAutomationBridgeSubsystem
|
|
40
|
-
: public UEditorSubsystem {
|
|
41
|
-
GENERATED_BODY()
|
|
42
|
-
|
|
43
|
-
public:
|
|
44
|
-
virtual void Initialize(FSubsystemCollectionBase &Collection) override;
|
|
45
|
-
virtual void Deinitialize() override;
|
|
46
|
-
|
|
47
|
-
UFUNCTION(BlueprintCallable, Category = "MCP Automation")
|
|
48
|
-
bool IsBridgeActive() const;
|
|
49
|
-
|
|
50
|
-
UFUNCTION(BlueprintCallable, Category = "MCP Automation")
|
|
51
|
-
EMcpAutomationBridgeState GetBridgeState() const;
|
|
52
|
-
|
|
53
|
-
UFUNCTION(BlueprintCallable, Category = "MCP Automation")
|
|
54
|
-
bool SendRawMessage(const FString &Message);
|
|
55
|
-
|
|
56
|
-
UPROPERTY(BlueprintAssignable, Category = "MCP Automation")
|
|
57
|
-
FMcpAutomationMessageReceived OnMessageReceived;
|
|
58
|
-
|
|
59
|
-
// Public helpers for sending automation responses/errors. These need to be
|
|
60
|
-
// callable from out-of-line helper functions and translation-unit-level
|
|
61
|
-
// handlers that receive a UMcpAutomationBridgeSubsystem* (e.g. static
|
|
62
|
-
// blueprint helper routines). They were previously declared private which
|
|
63
|
-
// prevented those helpers from invoking them via a 'Self' pointer.
|
|
64
|
-
void SendAutomationResponse(TSharedPtr<FMcpBridgeWebSocket> TargetSocket,
|
|
65
|
-
const FString &RequestId, bool bSuccess,
|
|
66
|
-
const FString &Message,
|
|
67
|
-
const TSharedPtr<FJsonObject> &Result = nullptr,
|
|
68
|
-
const FString &ErrorCode = FString());
|
|
69
|
-
void SendAutomationError(TSharedPtr<FMcpBridgeWebSocket> TargetSocket,
|
|
70
|
-
const FString &RequestId, const FString &Message,
|
|
71
|
-
const FString &ErrorCode);
|
|
72
|
-
|
|
73
|
-
bool ExecuteEditorCommands(const TArray<FString> &Commands,
|
|
74
|
-
FString &OutErrorMessage);
|
|
75
|
-
#if MCP_HAS_CONTROLRIG_FACTORY
|
|
76
|
-
UBlueprint *CreateControlRigBlueprint(const FString &AssetName,
|
|
77
|
-
const FString &PackagePath,
|
|
78
|
-
USkeleton *TargetSkeleton,
|
|
79
|
-
FString &OutError);
|
|
80
|
-
#endif
|
|
81
|
-
|
|
82
|
-
// Automation Handler Delegate
|
|
83
|
-
using FAutomationHandler = TFunction<bool(const FString &, const FString &,
|
|
84
|
-
const TSharedPtr<FJsonObject> &,
|
|
85
|
-
TSharedPtr<FMcpBridgeWebSocket>)>;
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* Registers a handler for a specific automation action.
|
|
89
|
-
* This allows for O(1) dispatch of automation requests and runtime
|
|
90
|
-
* extensibility.
|
|
91
|
-
*/
|
|
92
|
-
void RegisterHandler(const FString &Action, FAutomationHandler Handler);
|
|
93
|
-
|
|
94
|
-
private:
|
|
95
|
-
// Telemetry structs moved to McpConnectionManager
|
|
96
|
-
|
|
97
|
-
bool Tick(float DeltaTime);
|
|
98
|
-
|
|
99
|
-
// Connection Manager
|
|
100
|
-
TSharedPtr<class FMcpConnectionManager> ConnectionManager;
|
|
101
|
-
|
|
102
|
-
// Track a blueprint currently being modified by this subsystem request
|
|
103
|
-
// so scope-exit handlers can reliably clear busy state without
|
|
104
|
-
// attempting to capture local variables inside macros.
|
|
105
|
-
FString CurrentBusyBlueprintKey;
|
|
106
|
-
bool bCurrentBlueprintBusyMarked = false;
|
|
107
|
-
bool bCurrentBlueprintBusyScheduled = false;
|
|
108
|
-
|
|
109
|
-
// Pending automation request queue (thread-safe). Inbound socket threads
|
|
110
|
-
// will enqueue requests here; the queue is drained sequentially on the
|
|
111
|
-
// game thread to ensure deterministic processing order and avoid
|
|
112
|
-
// reentrancy issues.
|
|
113
|
-
struct FPendingAutomationRequest {
|
|
114
|
-
FString RequestId;
|
|
115
|
-
FString Action;
|
|
116
|
-
TSharedPtr<FJsonObject> Payload;
|
|
117
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket;
|
|
118
|
-
};
|
|
119
|
-
TArray<FPendingAutomationRequest> PendingAutomationRequests;
|
|
120
|
-
FCriticalSection PendingAutomationRequestsMutex;
|
|
121
|
-
bool bPendingRequestsScheduled = false;
|
|
122
|
-
void ProcessPendingAutomationRequests();
|
|
123
|
-
|
|
124
|
-
void RecordAutomationTelemetry(const FString &RequestId, bool bSuccess,
|
|
125
|
-
const FString &Message,
|
|
126
|
-
const FString &ErrorCode);
|
|
127
|
-
|
|
128
|
-
// Active Log Device
|
|
129
|
-
TSharedPtr<FOutputDevice> LogCaptureDevice;
|
|
130
|
-
|
|
131
|
-
// Action handlers (implemented in separate translation units)
|
|
132
|
-
TMap<FString, FAutomationHandler> AutomationHandlers;
|
|
133
|
-
void InitializeHandlers();
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
* Handle lightweight, well-known editor function invocations sent from the
|
|
137
|
-
* server. This action is intended as a native replacement for the
|
|
138
|
-
* execute_editor_python fallback for common scripted templates (spawn,
|
|
139
|
-
* delete, list actors, set viewport camera, asset existence checks, etc.).
|
|
140
|
-
* When the plugin implements a native function we will handle it here and
|
|
141
|
-
* avoid executing arbitrary Python inside the editor.
|
|
142
|
-
*/
|
|
143
|
-
bool
|
|
144
|
-
HandleExecuteEditorFunction(const FString &RequestId, const FString &Action,
|
|
145
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
146
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
147
|
-
bool
|
|
148
|
-
HandleSetObjectProperty(const FString &RequestId, const FString &Action,
|
|
149
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
150
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
151
|
-
bool
|
|
152
|
-
HandleGetObjectProperty(const FString &RequestId, const FString &Action,
|
|
153
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
154
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
155
|
-
// Array manipulation operations
|
|
156
|
-
bool HandleArrayAppend(const FString &RequestId, const FString &Action,
|
|
157
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
158
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
159
|
-
bool HandleArrayRemove(const FString &RequestId, const FString &Action,
|
|
160
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
161
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
162
|
-
bool HandleArrayInsert(const FString &RequestId, const FString &Action,
|
|
163
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
164
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
165
|
-
bool HandleArrayGetElement(const FString &RequestId, const FString &Action,
|
|
166
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
167
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
168
|
-
bool HandleArraySetElement(const FString &RequestId, const FString &Action,
|
|
169
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
170
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
171
|
-
bool HandleArrayClear(const FString &RequestId, const FString &Action,
|
|
172
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
173
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
174
|
-
// Map manipulation operations
|
|
175
|
-
bool HandleMapSetValue(const FString &RequestId, const FString &Action,
|
|
176
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
177
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
178
|
-
bool HandleMapGetValue(const FString &RequestId, const FString &Action,
|
|
179
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
180
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
181
|
-
bool HandleMapRemoveKey(const FString &RequestId, const FString &Action,
|
|
182
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
183
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
184
|
-
bool HandleMapHasKey(const FString &RequestId, const FString &Action,
|
|
185
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
186
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
187
|
-
bool HandleMapGetKeys(const FString &RequestId, const FString &Action,
|
|
188
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
189
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
190
|
-
bool HandleMapClear(const FString &RequestId, const FString &Action,
|
|
191
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
192
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
193
|
-
// Set manipulation operations
|
|
194
|
-
bool HandleSetAdd(const FString &RequestId, const FString &Action,
|
|
195
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
196
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
197
|
-
bool HandleSetRemove(const FString &RequestId, const FString &Action,
|
|
198
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
199
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
200
|
-
bool HandleSetContains(const FString &RequestId, const FString &Action,
|
|
201
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
202
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
203
|
-
bool HandleSetClear(const FString &RequestId, const FString &Action,
|
|
204
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
205
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
206
|
-
// Asset-related automation actions implemented by the plugin (editor-only
|
|
207
|
-
// operations)
|
|
208
|
-
bool HandleAssetAction(const FString &RequestId, const FString &Action,
|
|
209
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
210
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
211
|
-
// Asset dependency graph traversal
|
|
212
|
-
bool
|
|
213
|
-
HandleGetAssetReferences(const FString &RequestId, const FString &Action,
|
|
214
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
215
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
216
|
-
bool
|
|
217
|
-
HandleGetAssetDependencies(const FString &RequestId, const FString &Action,
|
|
218
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
219
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
220
|
-
// Actor/editor control actions implemented by the plugin
|
|
221
|
-
bool
|
|
222
|
-
HandleControlActorAction(const FString &RequestId, const FString &Action,
|
|
223
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
224
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
225
|
-
bool
|
|
226
|
-
HandleControlEditorAction(const FString &RequestId, const FString &Action,
|
|
227
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
228
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
229
|
-
// Level and lighting helpers (top-level actions)
|
|
230
|
-
bool HandleLevelAction(const FString &RequestId, const FString &Action,
|
|
231
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
232
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
233
|
-
bool HandleUiAction(const FString &RequestId, const FString &Action,
|
|
234
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
235
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
236
|
-
// Animation and physics related automation actions
|
|
237
|
-
bool HandleAnimationPhysicsAction(
|
|
238
|
-
const FString &RequestId, const FString &Action,
|
|
239
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
240
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
241
|
-
bool HandleEffectAction(const FString &RequestId, const FString &Action,
|
|
242
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
243
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
244
|
-
bool HandleBlueprintAction(const FString &RequestId, const FString &Action,
|
|
245
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
246
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
247
|
-
bool HandleSequenceAction(const FString &RequestId, const FString &Action,
|
|
248
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
249
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
250
|
-
bool HandleInputAction(const FString &RequestId, const FString &Action,
|
|
251
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
252
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
253
|
-
bool CreateNiagaraEffect(const FString &RequestId,
|
|
254
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
255
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket,
|
|
256
|
-
const FString &EffectName,
|
|
257
|
-
const FString &DefaultSystemPath);
|
|
258
|
-
// Audio related automation actions
|
|
259
|
-
bool HandleAudioAction(const FString &RequestId, const FString &Action,
|
|
260
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
261
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
262
|
-
// Lighting related automation actions
|
|
263
|
-
bool HandleLightingAction(const FString &RequestId, const FString &Action,
|
|
264
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
265
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
266
|
-
// Performance related automation actions
|
|
267
|
-
bool
|
|
268
|
-
HandlePerformanceAction(const FString &RequestId, const FString &Action,
|
|
269
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
270
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
271
|
-
// Environment building automation actions (landscape, foliage, etc.)
|
|
272
|
-
bool HandleBuildEnvironmentAction(
|
|
273
|
-
const FString &RequestId, const FString &Action,
|
|
274
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
275
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
276
|
-
bool HandleControlEnvironmentAction(
|
|
277
|
-
const FString &RequestId, const FString &Action,
|
|
278
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
279
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
280
|
-
bool HandlePaintFoliage(const FString &RequestId, const FString &Action,
|
|
281
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
282
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
283
|
-
bool
|
|
284
|
-
HandleGetFoliageInstances(const FString &RequestId, const FString &Action,
|
|
285
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
286
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
287
|
-
bool HandleRemoveFoliage(const FString &RequestId, const FString &Action,
|
|
288
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
289
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
290
|
-
// Asset workflow handlers
|
|
291
|
-
bool
|
|
292
|
-
HandleSourceControlCheckout(const FString &RequestId, const FString &Action,
|
|
293
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
294
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
295
|
-
bool
|
|
296
|
-
HandleSourceControlSubmit(const FString &RequestId, const FString &Action,
|
|
297
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
298
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
299
|
-
bool HandleFixupRedirectors(const FString &RequestId, const FString &Action,
|
|
300
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
301
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
302
|
-
bool HandleBulkRenameAssets(const FString &RequestId, const FString &Action,
|
|
303
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
304
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
305
|
-
bool HandleBulkDeleteAssets(const FString &RequestId, const FString &Action,
|
|
306
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
307
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
308
|
-
bool
|
|
309
|
-
HandleGenerateThumbnail(const FString &RequestId, const FString &Action,
|
|
310
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
311
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
312
|
-
// Landscape, foliage, and Niagara handlers
|
|
313
|
-
bool HandleCreateLandscape(const FString &RequestId, const FString &Action,
|
|
314
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
315
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
316
|
-
bool HandleCreateProceduralTerrain(
|
|
317
|
-
const FString &RequestId, const FString &Action,
|
|
318
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
319
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
320
|
-
bool HandleCreateProceduralFoliage(
|
|
321
|
-
const FString &RequestId, const FString &Action,
|
|
322
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
323
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
324
|
-
bool HandleCreateLandscapeGrassType(
|
|
325
|
-
const FString &RequestId, const FString &Action,
|
|
326
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
327
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
328
|
-
bool HandleGenerateLODs(const FString &RequestId, const FString &Action,
|
|
329
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
330
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
331
|
-
bool HandleBakeLightmap(const FString &RequestId, const FString &Action,
|
|
332
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
333
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
334
|
-
// Aggregate landscape editor that dispatches to specific edit ops
|
|
335
|
-
bool HandleEditLandscape(const FString &RequestId, const FString &Action,
|
|
336
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
337
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
338
|
-
// Specific landscape edit operations
|
|
339
|
-
bool HandleModifyHeightmap(const FString &RequestId, const FString &Action,
|
|
340
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
341
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
342
|
-
bool
|
|
343
|
-
HandlePaintLandscapeLayer(const FString &RequestId, const FString &Action,
|
|
344
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
345
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
346
|
-
bool HandleSculptLandscape(const FString &RequestId, const FString &Action,
|
|
347
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
348
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
349
|
-
bool
|
|
350
|
-
HandleSetLandscapeMaterial(const FString &RequestId, const FString &Action,
|
|
351
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
352
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
353
|
-
bool HandleCreateNiagaraSystemNative(
|
|
354
|
-
const FString &RequestId, const FString &Action,
|
|
355
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
356
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
357
|
-
bool
|
|
358
|
-
HandleAddSequencerKeyframe(const FString &RequestId, const FString &Action,
|
|
359
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
360
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
361
|
-
bool
|
|
362
|
-
HandleManageSequencerTrack(const FString &RequestId, const FString &Action,
|
|
363
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
364
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
365
|
-
bool
|
|
366
|
-
HandleCreateAnimBlueprint(const FString &RequestId, const FString &Action,
|
|
367
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
368
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
369
|
-
bool
|
|
370
|
-
HandleCreateMaterialNodes(const FString &RequestId, const FString &Action,
|
|
371
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
372
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
373
|
-
// Niagara system handlers
|
|
374
|
-
bool
|
|
375
|
-
HandleCreateNiagaraSystem(const FString &RequestId, const FString &Action,
|
|
376
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
377
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
378
|
-
bool
|
|
379
|
-
HandleCreateNiagaraRibbon(const FString &RequestId, const FString &Action,
|
|
380
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
381
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
382
|
-
bool
|
|
383
|
-
HandleCreateNiagaraEmitter(const FString &RequestId, const FString &Action,
|
|
384
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
385
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
386
|
-
bool
|
|
387
|
-
HandleSpawnNiagaraActor(const FString &RequestId, const FString &Action,
|
|
388
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
389
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
390
|
-
bool HandleModifyNiagaraParameter(
|
|
391
|
-
const FString &RequestId, const FString &Action,
|
|
392
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
393
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
394
|
-
// Animation blueprint handlers
|
|
395
|
-
bool HandlePlayAnimMontage(const FString &RequestId, const FString &Action,
|
|
396
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
397
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
398
|
-
bool HandleSetupRagdoll(const FString &RequestId, const FString &Action,
|
|
399
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
400
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
401
|
-
// Material graph handlers
|
|
402
|
-
bool HandleAddMaterialTextureSample(
|
|
403
|
-
const FString &RequestId, const FString &Action,
|
|
404
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
405
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
406
|
-
bool
|
|
407
|
-
HandleAddMaterialExpression(const FString &RequestId, const FString &Action,
|
|
408
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
409
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
410
|
-
// Sequencer track handlers
|
|
411
|
-
bool HandleAddCameraTrack(const FString &RequestId, const FString &Action,
|
|
412
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
413
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
414
|
-
bool
|
|
415
|
-
HandleAddAnimationTrack(const FString &RequestId, const FString &Action,
|
|
416
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
417
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
418
|
-
bool
|
|
419
|
-
HandleAddTransformTrack(const FString &RequestId, const FString &Action,
|
|
420
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
421
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
422
|
-
// Foliage handlers
|
|
423
|
-
bool HandleAddFoliageType(const FString &RequestId, const FString &Action,
|
|
424
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
425
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
426
|
-
bool
|
|
427
|
-
HandleAddFoliageInstances(const FString &RequestId, const FString &Action,
|
|
428
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
429
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
430
|
-
// SCS Blueprint authoring handler
|
|
431
|
-
bool HandleSCSAction(const FString &RequestId, const FString &Action,
|
|
432
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
433
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
434
|
-
|
|
435
|
-
// Additional consolidated tool handlers
|
|
436
|
-
bool
|
|
437
|
-
HandleSystemControlAction(const FString &RequestId, const FString &Action,
|
|
438
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
439
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
440
|
-
bool
|
|
441
|
-
HandleConsoleCommandAction(const FString &RequestId, const FString &Action,
|
|
442
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
443
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
444
|
-
bool HandleInspectAction(const FString &RequestId, const FString &Action,
|
|
445
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
446
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
447
|
-
|
|
448
|
-
// 1. Editor Authoring & Graph Editing
|
|
449
|
-
bool
|
|
450
|
-
HandleBlueprintGraphAction(const FString &RequestId, const FString &Action,
|
|
451
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
452
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
453
|
-
bool
|
|
454
|
-
HandleNiagaraGraphAction(const FString &RequestId, const FString &Action,
|
|
455
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
456
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
457
|
-
bool HandleMaterialGraphAction(const FString &RequestId,
|
|
458
|
-
const FString &Action,
|
|
459
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
460
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
461
|
-
bool
|
|
462
|
-
HandleBehaviorTreeAction(const FString &RequestId, const FString &Action,
|
|
463
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
464
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
465
|
-
bool
|
|
466
|
-
HandleWorldPartitionAction(const FString &RequestId, const FString &Action,
|
|
467
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
468
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
469
|
-
bool HandleRenderAction(const FString &RequestId, const FString &Action,
|
|
470
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
471
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
472
|
-
bool HandleListBlueprints(const FString &RequestId, const FString &Action,
|
|
473
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
474
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
475
|
-
|
|
476
|
-
// 2. Execution & Build / Test Pipeline
|
|
477
|
-
bool HandlePipelineAction(const FString &RequestId, const FString &Action,
|
|
478
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
479
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
480
|
-
bool HandleTestAction(const FString &RequestId, const FString &Action,
|
|
481
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
482
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
483
|
-
|
|
484
|
-
// 3. Observability, Logs, Debugging & History
|
|
485
|
-
bool HandleLogAction(const FString &RequestId, const FString &Action,
|
|
486
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
487
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
488
|
-
bool HandleDebugAction(const FString &RequestId, const FString &Action,
|
|
489
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
490
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
491
|
-
bool HandleAssetQueryAction(const FString &RequestId, const FString &Action,
|
|
492
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
493
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
494
|
-
bool HandleInsightsAction(const FString &RequestId, const FString &Action,
|
|
495
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
496
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
497
|
-
|
|
498
|
-
// 4. Input, UI, Hotkeys & Dialogs
|
|
499
|
-
bool
|
|
500
|
-
HandleUiAutomationAction(const FString &RequestId, const FString &Action,
|
|
501
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
502
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
503
|
-
|
|
504
|
-
private:
|
|
505
|
-
// Ticker handle for managing the subsystems tick function
|
|
506
|
-
FTSTicker::FDelegateHandle TickHandle;
|
|
507
|
-
|
|
508
|
-
// Sequence helpers
|
|
509
|
-
FString ResolveSequencePath(const TSharedPtr<FJsonObject> &Payload);
|
|
510
|
-
TSharedPtr<FJsonObject> EnsureSequenceEntry(const FString &SeqPath);
|
|
511
|
-
|
|
512
|
-
// Individual sequence action handlers
|
|
513
|
-
bool HandleSequenceCreate(const FString &RequestId,
|
|
514
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
515
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
516
|
-
bool HandleSequenceSetDisplayRate(const FString &RequestId,
|
|
517
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
518
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
519
|
-
bool HandleSequenceSetProperties(const FString &RequestId,
|
|
520
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
521
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
522
|
-
bool HandleSequenceOpen(const FString &RequestId,
|
|
523
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
524
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
525
|
-
bool HandleSequenceAddCamera(const FString &RequestId,
|
|
526
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
527
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
528
|
-
bool HandleSequencePlay(const FString &RequestId,
|
|
529
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
530
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
531
|
-
bool HandleSequenceAddActor(const FString &RequestId,
|
|
532
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
533
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
534
|
-
bool HandleSequenceAddActors(const FString &RequestId,
|
|
535
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
536
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
537
|
-
bool HandleSequenceAddSpawnable(const FString &RequestId,
|
|
538
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
539
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
540
|
-
bool HandleSequenceRemoveActors(const FString &RequestId,
|
|
541
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
542
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
543
|
-
bool HandleSequenceGetBindings(const FString &RequestId,
|
|
544
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
545
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
546
|
-
bool HandleSequenceGetProperties(const FString &RequestId,
|
|
547
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
548
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
549
|
-
bool HandleSequenceSetPlaybackSpeed(const FString &RequestId,
|
|
550
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
551
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
552
|
-
bool HandleSequencePause(const FString &RequestId,
|
|
553
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
554
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
555
|
-
bool HandleSequenceStop(const FString &RequestId,
|
|
556
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
557
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
558
|
-
bool HandleSequenceList(const FString &RequestId,
|
|
559
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
560
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
561
|
-
bool HandleSequenceDuplicate(const FString &RequestId,
|
|
562
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
563
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
564
|
-
bool HandleSequenceRename(const FString &RequestId,
|
|
565
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
566
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
567
|
-
bool HandleSequenceDelete(const FString &RequestId,
|
|
568
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
569
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
570
|
-
bool HandleSequenceGetMetadata(const FString &RequestId,
|
|
571
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
572
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
573
|
-
bool HandleSequenceAddKeyframe(const FString &RequestId,
|
|
574
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
575
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
576
|
-
|
|
577
|
-
// Control handlers
|
|
578
|
-
AActor *FindActorByName(const FString &Target);
|
|
579
|
-
|
|
580
|
-
// Control Actor Subhandlers
|
|
581
|
-
bool HandleControlActorSpawn(const FString &RequestId,
|
|
582
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
583
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
584
|
-
bool HandleControlActorSpawnBlueprint(const FString &RequestId,
|
|
585
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
586
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
587
|
-
bool HandleControlActorDelete(const FString &RequestId,
|
|
588
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
589
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
590
|
-
bool HandleControlActorApplyForce(const FString &RequestId,
|
|
591
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
592
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
593
|
-
bool HandleControlActorSetTransform(const FString &RequestId,
|
|
594
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
595
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
596
|
-
bool HandleControlActorGetTransform(const FString &RequestId,
|
|
597
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
598
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
599
|
-
bool HandleControlActorSetVisibility(const FString &RequestId,
|
|
600
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
601
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
602
|
-
bool HandleControlActorAddComponent(const FString &RequestId,
|
|
603
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
604
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
605
|
-
bool HandleSequenceAddSection(const FString &RequestId,
|
|
606
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
607
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
608
|
-
bool HandleSequenceSetTickResolution(const FString &RequestId,
|
|
609
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
610
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
611
|
-
bool HandleSequenceSetViewRange(const FString &RequestId,
|
|
612
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
613
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
614
|
-
bool HandleSequenceSetTrackMuted(const FString &RequestId,
|
|
615
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
616
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
617
|
-
bool HandleSequenceSetTrackSolo(const FString &RequestId,
|
|
618
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
619
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
620
|
-
bool HandleSequenceSetTrackLocked(const FString &RequestId,
|
|
621
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
622
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
623
|
-
bool HandleSequenceRemoveTrack(const FString &RequestId,
|
|
624
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
625
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
626
|
-
|
|
627
|
-
bool HandleControlActorSetComponentProperties(
|
|
628
|
-
const FString &RequestId, const TSharedPtr<FJsonObject> &Payload,
|
|
629
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
630
|
-
bool HandleControlActorGetComponents(const FString &RequestId,
|
|
631
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
632
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
633
|
-
bool HandleControlActorDuplicate(const FString &RequestId,
|
|
634
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
635
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
636
|
-
bool HandleControlActorAttach(const FString &RequestId,
|
|
637
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
638
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
639
|
-
bool HandleControlActorDetach(const FString &RequestId,
|
|
640
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
641
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
642
|
-
bool HandleControlActorFindByTag(const FString &RequestId,
|
|
643
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
644
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
645
|
-
bool HandleControlActorAddTag(const FString &RequestId,
|
|
646
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
647
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
648
|
-
bool HandleControlActorRemoveTag(const FString &RequestId,
|
|
649
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
650
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
651
|
-
bool HandleControlActorFindByName(const FString &RequestId,
|
|
652
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
653
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
654
|
-
bool HandleControlActorDeleteByTag(const FString &RequestId,
|
|
655
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
656
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
657
|
-
bool HandleControlActorSetBlueprintVariables(
|
|
658
|
-
const FString &RequestId, const TSharedPtr<FJsonObject> &Payload,
|
|
659
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
660
|
-
bool HandleControlActorCreateSnapshot(const FString &RequestId,
|
|
661
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
662
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
663
|
-
bool HandleControlActorList(const FString &RequestId,
|
|
664
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
665
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
666
|
-
bool HandleControlActorGet(const FString &RequestId,
|
|
667
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
668
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
669
|
-
bool
|
|
670
|
-
HandleControlActorRestoreSnapshot(const FString &RequestId,
|
|
671
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
672
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
673
|
-
bool HandleControlActorExport(const FString &RequestId,
|
|
674
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
675
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
676
|
-
bool HandleControlActorGetBoundingBox(const FString &RequestId,
|
|
677
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
678
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
679
|
-
bool HandleControlActorGetMetadata(const FString &RequestId,
|
|
680
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
681
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
682
|
-
|
|
683
|
-
// Control Editor Subhandlers
|
|
684
|
-
bool HandleControlEditorPlay(const FString &RequestId,
|
|
685
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
686
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
687
|
-
bool HandleControlEditorStop(const FString &RequestId,
|
|
688
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
689
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
690
|
-
bool HandleControlEditorEject(const FString &RequestId,
|
|
691
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
692
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
693
|
-
bool HandleControlEditorPossess(const FString &RequestId,
|
|
694
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
695
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
696
|
-
bool HandleControlEditorFocusActor(const FString &RequestId,
|
|
697
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
698
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
699
|
-
bool HandleControlEditorSetCamera(const FString &RequestId,
|
|
700
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
701
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
702
|
-
bool HandleControlEditorSetViewMode(const FString &RequestId,
|
|
703
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
704
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
705
|
-
bool HandleControlEditorOpenAsset(const FString &RequestId,
|
|
706
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
707
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
708
|
-
|
|
709
|
-
// Asset handlers
|
|
710
|
-
bool HandleImportAsset(const FString &RequestId,
|
|
711
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
712
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
713
|
-
bool HandleCreateMaterial(const FString &RequestId,
|
|
714
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
715
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
716
|
-
bool HandleCreateMaterialInstance(const FString &RequestId,
|
|
717
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
718
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
719
|
-
bool HandleCreateNiagaraSystemAsset(const FString &RequestId,
|
|
720
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
721
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
722
|
-
bool HandleDuplicateAsset(const FString &RequestId,
|
|
723
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
724
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
725
|
-
bool HandleRenameAsset(const FString &RequestId,
|
|
726
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
727
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
728
|
-
bool HandleMoveAsset(const FString &RequestId,
|
|
729
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
730
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
731
|
-
bool HandleDeleteAssets(const FString &RequestId,
|
|
732
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
733
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
734
|
-
bool HandleListAssets(const FString &RequestId,
|
|
735
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
736
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
737
|
-
bool HandleGetAsset(const FString &RequestId,
|
|
738
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
739
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
740
|
-
bool HandleCreateFolder(const FString &RequestId,
|
|
741
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
742
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
743
|
-
bool HandleGetDependencies(const FString &RequestId,
|
|
744
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
745
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
746
|
-
bool HandleGetAssetGraph(const FString &RequestId,
|
|
747
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
748
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
749
|
-
bool HandleCreateThumbnail(const FString &RequestId,
|
|
750
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
751
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
752
|
-
bool HandleSetTags(const FString &RequestId,
|
|
753
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
754
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
755
|
-
bool HandleSetMetadata(const FString &RequestId,
|
|
756
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
757
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
758
|
-
bool HandleGetMetadata(const FString &RequestId,
|
|
759
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
760
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
761
|
-
bool HandleGenerateReport(const FString &RequestId,
|
|
762
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
763
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
764
|
-
bool HandleValidateAsset(const FString &RequestId,
|
|
765
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
766
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
767
|
-
bool HandleAddMaterialParameter(const FString &RequestId,
|
|
768
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
769
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
770
|
-
bool HandleListMaterialInstances(const FString &RequestId,
|
|
771
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
772
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
773
|
-
bool HandleResetInstanceParameters(const FString &RequestId,
|
|
774
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
775
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
776
|
-
bool HandleDoesAssetExist(const FString &RequestId,
|
|
777
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
778
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
779
|
-
bool HandleGetMaterialStats(const FString &RequestId,
|
|
780
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
781
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
782
|
-
bool HandleRebuildMaterial(const FString &RequestId,
|
|
783
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
784
|
-
TSharedPtr<FMcpBridgeWebSocket> Socket);
|
|
785
|
-
|
|
786
|
-
// Lightweight snapshot cache for automation requests (e.g., create_snapshot)
|
|
787
|
-
TMap<FString, FTransform> CachedActorSnapshots;
|
|
788
|
-
|
|
789
|
-
/** Guards against reentrant automation request processing */
|
|
790
|
-
bool bProcessingAutomationRequest = false;
|
|
791
|
-
|
|
792
|
-
void
|
|
793
|
-
ProcessAutomationRequest(const FString &RequestId, const FString &Action,
|
|
794
|
-
const TSharedPtr<FJsonObject> &Payload,
|
|
795
|
-
TSharedPtr<FMcpBridgeWebSocket> RequestingSocket);
|
|
796
|
-
};
|