ue-mcp 1.1.32 → 1.1.34
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/README.md +140 -24
- package/dist/epic-enrich.js +13 -0
- package/dist/epic-enrich.js.map +1 -1
- package/dist/flow/loader.js +25 -0
- package/dist/flow/loader.js.map +1 -1
- package/dist/flow/schema.d.ts +4 -4
- package/dist/tool-counts.json +6 -6
- package/dist/tools/blueprint.js +2 -1
- package/dist/tools/blueprint.js.map +1 -1
- package/dist/tools/reflection.js +4 -1
- package/dist/tools/reflection.js.map +1 -1
- package/dist/ue-mcp.default.yml +60 -1
- package/package.json +2 -2
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AudioHandlers_SoundCue.cpp +2 -2
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/BlueprintHandlers.cpp +136 -5
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/BlueprintHandlers.h +1 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/NiagaraHandlers.cpp +13 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/ReflectionHandlers.cpp +84 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/ReflectionHandlers.h +1 -0
package/README.md
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
# UE-MCP
|
|
2
|
+
[](https://www.npmjs.com/package/ue-mcp)
|
|
3
|
+
[](https://www.npmjs.com/package/ue-mcp)
|
|
4
|
+
[](https://github.com/db-lyon/ue-mcp/actions/workflows/ci.yml)
|
|
5
|
+
[](https://github.com/db-lyon/ue-mcp/stargazers)
|
|
6
|
+
[](LICENSE)
|
|
2
7
|
|
|
3
|
-
**Unreal Engine Model Context Protocol Server** - gives AI assistants deep read/write access to the Unreal Editor through <!-- count:tools -->24<!-- /count --> category tools covering <!-- count:actions -->
|
|
8
|
+
**Unreal Engine Model Context Protocol Server** - gives AI assistants deep read/write access to the Unreal Editor through <!-- count:tools -->24<!-- /count --> category tools covering <!-- count:actions -->741+<!-- /count --> actions, plus a YAML flow engine for multi-step workflows and an npm plugin system for extending the surface.
|
|
9
|
+
|
|
10
|
+
On UE 5.8+ it also wraps Epic's entire native AI Toolset Registry - 830 official Unreal tools, called in-process and surfaced as `epic_*` actions in the matching category: Sequencer in `animation`, PCG in `pcg`, static meshes in `asset`.
|
|
4
11
|
|
|
5
12
|
```mermaid
|
|
6
13
|
flowchart LR
|
|
@@ -10,7 +17,9 @@ flowchart LR
|
|
|
10
17
|
MCP -->|direct fs| FS[Config INI<br/>C++ Headers<br/>Asset Listing]
|
|
11
18
|
```
|
|
12
19
|
|
|
13
|
-
Blueprints, materials, levels, actors, animation, VFX, landscape, PCG, foliage, audio, UI, physics, navigation, AI, GAS, networking, sequencer, build pipeline
|
|
20
|
+
Blueprints, materials, levels, actors, animation, VFX, landscape, PCG, foliage, audio, UI, physics, navigation, AI, StateTree, GAS, networking, sequencer, build pipeline - all programmable through natural language.
|
|
21
|
+
|
|
22
|
+
Filesystem reads (INI config, C++ headers, asset listing) work with the editor closed, so an agent can explore the project before anything is running.
|
|
14
23
|
|
|
15
24
|
## Quick Start
|
|
16
25
|
|
|
@@ -28,14 +37,23 @@ The interactive setup will:
|
|
|
28
37
|
|
|
29
38
|
Restart the editor once after setup to load the bridge plugin. To update later: `npx ue-mcp update`
|
|
30
39
|
|
|
31
|
-
Then
|
|
40
|
+
Then talk to your AI in plain English:
|
|
32
41
|
|
|
33
42
|
```
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
43
|
+
"Check the UE-MCP connection and tell me what's in the current level."
|
|
44
|
+
"Place a point light 300 units above the player start, intensity 5000, warm white."
|
|
45
|
+
"Create an emissive material that pulses, and apply it to every cube in the level."
|
|
46
|
+
"Build the project in Development and report any compile errors."
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### If it doesn't connect
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
npx ue-mcp doctor
|
|
37
53
|
```
|
|
38
54
|
|
|
55
|
+
Most first-run failures are one of three things: the editor hasn't been restarted since `init`, the bridge plugin failed to compile (check the editor's Output Log for `UE_MCP_Bridge`), or the editor is open on a different project than the one configured. See [Troubleshooting](https://ue-mcp.com/docs/troubleshooting/).
|
|
56
|
+
|
|
39
57
|
### Manual Configuration
|
|
40
58
|
|
|
41
59
|
If you prefer to configure manually, add to your MCP client config:
|
|
@@ -51,43 +69,141 @@ If you prefer to configure manually, add to your MCP client config:
|
|
|
51
69
|
}
|
|
52
70
|
```
|
|
53
71
|
|
|
54
|
-
##
|
|
72
|
+
## See It Work
|
|
55
73
|
|
|
56
|
-
|
|
74
|
+
UE-MCP ships a built-in 19-step demo that builds a complete procedural scene - landscape, PCG scatter, Niagara VFX, materials, lighting, and a playable blueprint - entirely through the bridge:
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
demo(action="step", stepIndex=1) ... through 19
|
|
78
|
+
demo(action="cleanup") restores the level
|
|
79
|
+
```
|
|
57
80
|
|
|
58
|
-
- [
|
|
81
|
+
Nothing is pre-authored. Every asset in the scene is created by the agent at runtime. Full walkthrough: [Neon Shrine Demo](https://ue-mcp.com/docs/neon-shrine-demo/).
|
|
59
82
|
|
|
60
83
|
## What Can It Do?
|
|
61
84
|
|
|
62
85
|
| Category | Examples |
|
|
63
86
|
|----------|----------|
|
|
64
|
-
| **Levels** | Place/move/delete actors, spawn lights and volumes, manage splines, actor bounds |
|
|
65
|
-
| **Blueprints** | Read/write graphs, add nodes, connect pins, compile, CDO property access |
|
|
66
|
-
| **Materials** | Create materials and instances, author expression graphs |
|
|
87
|
+
| **Levels** | Place/move/delete actors, spawn lights and volumes, manage splines, actor bounds, water bodies |
|
|
88
|
+
| **Blueprints** | Read/write graphs, add nodes, connect pins, compile, CDO and component property access |
|
|
89
|
+
| **Materials** | Create materials and instances, author expression graphs, set parameters |
|
|
67
90
|
| **Assets** | CRUD, import meshes/textures/animations, datatables, mesh bounds/collision/nav |
|
|
68
91
|
| **Animation** | Anim blueprints, montages, blendspaces, skeletons |
|
|
69
|
-
| **VFX** | Niagara systems, emitters, parameters |
|
|
92
|
+
| **VFX** | Niagara systems, emitters, modules, renderers, parameters |
|
|
70
93
|
| **Landscape** | Sculpt terrain, paint layers, import heightmaps |
|
|
94
|
+
| **Foliage** | Painting, foliage types, instance queries |
|
|
71
95
|
| **PCG** | Author and execute Procedural Content Generation graphs |
|
|
72
|
-
| **
|
|
73
|
-
| **GAS** | Gameplay Ability System — attributes, abilities, effects, cues |
|
|
74
|
-
| **Networking** | Replication, dormancy, relevancy, net priority |
|
|
96
|
+
| **Audio** | SoundCues, MetaSounds, attenuation, ambient audio, submixes |
|
|
75
97
|
| **UI** | UMG widgets, editor utility widgets and blueprints, runtime delegate inspection |
|
|
76
|
-
| **
|
|
77
|
-
| **
|
|
98
|
+
| **Gameplay** | Physics, collision, navigation, navmesh inspection, behavior trees, EQS, perception, input |
|
|
99
|
+
| **StateTree** | States, tasks, conditions, transitions, bindings, evaluators, parameters |
|
|
100
|
+
| **Chooser** | Chooser tables, columns, rows, result assets |
|
|
101
|
+
| **GAS** | Gameplay Ability System - attributes, abilities, effects, cues, actor stand-up |
|
|
102
|
+
| **Networking** | Replication, dormancy, relevancy, net priority |
|
|
103
|
+
| **Editor** | Console, Python, PIE, viewport, sequencer, build pipeline, logs, editor lifecycle |
|
|
104
|
+
| **Reflection** | Class/struct/enum introspection, gameplay tags, SaveGame inspection |
|
|
105
|
+
| **Project** | Status, INI config, C++ source/header parsing, build |
|
|
106
|
+
| **Fab** | Import assets from your owned Fab library |
|
|
107
|
+
| **Plugins** | Install, configure, and provision UE-MCP extension plugins |
|
|
108
|
+
| **Epic** | Toolset Registry discovery and direct tool calls (UE 5.8+) |
|
|
109
|
+
| **Demo** | Built-in 19-step Neon Shrine procedural scene |
|
|
110
|
+
| **Feedback** | Submit tool-gap reports as GitHub issues |
|
|
111
|
+
|
|
112
|
+
Full parameter-level reference: [Tool Reference](https://ue-mcp.com/docs/tool-reference/).
|
|
113
|
+
|
|
114
|
+
## Flows
|
|
115
|
+
|
|
116
|
+
Any sequence of actions can be captured as a YAML flow in `ue-mcp.yml` next to your `.uproject`, then run as one call. Config is hot-reloaded, so you edit and re-run without restarting anything.
|
|
117
|
+
|
|
118
|
+
```yaml
|
|
119
|
+
ue-mcp:
|
|
120
|
+
version: 1
|
|
121
|
+
|
|
122
|
+
flows:
|
|
123
|
+
build_and_check:
|
|
124
|
+
description: Build the project and verify the editor is connected
|
|
125
|
+
steps:
|
|
126
|
+
1:
|
|
127
|
+
task: project.build
|
|
128
|
+
options:
|
|
129
|
+
configuration: Development
|
|
130
|
+
2:
|
|
131
|
+
task: project.get_status
|
|
132
|
+
```
|
|
78
133
|
|
|
79
|
-
|
|
134
|
+
```
|
|
135
|
+
flow(action="run", flowName="build_and_check")
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
Every one of the <!-- count:actions -->741+<!-- /count --> actions is also a flow task. Flows support step references, retries, rollback, custom tasks in your own `.js`/`.ts`, and shell steps. See [Flows](https://ue-mcp.com/docs/flows/).
|
|
80
139
|
|
|
81
|
-
|
|
82
|
-
- **Linux** — UE 5.6+ (contributed by [@robinduckett](https://github.com/robinduckett))
|
|
140
|
+
## Plugins
|
|
83
141
|
|
|
84
|
-
|
|
142
|
+
UE-MCP is extensible through npm. A plugin can inject new actions into existing categories, or provision an entirely new category backed by its own C++ handlers.
|
|
85
143
|
|
|
86
|
-
|
|
144
|
+
```bash
|
|
145
|
+
npm install ue-mcp-<plugin>
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
Injected actions appear inside the `pcg`/`landscape`/etc. tools the agent is already using, so there is nothing extra for it to discover. See [Plugins](https://ue-mcp.com/docs/plugins/) for the consumer view and [Plugin Authoring](https://ue-mcp.com/docs/plugins-authoring/) for the contract.
|
|
149
|
+
|
|
150
|
+
## Agent Skills
|
|
151
|
+
|
|
152
|
+
The package ships skills that teach agents the non-obvious parts of driving the editor, and they load automatically in clients that support them:
|
|
153
|
+
|
|
154
|
+
| Skill | Covers |
|
|
155
|
+
|-------|--------|
|
|
156
|
+
| `ue-mcp-workflow` | Required order of operations, editor lifecycle, project scoping |
|
|
157
|
+
| `ue-mcp-blueprint` | Graph authoring, node discovery, pin wiring, compile loops |
|
|
158
|
+
| `ue-mcp-niagara` | Emitter/module stack authoring and renderer setup |
|
|
159
|
+
| `ue-mcp-native-cpp` | Writing and building native C++ against the bridge |
|
|
160
|
+
| `ue-mcp-epic-routing` | When to route to the `epic` toolsets vs native handlers |
|
|
161
|
+
|
|
162
|
+
## Safety
|
|
163
|
+
|
|
164
|
+
An agent with write access to your project is a real risk, so the bridge is built with brakes:
|
|
165
|
+
|
|
166
|
+
- **Write guards** - configurable rules can block or require confirmation on mutating methods before they reach the editor.
|
|
167
|
+
- **Source control guard** - writes to checked-in assets can be gated on source control state instead of silently overwriting.
|
|
168
|
+
- **Flow rollback** - handlers report `created`/`existed`/`updated` and flows can snapshot git state before a run, so a failed multi-step flow doesn't leave debris.
|
|
169
|
+
- **Idempotency by convention** - re-running an action that already applied is a no-op rather than a duplicate.
|
|
170
|
+
|
|
171
|
+
Details: [Guards](https://ue-mcp.com/docs/plugins-guards/) and [Handler Conventions](https://ue-mcp.com/docs/handler-conventions/).
|
|
172
|
+
|
|
173
|
+
## Requirements
|
|
174
|
+
|
|
175
|
+
| | |
|
|
176
|
+
|---|---|
|
|
177
|
+
| **Unreal Engine** | 5.4-5.8 (Windows), 5.6+ (Linux). `epic` category needs 5.8+. |
|
|
178
|
+
| **Node.js** | 18 or newer |
|
|
179
|
+
| **UE plugins** | `PythonScriptPlugin` (ships with the engine); `init` enables the rest for you |
|
|
180
|
+
| **C++ toolchain** | Required - the bridge is a C++ plugin and compiles on first editor launch. On Windows that means Visual Studio with the C++ workload. |
|
|
181
|
+
|
|
182
|
+
## Documentation
|
|
183
|
+
|
|
184
|
+
**[https://ue-mcp.com/docs](https://ue-mcp.com/docs)**
|
|
185
|
+
|
|
186
|
+
- [Getting Started](https://ue-mcp.com/docs/getting-started/) - Zero-knowledge walkthrough, install to first actor placed
|
|
187
|
+
- [Tool Reference](https://ue-mcp.com/docs/tool-reference/) - Every tool, action, and parameter
|
|
188
|
+
- [Architecture](https://ue-mcp.com/docs/architecture/) - How the server, bridge, and editor fit together
|
|
189
|
+
- [Flows](https://ue-mcp.com/docs/flows/) - Multi-step YAML workflows, custom tasks, rollback
|
|
190
|
+
- [Plugins](https://ue-mcp.com/docs/plugins/) - Extending the surface through npm
|
|
191
|
+
- [Configuration](https://ue-mcp.com/docs/configuration/) - `ue-mcp.yml` and MCP client config
|
|
192
|
+
- [Troubleshooting](https://ue-mcp.com/docs/troubleshooting/) - Connection, build, and asset path issues
|
|
193
|
+
- [Development](https://ue-mcp.com/docs/development/) - Building from source, testing, contributing
|
|
194
|
+
|
|
195
|
+
## Sponsor
|
|
196
|
+
|
|
197
|
+
Thanks for using UE-MCP. It's free and MIT licensed. If it helps your work,
|
|
198
|
+
[sponsorship](https://github.com/sponsors/db-lyon) is appreciated.
|
|
87
199
|
|
|
88
200
|
## Contributing
|
|
89
201
|
|
|
90
|
-
Issues and pull requests welcome.
|
|
202
|
+
Issues and pull requests welcome. Start with [Development](https://ue-mcp.com/docs/development/).
|
|
203
|
+
|
|
204
|
+
Install [git-lfs](https://git-lfs.com) before cloning - the bundled test project stores `.uasset` / `.umap` via LFS, and a plain `git clone` leaves them as pointer files.
|
|
205
|
+
|
|
206
|
+
If an AI agent had to fall back to `execute_python` during your session, it will offer to submit structured feedback automatically. That is how we prioritize which native handlers to add next.
|
|
91
207
|
|
|
92
208
|
## License
|
|
93
209
|
|
package/dist/epic-enrich.js
CHANGED
|
@@ -13,6 +13,19 @@ const ROUTES = [
|
|
|
13
13
|
{ test: /\.blueprint\.|blueprinttools/i, category: "blueprint" },
|
|
14
14
|
{ test: /\.actor\.|actortools/i, category: "level" },
|
|
15
15
|
{ test: /\.asset\.|assettools|data_?asset|curve_?table|dataregistry|data_?registry/i, category: "asset" },
|
|
16
|
+
// Appended rules: every one of these matched nothing above, so placing them
|
|
17
|
+
// last cannot change an existing route (first match wins). They exist because
|
|
18
|
+
// an agent doing static-mesh or plugin work should find Epic's tools in the
|
|
19
|
+
// category it is already in, not have to detour through the epic umbrella.
|
|
20
|
+
{ test: /skeletal_?mesh/i, category: "animation" },
|
|
21
|
+
{ test: /static_?mesh|\btexture|data_?table|string_?table|semanticsearch/i, category: "asset" },
|
|
22
|
+
{ test: /\.scene\.|scenetools|\.primitive\.|primitivetools/i, category: "level" },
|
|
23
|
+
{ test: /\.object\.|objecttools/i, category: "reflection" },
|
|
24
|
+
{ test: /behavior_?tree|worldcondition/i, category: "gameplay" },
|
|
25
|
+
{ test: /slateinspector/i, category: "widget" },
|
|
26
|
+
{ test: /plugintoolset|gamefeatures/i, category: "plugins" },
|
|
27
|
+
{ test: /editorapptoolset|logstoolset/i, category: "editor" },
|
|
28
|
+
{ test: /configsettings|automationtest/i, category: "project" },
|
|
16
29
|
];
|
|
17
30
|
/** Resolve the ue-mcp category for an Epic toolset name, or null for the umbrella. */
|
|
18
31
|
export function routeToolset(toolsetName) {
|
package/dist/epic-enrich.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epic-enrich.js","sourceRoot":"","sources":["../src/epic-enrich.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,MAAM,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,6CAA6C,EAAE,QAAQ,EAAE,KAAK,EAAE;IACxE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE;IACzC,EAAE,IAAI,EAAE,gCAAgC,EAAE,QAAQ,EAAE,KAAK,EAAE;IAC3D,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC7C,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE;IAC/C,EAAE,IAAI,EAAE,8CAA8C,EAAE,QAAQ,EAAE,WAAW,EAAE;IAC/E,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE;IAC/C,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE;IAC3C,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE;IAC7C,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE;IACzC,EAAE,IAAI,EAAE,+BAA+B,EAAE,QAAQ,EAAE,WAAW,EAAE;IAChE,EAAE,IAAI,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,EAAE;IACpD,EAAE,IAAI,EAAE,4EAA4E,EAAE,QAAQ,EAAE,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"epic-enrich.js","sourceRoot":"","sources":["../src/epic-enrich.ts"],"names":[],"mappings":"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"}
|
package/dist/flow/loader.js
CHANGED
|
@@ -314,7 +314,32 @@ function defaultFlows() {
|
|
|
314
314
|
sourceExpression: "Sampled", sourceOutput: "RGB",
|
|
315
315
|
targetExpression: "OutColor",
|
|
316
316
|
});
|
|
317
|
+
// niagara_fire — author a valid, emitting flame from scratch and verify it.
|
|
318
|
+
// Not a demo: a 0-to-1 best-practice starting point for a fire effect. Default
|
|
319
|
+
// asset domain is a real one (/Game/VFX/Fire); override name/packagePath via
|
|
320
|
+
// runtime params. The last step is the verify gate — the run surfaces whether
|
|
321
|
+
// the system actually emits, catching the empty-shell failure.
|
|
322
|
+
const FIRE_PKG = "/Game/VFX/Fire";
|
|
323
|
+
const fireSteps = {
|
|
324
|
+
1: { task: "niagara.create_emitter", options: { name: "E_Flame", packagePath: FIRE_PKG } },
|
|
325
|
+
2: { task: "niagara.create", options: { name: "NS_Fire", packagePath: FIRE_PKG } },
|
|
326
|
+
3: { task: "niagara.add_emitter", options: { systemPath: "${steps.2.path}", emitterPath: "${steps.1.path}" } },
|
|
327
|
+
// Continuous emission.
|
|
328
|
+
4: { task: "niagara.set_module_input", options: { systemPath: "${steps.2.path}", moduleName: "SpawnRate", inputName: "SpawnRate", value: "60", stackContext: "EmitterUpdate" } },
|
|
329
|
+
// Rise: initial upward velocity.
|
|
330
|
+
5: { task: "niagara.set_module_input", options: { systemPath: "${steps.2.path}", moduleName: "AddVelocity", inputName: "Velocity", value: "0,0,160", stackContext: "ParticleSpawn" } },
|
|
331
|
+
// Fire colour (HDR orange for an additive/emissive read).
|
|
332
|
+
6: { task: "niagara.set_module_input", options: { systemPath: "${steps.2.path}", moduleName: "Color", inputName: "Color", value: "4.0,1.2,0.15,1.0", stackContext: "ParticleUpdate" } },
|
|
333
|
+
// Verify gate: does it emit?
|
|
334
|
+
7: { task: "niagara.validate", options: { systemPath: "${steps.2.path}" } },
|
|
335
|
+
};
|
|
317
336
|
return {
|
|
337
|
+
niagara_fire: {
|
|
338
|
+
description: "Build a fire Niagara system from scratch (spawn rate, upward velocity, HDR " +
|
|
339
|
+
"orange colour) and verify it emits. A 0-to-1 best-practice starting point, not " +
|
|
340
|
+
"a demo. Lands at /Game/VFX/Fire/NS_Fire; override name/packagePath via params.",
|
|
341
|
+
steps: fireSteps,
|
|
342
|
+
},
|
|
318
343
|
beacon: {
|
|
319
344
|
description: "Demo — build a shrine scene from scratch: floor, pedestal, orb, five pillars, " +
|
|
320
345
|
"four materials (dark stone, brushed metal, warm stone, parameterized emissive), " +
|
package/dist/flow/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/flow/loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/flow/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAqB,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAmB,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,KAAgB;IAC5C,MAAM,KAAK,GAA4B,EAAE,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9D,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;YAE9C,oEAAoE;YACpE,uEAAuE;YACvE,wEAAwE;YACxE,oEAAoE;YACpE,uEAAuE;YACvE,+DAA+D;YAC/D,MAAM,OAAO,GAA4B;gBACvC,UAAU,EAAE,QAAQ;gBACpB,KAAK,EAAE,IAAI,CAAC,IAAI;aACjB,CAAC;YACF,IAAI,IAAI,CAAC,WAAW;gBAAE,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YAE7D,KAAK,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,OAAO,CAAC,GAAG;QACf,UAAU,EAAE,OAAO;QACnB,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,sDAAsD;KACpE,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC;AAC1C,CAAC;AAED,sBAAsB;AACtB,MAAM,GAAG,GAAG,oBAAoB,CAAC;AACjC,MAAM,IAAI,GAAG,+BAA+B,CAAC;AAC7C,MAAM,MAAM,GAAG,mCAAmC,CAAC;AACnD,MAAM,QAAQ,GAAG,uCAAuC,CAAC;AAEzD,MAAM,OAAO,GAAG,GAAG,GAAG,UAAU,CAAC;AACjC,MAAM,QAAQ,GAAG,GAAG,GAAG,WAAW,CAAC;AACnC,MAAM,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC;AAC/B,MAAM,UAAU,GAAG,GAAG,GAAG,aAAa,CAAC;AAEvC,4CAA4C;AAC5C,SAAS,YAAY;IACnB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,OAAgC,EAAE,EAAE;QAC9D,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACzC,CAAC,CAAC;IAEF,qEAAqE;IACrE,IAAI,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,cAAc,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAChF,IAAI,CAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAExE,qEAAqE;IAErE,uBAAuB;IACvB,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACxF,IAAI,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;IAEtD,wCAAwC;IACxC,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzF,IAAI,CAAC,yBAAyB,EAAE;QAC9B,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU;KACrE,CAAC,CAAC;IACH,IAAI,CAAC,+BAA+B,EAAE;QACpC,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG;KACvD,CAAC,CAAC;IACH,IAAI,CAAC,8BAA8B,EAAE;QACnC,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU;KACzE,CAAC,CAAC;IACH,IAAI,CAAC,yBAAyB,EAAE;QAC9B,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW;KACtE,CAAC,CAAC;IACH,IAAI,CAAC,+BAA+B,EAAE;QACpC,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG;KACvD,CAAC,CAAC;IACH,IAAI,CAAC,8BAA8B,EAAE;QACnC,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW;KAC3E,CAAC,CAAC;IACH,IAAI,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEvD,0BAA0B;IAC1B,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAClE,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3F,IAAI,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;IAEzD,2EAA2E;IAC3E,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,yBAAyB,EAAE;QAC9B,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB;QACvD,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW;KAC9C,CAAC,CAAC;IACH,IAAI,CAAC,yBAAyB,EAAE;QAC9B,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc;KACvE,CAAC,CAAC;IACH,IAAI,CAAC,+BAA+B,EAAE;QACpC,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE;KACpD,CAAC,CAAC;IACH,IAAI,CAAC,yBAAyB,EAAE;QAC9B,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU;KACnE,CAAC,CAAC;IACH,IAAI,CAAC,8BAA8B,EAAE;QACnC,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,WAAW;QACnD,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG;KAC/C,CAAC,CAAC;IACH,IAAI,CAAC,8BAA8B,EAAE;QACnC,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,cAAc;QACtD,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG;KAC/C,CAAC,CAAC;IACH,IAAI,CAAC,8BAA8B,EAAE;QACnC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe;KAC5E,CAAC,CAAC;IACH,IAAI,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAErD,qEAAqE;IAErE,0BAA0B;IAC1B,IAAI,CAAC,mBAAmB,EAAE;QACxB,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO;QAC7C,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO;QACnC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;QAC/B,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE;KAChC,CAAC,CAAC;IAEH,kCAAkC;IAClC,IAAI,CAAC,mBAAmB,EAAE;QACxB,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU;QAChD,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU;QAC1C,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QAC9B,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE;KAChC,CAAC,CAAC;IAEH,iCAAiC;IACjC,IAAI,CAAC,mBAAmB,EAAE;QACxB,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK;QAC3C,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;QACpC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;QAChC,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE;KAClC,CAAC,CAAC;IAEH,4CAA4C;IAC5C,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;QAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,mBAAmB,EAAE;YACxB,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;YACvD,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ;YACpC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACxB,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE;SAChC,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IAErE,qBAAqB;IACrB,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IACrF,IAAI,CAAC,4BAA4B,EAAE;QACjC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;KACpD,CAAC,CAAC;IACH,IAAI,CAAC,kBAAkB,EAAE;QACvB,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE;KACvD,CAAC,CAAC;IAEH,qCAAqC;IACrC,MAAM,YAAY,GAAG;QACnB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAI,OAAO;QACnC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAI,UAAU;QACtC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAI,OAAO;QACnC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAG,QAAQ;QACpC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAG,SAAS;KACtC,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;QAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,mBAAmB,EAAE;YACxB,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE;YACjD,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK;SAC7C,CAAC,CAAC;QACH,IAAI,CAAC,4BAA4B,EAAE;YACjC,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;SAC3D,CAAC,CAAC;IACL,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC,mBAAmB,EAAE;QACxB,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS;QACnC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,MAAM;KACpD,CAAC,CAAC;IACH,IAAI,CAAC,kBAAkB,EAAE;QACvB,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;KACxD,CAAC,CAAC;IAEH,6BAA6B;IAC7B,IAAI,CAAC,mBAAmB,EAAE;QACxB,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU;QACrC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK;KACzD,CAAC,CAAC;IACH,IAAI,CAAC,4BAA4B,EAAE;QACjC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE;KAC1D,CAAC,CAAC;IAEH,gCAAgC;IAChC,IAAI,CAAC,mBAAmB,EAAE;QACxB,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU;QACrC,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK;KACvD,CAAC,CAAC;IACH,IAAI,CAAC,4BAA4B,EAAE;QACjC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE;KAC1D,CAAC,CAAC;IAEH,qEAAqE;IACrE,IAAI,CAAC,qBAAqB,EAAE;QAC1B,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE;QACtC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;KAClC,CAAC,CAAC;IAEH,wEAAwE;IACxE,sEAAsE;IACtE,yBAAyB;IACzB,MAAM,eAAe,GAA4B,EAAE,CAAC;IACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG;YAC3B,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;SAC1B,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,oEAAoE;IACpE,+DAA+D;IAC/D,uEAAuE;IACvE,gEAAgE;IAChE,EAAE;IACF,mEAAmE;IACnE,qEAAqE;IACrE,MAAM,UAAU,GAAG,0CAA0C,CAAC;IAC9D,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,OAAgC,EAAE,EAAE;QAC/D,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC/C,CAAC,CAAC;IACF,KAAK,CAAC,0BAA0B,EAAE;QAChC,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,2BAA2B;QACxC,WAAW,EACT,mEAAmE;YACnE,oEAAoE;YACpE,oEAAoE;YACpE,kDAAkD;KACrD,CAAC,CAAC;IACH,kGAAkG;IAClG,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,eAAe;QAC/B,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC;KAC9B,CAAC,CAAC;IACH,aAAa;IACb,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,mBAAmB;QACnC,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG;KAChC,CAAC,CAAC;IACH,2EAA2E;IAC3E,0EAA0E;IAC1E,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,eAAe;QAC/B,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG;KAChC,CAAC,CAAC;IACH,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,UAAU;QAC1B,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG;KAChC,CAAC,CAAC;IACH,KAAK,CAAC,uCAAuC,EAAE;QAC7C,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG;KACzE,CAAC,CAAC;IACH,KAAK,CAAC,uCAAuC,EAAE;QAC7C,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG;KAClF,CAAC,CAAC;IACH,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,MAAM;QACtB,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG;KAChC,CAAC,CAAC;IACH,KAAK,CAAC,uCAAuC,EAAE;QAC7C,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY;KAC/D,CAAC,CAAC;IACH,gEAAgE;IAChE,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,eAAe;QAC/B,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG;KAC/B,CAAC,CAAC;IACH,KAAK,CAAC,uCAAuC,EAAE;QAC7C,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK;KAChF,CAAC,CAAC;IACH,KAAK,CAAC,uCAAuC,EAAE;QAC7C,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK;KAC/E,CAAC,CAAC;IACH,wBAAwB;IACxB,KAAK,CAAC,kCAAkC,EAAE;QACxC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,gBAAgB;QAChC,UAAU,EAAE,UAAU;QACtB,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG;KAC/B,CAAC,CAAC;IACH,KAAK,CAAC,uCAAuC,EAAE;QAC7C,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK;QAChD,gBAAgB,EAAE,UAAU;KAC7B,CAAC,CAAC;IAEH,4EAA4E;IAC5E,+EAA+E;IAC/E,6EAA6E;IAC7E,8EAA8E;IAC9E,+DAA+D;IAC/D,MAAM,QAAQ,GAAG,gBAAgB,CAAC;IAClC,MAAM,SAAS,GAA4B;QACzC,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE;QAC1F,CAAC,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE;QAClF,CAAC,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,EAAE;QAC9G,uBAAuB;QACvB,CAAC,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE;QAChL,iCAAiC;QACjC,CAAC,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE;QACtL,0DAA0D;QAC1D,CAAC,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,gBAAgB,EAAE,EAAE;QACvL,6BAA6B;QAC7B,CAAC,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,EAAE;KAC5E,CAAC;IAEF,OAAO;QACL,YAAY,EAAE;YACZ,WAAW,EACT,6EAA6E;gBAC7E,iFAAiF;gBACjF,gFAAgF;YAClF,KAAK,EAAE,SAAS;SACjB;QACD,MAAM,EAAE;YACN,WAAW,EACT,gFAAgF;gBAChF,kFAAkF;gBAClF,gCAAgC;YAClC,KAAK;SACN;QACD,YAAY,EAAE;YACZ,WAAW,EACT,8EAA8E;gBAC9E,iFAAiF;gBACjF,iFAAiF;gBACjF,6EAA6E;gBAC7E,+DAA+D;YACjE,KAAK,EAAE,UAAU;SAClB;QACD,WAAW,EAAE;YACX,WAAW,EACT,6EAA6E;gBAC7E,yEAAyE;gBACzE,2DAA2D;YAC7D,KAAK,EAAE,eAAe;SACvB;QACD,mBAAmB,EAAE;YACnB,WAAW,EACT,2EAA2E;gBAC3E,8CAA8C;YAChD,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE;SACvC;KACF,CAAC;AACJ,CAAC;AAYD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAgB,EAChB,SAAkB,EAClB,kBAAuC;IAEvC,MAAM,GAAG,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAChD,IAAI,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEpC,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAC;QACpE,MAAM,SAAS,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAC;QACpE,QAAQ,CAAC,KAAK,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACvE,QAAQ,CAAC,KAAK,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;IACzE,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,oEAAoE;IACpE,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,QAAQ,GAAG,SAAS,CAAC,QAAQ,EAAE,SAAS,CAA4B,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IACtE,CAAC;IAED,OAAO,UAAU,CAAC;QAChB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,gBAAgB;QACxB,QAAQ;QACR,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,GAAG;KACf,CAAC,CAAC;AACL,CAAC"}
|
package/dist/flow/schema.d.ts
CHANGED
|
@@ -646,15 +646,15 @@ export declare const FlowConfigSchema: z.ZodObject<{
|
|
|
646
646
|
}[] | undefined;
|
|
647
647
|
rollback_on_failure?: boolean | undefined;
|
|
648
648
|
}> | undefined;
|
|
649
|
+
plugins?: {
|
|
650
|
+
name: string;
|
|
651
|
+
version?: string | undefined;
|
|
652
|
+
}[] | undefined;
|
|
649
653
|
git_snapshot?: {
|
|
650
654
|
enabled?: boolean | undefined;
|
|
651
655
|
paths?: string[] | undefined;
|
|
652
656
|
snapshot_dir?: string | undefined;
|
|
653
657
|
max_age_hours?: number | undefined;
|
|
654
658
|
} | undefined;
|
|
655
|
-
plugins?: {
|
|
656
|
-
name: string;
|
|
657
|
-
version?: string | undefined;
|
|
658
|
-
}[] | undefined;
|
|
659
659
|
}>;
|
|
660
660
|
export type FlowConfig = z.infer<typeof FlowConfigSchema>;
|
package/dist/tool-counts.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"tools": 24,
|
|
3
|
-
"actions":
|
|
4
|
-
"bridgeActions":
|
|
3
|
+
"actions": 741,
|
|
4
|
+
"bridgeActions": 707,
|
|
5
5
|
"localActions": 34,
|
|
6
6
|
"perTool": {
|
|
7
7
|
"project": 32,
|
|
8
8
|
"asset": 99,
|
|
9
|
-
"blueprint":
|
|
9
|
+
"blueprint": 60,
|
|
10
10
|
"level": 70,
|
|
11
11
|
"material": 41,
|
|
12
12
|
"animation": 83,
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"audio": 36,
|
|
18
18
|
"widget": 27,
|
|
19
19
|
"editor": 70,
|
|
20
|
-
"reflection":
|
|
20
|
+
"reflection": 12,
|
|
21
21
|
"gameplay": 57,
|
|
22
22
|
"gas": 15,
|
|
23
23
|
"networking": 11,
|
|
@@ -31,6 +31,6 @@
|
|
|
31
31
|
},
|
|
32
32
|
"nativeToolsets": 52,
|
|
33
33
|
"nativeToolActions": 830,
|
|
34
|
-
"generatedAt": "2026-07-
|
|
35
|
-
"version": "1.1.
|
|
34
|
+
"generatedAt": "2026-07-30T15:54:51.240Z",
|
|
35
|
+
"version": "1.1.34"
|
|
36
36
|
}
|
package/dist/tools/blueprint.js
CHANGED
|
@@ -37,7 +37,8 @@ export const blueprintTool = categoryTool("blueprint", "Blueprint reading, autho
|
|
|
37
37
|
add_interface: bp("Implement interface. Params: blueprintPath, interfacePath", "add_blueprint_interface"),
|
|
38
38
|
override_function: bp("Override an inherited interface implementation (inherited via the parent class) or an overridable parent virtual function, with the matching signature so it actually binds as the override (create_function makes a blank, non-binding graph). Returns kind ('function' with a graphName, or 'event' with a nodeId in EventGraph). Event-shaped functions become override events unless preferFunction=true. Pass interfacePath to also implement the interface first if it is not present. Then wire the body with add_node (use nodeClass='CallParent' to chain to the base implementation). Params: assetPath, functionName, source? ('auto'|'interface'|'parent', advisory), preferFunction?, interfacePath? (#688)", "override_function", (p) => ({ path: p.assetPath, functionName: p.functionName, source: p.source, preferFunction: p.preferFunction, interfacePath: p.interfacePath })),
|
|
39
39
|
list_overridable_functions: bp("List functions this Blueprint can override: inherited interface implementations and overridable parent virtuals. Each entry has name, source ('interface'|'parent'), declaringClass, canBeEvent. Params: assetPath (#688)", "list_overridable_functions", (p) => ({ path: p.assetPath })),
|
|
40
|
-
list_graphs: bp("List all graphs in a blueprint. Params: assetPath", "list_blueprint_graphs", (p) => ({ path: p.assetPath })),
|
|
40
|
+
list_graphs: bp("List all graphs in a blueprint. Returns selector/objectPath plus duplicateIndex/duplicateCount; pass selector back as graphName for unambiguous nested graph edits. Params: assetPath", "list_blueprint_graphs", (p) => ({ path: p.assetPath })),
|
|
41
|
+
resolve_graph: bp("Resolve a Blueprint graph name to selectors accepted by read_graph/add_node/connect_pins and other graph actions. Duplicate nested AnimBP names such as Locomotion return every match with selectors like Locomotion[3], object paths, and ambiguity metadata. Params: assetPath, graphName", "resolve_blueprint_graph", (p) => ({ path: p.assetPath, graphName: p.graphName })),
|
|
41
42
|
add_event_dispatcher: bp("Add event dispatcher (multicast delegate variable + signature graph + UFunction). Without parameters, broadcasters fire void(). With parameters, the signature graph gets typed user pins so K2Node_CallDelegate compiles cleanly (#276). Params: blueprintPath, name, parameters?: [{name, type}] where type is bool/int/float/string/name/text/vector/rotator/transform/object:/Script/Module.Class/struct:/Script/Module.Struct", "add_event_dispatcher"),
|
|
42
43
|
duplicate: bp("Duplicate blueprint asset. Params: sourcePath, destinationPath", "duplicate_blueprint"),
|
|
43
44
|
add_local_variable: bp("Add function-scope local variable. Params: assetPath, functionName, name, varType?", "add_local_variable"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blueprint.js","sourceRoot":"","sources":["../../src/tools/blueprint.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"blueprint.js","sourceRoot":"","sources":["../../src/tools/blueprint.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/reflection.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { categoryTool, bp } from "../types.js";
|
|
3
|
-
export const reflectionTool = categoryTool("reflection", "UE reflection: classes, structs, enums, gameplay tags.", {
|
|
3
|
+
export const reflectionTool = categoryTool("reflection", "UE reflection: classes, structs, enums, gameplay tags, and SaveGame instances.", {
|
|
4
4
|
reflect_class: bp("Reflect UClass. Params: className, includeInherited?", "reflect_class"),
|
|
5
5
|
reflect_struct: bp("Reflect UScriptStruct. Params: structName", "reflect_struct"),
|
|
6
6
|
reflect_enum: bp("Reflect UEnum. Params: enumName", "reflect_enum"),
|
|
@@ -12,10 +12,13 @@ export const reflectionTool = categoryTool("reflection", "UE reflection: classes
|
|
|
12
12
|
is_class_loaded: bp("Report whether a UClass is currently loaded in the editor (loaded), whether it exists/is loadable (exists), and its owning module + that module's load state. Distinguishes 'not loaded yet' from 'does not exist'. Params: className (short name, /Script/<Module>.<Class>, or BP class path) (#689)", "is_class_loaded", (p) => ({ className: p.className })),
|
|
13
13
|
is_module_loaded: bp("Report whether a named module is currently loaded. Params: moduleName (#689)", "is_module_loaded", (p) => ({ moduleName: p.moduleName })),
|
|
14
14
|
list_loaded_modules: bp("Enumerate modules with runtime load state. Params: filter? (case-insensitive substring), loadedOnly? (default false). Returns modules[{name, loaded, gameModule}] + totalLoaded/totalModules (#689)", "list_loaded_modules", (p) => ({ filter: p.filter, loadedOnly: p.loadedOnly })),
|
|
15
|
+
inspect_save_game: bp("Load a SaveGame slot read-only and return its reflected UPROPERTY(SaveGame) values. Non-serializable properties are listed in skippedProperties instead of failing the call. Params: slotName, userIndex? (default 0)", "inspect_save_game", (p) => ({ slotName: p.slotName, userIndex: p.userIndex })),
|
|
15
16
|
}, undefined, {
|
|
16
17
|
className: z.string().optional(),
|
|
17
18
|
moduleName: z.string().optional().describe("is_module_loaded: module name (#689)"),
|
|
18
19
|
loadedOnly: z.boolean().optional().describe("list_loaded_modules: only loaded modules (#689)"),
|
|
20
|
+
slotName: z.string().min(1).max(128).optional().describe("inspect_save_game: logical save slot name without a path"),
|
|
21
|
+
userIndex: z.number().int().nonnegative().optional().describe("inspect_save_game: platform user index (default 0)"),
|
|
19
22
|
includeInherited: z.boolean().optional(),
|
|
20
23
|
structName: z.string().optional(),
|
|
21
24
|
enumName: z.string().optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/tools/reflection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,EAAE,EAAgB,MAAM,aAAa,CAAC;AAE7D,MAAM,CAAC,MAAM,cAAc,GAAY,YAAY,CACjD,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/tools/reflection.ts"],"names":[],"mappings":"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"}
|
package/dist/ue-mcp.default.yml
CHANGED
|
@@ -968,9 +968,15 @@ tasks:
|
|
|
968
968
|
blueprint.list_graphs:
|
|
969
969
|
class_path: ue-mcp.bridge
|
|
970
970
|
group: blueprint
|
|
971
|
-
description: "List all graphs in a blueprint. Params: assetPath"
|
|
971
|
+
description: "List all graphs in a blueprint. Returns selector/objectPath plus duplicateIndex/duplicateCount; pass selector back as graphName for unambiguous nested graph edits. Params: assetPath"
|
|
972
972
|
options:
|
|
973
973
|
method: list_blueprint_graphs
|
|
974
|
+
blueprint.resolve_graph:
|
|
975
|
+
class_path: ue-mcp.bridge
|
|
976
|
+
group: blueprint
|
|
977
|
+
description: "Resolve a Blueprint graph name to selectors accepted by read_graph/add_node/connect_pins and other graph actions. Duplicate nested AnimBP names such as Locomotion return every match with selectors like Locomotion[3], object paths, and ambiguity metadata. Params: assetPath, graphName"
|
|
978
|
+
options:
|
|
979
|
+
method: resolve_blueprint_graph
|
|
974
980
|
blueprint.add_event_dispatcher:
|
|
975
981
|
class_path: ue-mcp.bridge
|
|
976
982
|
group: blueprint
|
|
@@ -3541,6 +3547,12 @@ tasks:
|
|
|
3541
3547
|
description: "Enumerate modules with runtime load state. Params: filter? (case-insensitive substring), loadedOnly? (default false). Returns modules[{name, loaded, gameModule}] + totalLoaded/totalModules (#689)"
|
|
3542
3548
|
options:
|
|
3543
3549
|
method: list_loaded_modules
|
|
3550
|
+
reflection.inspect_save_game:
|
|
3551
|
+
class_path: ue-mcp.bridge
|
|
3552
|
+
group: reflection
|
|
3553
|
+
description: "Load a SaveGame slot read-only and return its reflected UPROPERTY(SaveGame) values. Non-serializable properties are listed in skippedProperties instead of failing the call. Params: slotName, userIndex? (default 0)"
|
|
3554
|
+
options:
|
|
3555
|
+
method: inspect_save_game
|
|
3544
3556
|
|
|
3545
3557
|
# ── gameplay ──
|
|
3546
3558
|
gameplay.set_collision_profile:
|
|
@@ -4074,6 +4086,53 @@ tasks:
|
|
|
4074
4086
|
|
|
4075
4087
|
flows:
|
|
4076
4088
|
|
|
4089
|
+
niagara_fire:
|
|
4090
|
+
description: Build a fire Niagara system from scratch (spawn rate, upward velocity, HDR orange colour) and verify it emits. A 0-to-1 best-practice starting point, not a demo. Lands at /Game/VFX/Fire/NS_Fire; override name/packagePath via params.
|
|
4091
|
+
steps:
|
|
4092
|
+
1:
|
|
4093
|
+
task: niagara.create_emitter
|
|
4094
|
+
options:
|
|
4095
|
+
name: E_Flame
|
|
4096
|
+
packagePath: /Game/VFX/Fire
|
|
4097
|
+
2:
|
|
4098
|
+
task: niagara.create
|
|
4099
|
+
options:
|
|
4100
|
+
name: NS_Fire
|
|
4101
|
+
packagePath: /Game/VFX/Fire
|
|
4102
|
+
3:
|
|
4103
|
+
task: niagara.add_emitter
|
|
4104
|
+
options:
|
|
4105
|
+
systemPath: "${steps.2.path}"
|
|
4106
|
+
emitterPath: "${steps.1.path}"
|
|
4107
|
+
4:
|
|
4108
|
+
task: niagara.set_module_input
|
|
4109
|
+
options:
|
|
4110
|
+
systemPath: "${steps.2.path}"
|
|
4111
|
+
moduleName: SpawnRate
|
|
4112
|
+
inputName: SpawnRate
|
|
4113
|
+
value: 60
|
|
4114
|
+
stackContext: EmitterUpdate
|
|
4115
|
+
5:
|
|
4116
|
+
task: niagara.set_module_input
|
|
4117
|
+
options:
|
|
4118
|
+
systemPath: "${steps.2.path}"
|
|
4119
|
+
moduleName: AddVelocity
|
|
4120
|
+
inputName: Velocity
|
|
4121
|
+
value: 0,0,160
|
|
4122
|
+
stackContext: ParticleSpawn
|
|
4123
|
+
6:
|
|
4124
|
+
task: niagara.set_module_input
|
|
4125
|
+
options:
|
|
4126
|
+
systemPath: "${steps.2.path}"
|
|
4127
|
+
moduleName: Color
|
|
4128
|
+
inputName: Color
|
|
4129
|
+
value: 4.0,1.2,0.15,1.0
|
|
4130
|
+
stackContext: ParticleUpdate
|
|
4131
|
+
7:
|
|
4132
|
+
task: niagara.validate
|
|
4133
|
+
options:
|
|
4134
|
+
systemPath: "${steps.2.path}"
|
|
4135
|
+
|
|
4077
4136
|
beacon:
|
|
4078
4137
|
description: "Demo — build a shrine scene from scratch: floor, pedestal, orb, five pillars, four materials (dark stone, brushed metal, warm stone, parameterized emissive), colored lights, and atmosphere"
|
|
4079
4138
|
steps:
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ue-mcp",
|
|
3
|
-
"version": "1.1.
|
|
4
|
-
"description": "Unreal Engine MCP server - 24 tools,
|
|
3
|
+
"version": "1.1.34",
|
|
4
|
+
"description": "Unreal Engine MCP server - 24 tools, 741+ actions for AI-driven editor control",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"exports": {
|
package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AudioHandlers_SoundCue.cpp
CHANGED
|
@@ -40,9 +40,9 @@ namespace
|
|
|
40
40
|
return nullptr;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
FString NodeTypeLabel(USoundNode* N)
|
|
44
44
|
{
|
|
45
|
-
return N ?
|
|
45
|
+
return N ? N->GetClass()->GetName() : FString();
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
/** Construct a cue node by friendly type name. Returns null for unknown types. */
|
|
@@ -94,6 +94,7 @@ void FBlueprintHandlers::RegisterHandlers(FMCPHandlerRegistry& Registry)
|
|
|
94
94
|
Registry.RegisterHandler(TEXT("delete_node"), &DeleteNode);
|
|
95
95
|
Registry.RegisterHandler(TEXT("set_node_property"), &SetNodeProperty);
|
|
96
96
|
Registry.RegisterHandler(TEXT("list_blueprint_graphs"), &ListGraphs);
|
|
97
|
+
Registry.RegisterHandler(TEXT("resolve_blueprint_graph"), &ResolveGraph);
|
|
97
98
|
Registry.RegisterHandler(TEXT("set_blueprint_component_property"), &SetComponentProperty);
|
|
98
99
|
// #442: dedicated OverrideMaterials writer that takes a materialPaths array
|
|
99
100
|
// directly, avoiding any value coercion concerns on the generic path.
|
|
@@ -440,6 +441,43 @@ UBlueprint* FBlueprintHandlers::LoadBlueprint(const FString& AssetPath)
|
|
|
440
441
|
// ---------------------------------------------------------------------------
|
|
441
442
|
// list_blueprint_graphs -- List all graphs in a blueprint (EventGraph, AnimGraph, functions, etc.)
|
|
442
443
|
// ---------------------------------------------------------------------------
|
|
444
|
+
namespace
|
|
445
|
+
{
|
|
446
|
+
TSharedPtr<FJsonObject> MakeGraphDescriptor(
|
|
447
|
+
UEdGraph* Graph,
|
|
448
|
+
const TMap<FString, int32>& NameCounts,
|
|
449
|
+
TMap<FString, int32>& SeenCounts)
|
|
450
|
+
{
|
|
451
|
+
const FString Name = Graph->GetName();
|
|
452
|
+
const int32 DuplicateIndex = SeenCounts.FindOrAdd(Name)++;
|
|
453
|
+
const int32 DuplicateCount = NameCounts.FindRef(Name);
|
|
454
|
+
const FString Selector = DuplicateCount > 1
|
|
455
|
+
? FString::Printf(TEXT("%s[%d]"), *Name, DuplicateIndex)
|
|
456
|
+
: Name;
|
|
457
|
+
|
|
458
|
+
TSharedPtr<FJsonObject> GraphObj = MakeShared<FJsonObject>();
|
|
459
|
+
GraphObj->SetStringField(TEXT("name"), Name);
|
|
460
|
+
GraphObj->SetStringField(TEXT("selector"), Selector);
|
|
461
|
+
GraphObj->SetStringField(TEXT("objectPath"), Graph->GetPathName());
|
|
462
|
+
GraphObj->SetStringField(TEXT("class"), Graph->GetClass()->GetName());
|
|
463
|
+
GraphObj->SetNumberField(TEXT("nodeCount"), Graph->Nodes.Num());
|
|
464
|
+
GraphObj->SetNumberField(TEXT("duplicateIndex"), DuplicateIndex);
|
|
465
|
+
GraphObj->SetNumberField(TEXT("duplicateCount"), DuplicateCount);
|
|
466
|
+
return GraphObj;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
void CountGraphNames(const TArray<UEdGraph*>& Graphs, TMap<FString, int32>& OutNameCounts)
|
|
470
|
+
{
|
|
471
|
+
for (UEdGraph* Graph : Graphs)
|
|
472
|
+
{
|
|
473
|
+
if (Graph)
|
|
474
|
+
{
|
|
475
|
+
++OutNameCounts.FindOrAdd(Graph->GetName());
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
|
|
443
481
|
TSharedPtr<FJsonValue> FBlueprintHandlers::ListGraphs(const TSharedPtr<FJsonObject>& Params)
|
|
444
482
|
{
|
|
445
483
|
FString AssetPath;
|
|
@@ -454,15 +492,15 @@ TSharedPtr<FJsonValue> FBlueprintHandlers::ListGraphs(const TSharedPtr<FJsonObje
|
|
|
454
492
|
TArray<UEdGraph*> AllGraphs;
|
|
455
493
|
Blueprint->GetAllGraphs(AllGraphs);
|
|
456
494
|
|
|
495
|
+
TMap<FString, int32> NameCounts;
|
|
496
|
+
TMap<FString, int32> SeenCounts;
|
|
497
|
+
CountGraphNames(AllGraphs, NameCounts);
|
|
498
|
+
|
|
457
499
|
TArray<TSharedPtr<FJsonValue>> GraphsArray;
|
|
458
500
|
for (UEdGraph* Graph : AllGraphs)
|
|
459
501
|
{
|
|
460
502
|
if (!Graph) continue;
|
|
461
|
-
|
|
462
|
-
GraphObj->SetStringField(TEXT("name"), Graph->GetName());
|
|
463
|
-
GraphObj->SetStringField(TEXT("class"), Graph->GetClass()->GetName());
|
|
464
|
-
GraphObj->SetNumberField(TEXT("nodeCount"), Graph->Nodes.Num());
|
|
465
|
-
GraphsArray.Add(MakeShared<FJsonValueObject>(GraphObj));
|
|
503
|
+
GraphsArray.Add(MakeShared<FJsonValueObject>(MakeGraphDescriptor(Graph, NameCounts, SeenCounts)));
|
|
466
504
|
}
|
|
467
505
|
|
|
468
506
|
auto Result = MCPSuccess();
|
|
@@ -472,6 +510,99 @@ TSharedPtr<FJsonValue> FBlueprintHandlers::ListGraphs(const TSharedPtr<FJsonObje
|
|
|
472
510
|
return MCPResult(Result);
|
|
473
511
|
}
|
|
474
512
|
|
|
513
|
+
// ---------------------------------------------------------------------------
|
|
514
|
+
// resolve_blueprint_graph -- Resolve a graph name to selectors accepted by
|
|
515
|
+
// read_graph/add_node/connect_pins/etc. Duplicate nested AnimBP graphs commonly
|
|
516
|
+
// share names such as "Locomotion" or "Transition"; callers can pass the
|
|
517
|
+
// returned selector (for example "Locomotion[3]") back as graphName.
|
|
518
|
+
// ---------------------------------------------------------------------------
|
|
519
|
+
TSharedPtr<FJsonValue> FBlueprintHandlers::ResolveGraph(const TSharedPtr<FJsonObject>& Params)
|
|
520
|
+
{
|
|
521
|
+
FString AssetPath;
|
|
522
|
+
if (auto Err = RequireStringAlt(Params, TEXT("path"), TEXT("assetPath"), AssetPath)) return Err;
|
|
523
|
+
|
|
524
|
+
FString RequestedName;
|
|
525
|
+
if (auto Err = RequireString(Params, TEXT("graphName"), RequestedName)) return Err;
|
|
526
|
+
|
|
527
|
+
UBlueprint* Blueprint = LoadBlueprint(AssetPath);
|
|
528
|
+
if (!Blueprint)
|
|
529
|
+
{
|
|
530
|
+
return MCPError(FString::Printf(TEXT("Blueprint not found: %s"), *AssetPath));
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
TArray<UEdGraph*> AllGraphs;
|
|
534
|
+
Blueprint->GetAllGraphs(AllGraphs);
|
|
535
|
+
|
|
536
|
+
TMap<FString, int32> NameCounts;
|
|
537
|
+
CountGraphNames(AllGraphs, NameCounts);
|
|
538
|
+
|
|
539
|
+
TArray<UEdGraph*> Matches;
|
|
540
|
+
const int32 LeftBracket = RequestedName.Find(TEXT("["));
|
|
541
|
+
const int32 RightBracket = RequestedName.Find(TEXT("]"), ESearchCase::CaseSensitive, ESearchDir::FromEnd);
|
|
542
|
+
const bool bIndexedSelector = LeftBracket != INDEX_NONE && RightBracket > LeftBracket;
|
|
543
|
+
|
|
544
|
+
if (bIndexedSelector)
|
|
545
|
+
{
|
|
546
|
+
if (UEdGraph* Resolved = FindGraph(Blueprint, RequestedName))
|
|
547
|
+
{
|
|
548
|
+
Matches.Add(Resolved);
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
else
|
|
552
|
+
{
|
|
553
|
+
for (UEdGraph* Graph : AllGraphs)
|
|
554
|
+
{
|
|
555
|
+
if (Graph && Graph->GetName().Equals(RequestedName, ESearchCase::IgnoreCase))
|
|
556
|
+
{
|
|
557
|
+
Matches.Add(Graph);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
// Preserve the existing object-path/suffix addressing behavior when the
|
|
562
|
+
// request is not a bare graph name.
|
|
563
|
+
if (Matches.IsEmpty())
|
|
564
|
+
{
|
|
565
|
+
if (UEdGraph* Resolved = FindGraph(Blueprint, RequestedName))
|
|
566
|
+
{
|
|
567
|
+
Matches.Add(Resolved);
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
}
|
|
571
|
+
|
|
572
|
+
TMap<FString, int32> SeenCounts;
|
|
573
|
+
TMap<UEdGraph*, TSharedPtr<FJsonObject>> DescriptorsByGraph;
|
|
574
|
+
for (UEdGraph* Graph : AllGraphs)
|
|
575
|
+
{
|
|
576
|
+
if (!Graph) continue;
|
|
577
|
+
DescriptorsByGraph.Add(Graph, MakeGraphDescriptor(Graph, NameCounts, SeenCounts));
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
TArray<TSharedPtr<FJsonValue>> MatchArray;
|
|
581
|
+
for (UEdGraph* Graph : Matches)
|
|
582
|
+
{
|
|
583
|
+
if (const TSharedPtr<FJsonObject>* Descriptor = DescriptorsByGraph.Find(Graph))
|
|
584
|
+
{
|
|
585
|
+
MatchArray.Add(MakeShared<FJsonValueObject>(*Descriptor));
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
TSharedPtr<FJsonObject> Result = MCPSuccess();
|
|
590
|
+
Result->SetStringField(TEXT("path"), AssetPath);
|
|
591
|
+
Result->SetStringField(TEXT("requestedGraphName"), RequestedName);
|
|
592
|
+
Result->SetNumberField(TEXT("matchCount"), MatchArray.Num());
|
|
593
|
+
Result->SetBoolField(TEXT("ambiguous"), MatchArray.Num() > 1);
|
|
594
|
+
Result->SetArrayField(TEXT("matches"), MatchArray);
|
|
595
|
+
if (MatchArray.IsEmpty())
|
|
596
|
+
{
|
|
597
|
+
Result->SetStringField(TEXT("message"), FString::Printf(TEXT("No graph matched: %s"), *RequestedName));
|
|
598
|
+
}
|
|
599
|
+
else if (MatchArray.Num() > 1)
|
|
600
|
+
{
|
|
601
|
+
Result->SetStringField(TEXT("message"), TEXT("Multiple graphs share this name; pass a returned selector as graphName."));
|
|
602
|
+
}
|
|
603
|
+
return MCPResult(Result);
|
|
604
|
+
}
|
|
605
|
+
|
|
475
606
|
FEdGraphPinType FBlueprintHandlers::MakePinType(const FString& TypeStr)
|
|
476
607
|
{
|
|
477
608
|
FEdGraphPinType PinType;
|
|
@@ -43,6 +43,7 @@ private:
|
|
|
43
43
|
static TSharedPtr<FJsonValue> DeleteNode(const TSharedPtr<FJsonObject>& Params);
|
|
44
44
|
static TSharedPtr<FJsonValue> SetNodeProperty(const TSharedPtr<FJsonObject>& Params);
|
|
45
45
|
static TSharedPtr<FJsonValue> ListGraphs(const TSharedPtr<FJsonObject>& Params);
|
|
46
|
+
static TSharedPtr<FJsonValue> ResolveGraph(const TSharedPtr<FJsonObject>& Params);
|
|
46
47
|
static TSharedPtr<FJsonValue> SetComponentProperty(const TSharedPtr<FJsonObject>& Params);
|
|
47
48
|
// #442: dedicated OverrideMaterials writer for mesh-component templates.
|
|
48
49
|
static TSharedPtr<FJsonValue> SetComponentOverrideMaterials(const TSharedPtr<FJsonObject>& Params);
|
|
@@ -1030,6 +1030,19 @@ TSharedPtr<FJsonValue> FNiagaraHandlers::SetRendererProperty(const TSharedPtr<FJ
|
|
|
1030
1030
|
if (!Params->TryGetStringField(TEXT("value"), StringValue)) return MCPError(TEXT("Expected string 'value'"));
|
|
1031
1031
|
SP->SetPropertyValue(SP->ContainerPtrToValuePtr<void>(R), StringValue);
|
|
1032
1032
|
}
|
|
1033
|
+
else if (FObjectPropertyBase* OP = CastField<FObjectPropertyBase>(Prop))
|
|
1034
|
+
{
|
|
1035
|
+
// Object/asset reference (e.g. a sprite renderer's Material): 'value' is
|
|
1036
|
+
// the asset path.
|
|
1037
|
+
if (!Params->TryGetStringField(TEXT("value"), StringValue)) return MCPError(TEXT("Expected string asset path 'value'"));
|
|
1038
|
+
UObject* Asset = UEditorAssetLibrary::LoadAsset(StringValue);
|
|
1039
|
+
if (!Asset) return MCPError(FString::Printf(TEXT("Asset not found: %s"), *StringValue));
|
|
1040
|
+
if (OP->PropertyClass && !Asset->IsA(OP->PropertyClass))
|
|
1041
|
+
{
|
|
1042
|
+
return MCPError(FString::Printf(TEXT("Asset %s is a %s, not a %s"), *StringValue, *Asset->GetClass()->GetName(), *OP->PropertyClass->GetName()));
|
|
1043
|
+
}
|
|
1044
|
+
OP->SetObjectPropertyValue(OP->ContainerPtrToValuePtr<void>(R), Asset);
|
|
1045
|
+
}
|
|
1033
1046
|
else
|
|
1034
1047
|
{
|
|
1035
1048
|
return MCPError(FString::Printf(TEXT("Property type not yet supported: %s"), *Prop->GetCPPType()));
|
|
@@ -20,6 +20,9 @@
|
|
|
20
20
|
#include "Dom/JsonObject.h"
|
|
21
21
|
#include "Dom/JsonValue.h"
|
|
22
22
|
#include "JsonSerializer.h"
|
|
23
|
+
#include "JsonObjectConverter.h"
|
|
24
|
+
#include "GameFramework/SaveGame.h"
|
|
25
|
+
#include "Kismet/GameplayStatics.h"
|
|
23
26
|
#include "HAL/PlatformFileManager.h"
|
|
24
27
|
#include "Misc/FileHelper.h"
|
|
25
28
|
#include "Misc/Paths.h"
|
|
@@ -39,6 +42,7 @@ void FReflectionHandlers::RegisterHandlers(FMCPHandlerRegistry& Registry)
|
|
|
39
42
|
Registry.RegisterHandler(TEXT("is_class_loaded"), &IsClassLoaded);
|
|
40
43
|
Registry.RegisterHandler(TEXT("is_module_loaded"), &IsModuleLoaded);
|
|
41
44
|
Registry.RegisterHandler(TEXT("list_loaded_modules"), &ListLoadedModules);
|
|
45
|
+
Registry.RegisterHandler(TEXT("inspect_save_game"), &InspectSaveGame);
|
|
42
46
|
}
|
|
43
47
|
|
|
44
48
|
// #689: report whether a UClass is currently loaded, and (separately) whether
|
|
@@ -132,6 +136,86 @@ TSharedPtr<FJsonValue> FReflectionHandlers::ListLoadedModules(const TSharedPtr<F
|
|
|
132
136
|
return MCPResult(Result);
|
|
133
137
|
}
|
|
134
138
|
|
|
139
|
+
TSharedPtr<FJsonValue> FReflectionHandlers::InspectSaveGame(const TSharedPtr<FJsonObject>& Params)
|
|
140
|
+
{
|
|
141
|
+
MCP_CHECK_GAME_THREAD();
|
|
142
|
+
|
|
143
|
+
FString SlotName;
|
|
144
|
+
if (auto Err = RequireString(Params, TEXT("slotName"), SlotName)) return Err;
|
|
145
|
+
int32 UserIndex = 0;
|
|
146
|
+
if (Params->HasField(TEXT("userIndex")))
|
|
147
|
+
{
|
|
148
|
+
double RawUserIndex = 0.0;
|
|
149
|
+
if (!Params->TryGetNumberField(TEXT("userIndex"), RawUserIndex) ||
|
|
150
|
+
!FMath::IsFinite(RawUserIndex) || RawUserIndex < 0.0 ||
|
|
151
|
+
RawUserIndex > static_cast<double>(MAX_int32) || FMath::TruncToDouble(RawUserIndex) != RawUserIndex)
|
|
152
|
+
{
|
|
153
|
+
return MCPError(TEXT("userIndex must be a non-negative integer"));
|
|
154
|
+
}
|
|
155
|
+
UserIndex = static_cast<int32>(RawUserIndex);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
if (SlotName.Len() > 128 || SlotName != SlotName.TrimStartAndEnd() ||
|
|
159
|
+
SlotName == TEXT(".") || SlotName == TEXT("..") || SlotName.Contains(TEXT("..")) ||
|
|
160
|
+
SlotName != FPaths::MakeValidFileName(SlotName))
|
|
161
|
+
{
|
|
162
|
+
return MCPError(TEXT("Invalid slotName: use a plain filename without path separators, traversal, or surrounding whitespace"));
|
|
163
|
+
}
|
|
164
|
+
if (!UGameplayStatics::DoesSaveGameExist(SlotName, UserIndex))
|
|
165
|
+
{
|
|
166
|
+
return MCPError(FString::Printf(TEXT("Save game slot does not exist: %s (userIndex %d)"), *SlotName, UserIndex));
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
USaveGame* SaveGame = UGameplayStatics::LoadGameFromSlot(SlotName, UserIndex);
|
|
170
|
+
if (!SaveGame)
|
|
171
|
+
{
|
|
172
|
+
return MCPError(FString::Printf(TEXT("Failed to load save game slot: %s (userIndex %d)"), *SlotName, UserIndex));
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
TSharedPtr<FJsonObject> Properties = MakeShared<FJsonObject>();
|
|
176
|
+
TArray<TSharedPtr<FJsonValue>> Skipped;
|
|
177
|
+
int32 PropertyCount = 0;
|
|
178
|
+
for (TFieldIterator<FProperty> It(SaveGame->GetClass(), EFieldIteratorFlags::IncludeSuper); It; ++It)
|
|
179
|
+
{
|
|
180
|
+
FProperty* Property = *It;
|
|
181
|
+
if (!Property || !Property->HasAnyPropertyFlags(CPF_SaveGame) ||
|
|
182
|
+
Property->HasAnyPropertyFlags(CPF_Transient | CPF_DuplicateTransient))
|
|
183
|
+
{
|
|
184
|
+
continue;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
const void* Value = Property->ContainerPtrToValuePtr<void>(SaveGame);
|
|
188
|
+
TSharedPtr<FJsonValue> JsonValue = FJsonObjectConverter::UPropertyToJsonValue(
|
|
189
|
+
Property, Value, 0, CPF_Transient | CPF_DuplicateTransient);
|
|
190
|
+
// A property type the JSON converter cannot express (delegates, some
|
|
191
|
+
// container key types) must not abort the whole inspection. Report it
|
|
192
|
+
// and keep going so the caller still sees every readable value.
|
|
193
|
+
if (!JsonValue.IsValid())
|
|
194
|
+
{
|
|
195
|
+
TSharedPtr<FJsonObject> SkipEntry = MakeShared<FJsonObject>();
|
|
196
|
+
SkipEntry->SetStringField(TEXT("name"), Property->GetName());
|
|
197
|
+
SkipEntry->SetStringField(TEXT("type"), Property->GetClass()->GetName());
|
|
198
|
+
SkipEntry->SetStringField(TEXT("reason"), TEXT("Property type is not JSON-serializable"));
|
|
199
|
+
Skipped.Add(MakeShared<FJsonValueObject>(SkipEntry));
|
|
200
|
+
continue;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
Properties->SetField(Property->GetName(), JsonValue);
|
|
204
|
+
++PropertyCount;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
auto Result = MCPSuccess();
|
|
208
|
+
Result->SetStringField(TEXT("slotName"), SlotName);
|
|
209
|
+
Result->SetNumberField(TEXT("userIndex"), UserIndex);
|
|
210
|
+
Result->SetStringField(TEXT("className"), SaveGame->GetClass()->GetName());
|
|
211
|
+
Result->SetStringField(TEXT("classPath"), SaveGame->GetClass()->GetPathName());
|
|
212
|
+
Result->SetNumberField(TEXT("propertyCount"), PropertyCount);
|
|
213
|
+
Result->SetNumberField(TEXT("skippedCount"), Skipped.Num());
|
|
214
|
+
Result->SetArrayField(TEXT("skippedProperties"), Skipped);
|
|
215
|
+
Result->SetObjectField(TEXT("properties"), Properties);
|
|
216
|
+
return MCPResult(Result);
|
|
217
|
+
}
|
|
218
|
+
|
|
135
219
|
namespace
|
|
136
220
|
{
|
|
137
221
|
/**
|
|
@@ -24,6 +24,7 @@ private:
|
|
|
24
24
|
static TSharedPtr<FJsonValue> IsClassLoaded(const TSharedPtr<FJsonObject>& Params);
|
|
25
25
|
static TSharedPtr<FJsonValue> IsModuleLoaded(const TSharedPtr<FJsonObject>& Params);
|
|
26
26
|
static TSharedPtr<FJsonValue> ListLoadedModules(const TSharedPtr<FJsonObject>& Params);
|
|
27
|
+
static TSharedPtr<FJsonValue> InspectSaveGame(const TSharedPtr<FJsonObject>& Params);
|
|
27
28
|
|
|
28
29
|
// Helper functions
|
|
29
30
|
static UClass* FindClass(const FString& ClassName);
|