blueprint-extractor-mcp 2.3.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +82 -81
- package/dist/index.d.ts +2 -0
- package/dist/index.js +1942 -412
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,82 +1,83 @@
|
|
|
1
|
-
# `blueprint-extractor-mcp`
|
|
2
|
-
|
|
3
|
-
MCP server for the Unreal Engine `BlueprintExtractor` plugin.
|
|
4
|
-
|
|
5
|
-
This package exposes the `blueprint-extractor` server over stdio and talks to a running Unreal Editor through the Remote Control HTTP API.
|
|
6
|
-
|
|
7
|
-
The current v2 MCP contract exposes
|
|
1
|
+
# `blueprint-extractor-mcp`
|
|
2
|
+
|
|
3
|
+
MCP server for the Unreal Engine `BlueprintExtractor` plugin.
|
|
4
|
+
|
|
5
|
+
This package exposes the `blueprint-extractor` server over stdio and talks to a running Unreal Editor through the Remote Control HTTP API.
|
|
6
|
+
|
|
7
|
+
The current v2 MCP contract exposes 97 tools, 16 resources, 4 resource templates, and 8 prompts.
|
|
8
8
|
Public tools use canonical `snake_case` inputs and return structured JSON success or error envelopes.
|
|
9
|
-
|
|
10
|
-
Current surface area includes:
|
|
11
|
-
|
|
12
|
-
- read-only extraction tools for Blueprints, AI assets, data assets, curves, materials, and animation metadata
|
|
13
|
-
- explicit-save authoring tools for the supported editor-side asset families, including compact widget extraction, incremental widget-structure ops, widget class-default routing, composable material authoring (`set_material_settings`, `add_material_expression`, `connect_material_expressions`, `bind_material_property`), and the advanced `modify_material` escape hatch
|
|
14
|
-
- dedicated Enhanced Input authoring tools for `InputAction` and `InputMappingContext` assets (`create_input_action`, `modify_input_action`, `create_input_mapping_context`, `modify_input_mapping_context`)
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
- `
|
|
42
|
-
- `
|
|
43
|
-
- `
|
|
44
|
-
- `
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
npm
|
|
65
|
-
npm
|
|
66
|
-
npm
|
|
67
|
-
npm run test:
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
9
|
+
|
|
10
|
+
Current surface area includes:
|
|
11
|
+
|
|
12
|
+
- read-only extraction tools for Blueprints, AI assets, data assets, curves, materials, and animation metadata
|
|
13
|
+
- explicit-save authoring tools for the supported editor-side asset families, including compact widget extraction, dedicated widget animation authoring (`extract_widget_animation`, `create_widget_animation`, `modify_widget_animation`), incremental widget-structure ops, widget class-default routing, composable material authoring (`set_material_settings`, `add_material_expression`, `connect_material_expressions`, `bind_material_property`), and the advanced `modify_material` escape hatch
|
|
14
|
+
- dedicated Enhanced Input authoring tools for `InputAction` and `InputMappingContext` assets (`create_input_action`, `modify_input_action`, `create_input_mapping_context`, `modify_input_mapping_context`)
|
|
15
|
+
- dedicated CommonUI button-style tools (`create_commonui_button_style`, `extract_commonui_button_style`, `modify_commonui_button_style`, `apply_commonui_button_style`) for `CommonButtonBase` wrapper surfaces instead of raw `UButton` field mutation
|
|
16
|
+
- async import and reimport tools with polling for generic assets plus typed texture and mesh helpers
|
|
17
|
+
- host-side project automation tools for external builds, Live Coding requests, restart/reconnect orchestration, `wait_for_editor` recovery polling, a thin window-polish helper, and runtime automation artifacts that surface verification screenshots back to the caller
|
|
18
|
+
- a shared visual-verification artifact contract across widget captures, motion checkpoint bundles, capture diffs, and automation-run screenshots so the caller can inspect rendered results instead of relying on semantic success alone
|
|
19
|
+
- static guidance resources, resource templates, and prompts for authoring conventions, selector rules, font roles, project automation, example payloads, widget patterns, multimodal design specs, widget motion authoring, motion verification, unsupported surfaces, safe UI redesign, and classic material graph guidance
|
|
20
|
+
|
|
21
|
+
## Requirements
|
|
22
|
+
|
|
23
|
+
- Node.js 18+
|
|
24
|
+
- Unreal Editor with the `Remote Control API` plugin enabled
|
|
25
|
+
- The `BlueprintExtractor` UE plugin loaded in the editor
|
|
26
|
+
|
|
27
|
+
## Run
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npx blueprint-extractor-mcp
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
The server reads `UE_REMOTE_CONTROL_PORT` and defaults to `30010`.
|
|
34
|
+
|
|
35
|
+
You can also set `UE_BLUEPRINT_EXTRACTOR_SUBSYSTEM_PATH` to force a specific subsystem object path instead of using the built-in probe list.
|
|
36
|
+
|
|
37
|
+
For workflow-oriented guidance, the server also exposes prompts such as `normalize_ui_design_input`, `design_menu_from_design_spec`, `author_widget_motion_from_design_spec`, `plan_widget_motion_verification`, `design_menu_screen`, `author_material_button_style`, `wire_hud_widget_classes`, and `debug_widget_compile_errors`.
|
|
38
|
+
|
|
39
|
+
For host-side code automation, these optional env vars are supported:
|
|
40
|
+
|
|
41
|
+
- `UE_ENGINE_ROOT`
|
|
42
|
+
- `UE_PROJECT_PATH`
|
|
43
|
+
- `UE_PROJECT_TARGET` or `UE_EDITOR_TARGET`
|
|
44
|
+
- `UE_BUILD_PLATFORM`
|
|
45
|
+
- `UE_BUILD_CONFIGURATION`
|
|
46
|
+
|
|
47
|
+
## Install In MCP Clients
|
|
48
|
+
|
|
49
|
+
Claude Code:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
claude mcp add -s user -t stdio blueprint-extractor -e UE_REMOTE_CONTROL_PORT=30010 -- npx -y blueprint-extractor-mcp@latest
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Codex:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
codex mcp add --env UE_REMOTE_CONTROL_PORT=30010 blueprint-extractor -- npx -y blueprint-extractor-mcp@latest
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Local Development
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npm install
|
|
65
|
+
npm run build
|
|
66
|
+
npm test
|
|
67
|
+
npm run test:pack-smoke
|
|
68
|
+
npm run test:publish-gate
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
For the gated live smoke test:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
BLUEPRINT_EXTRACTOR_LIVE_E2E=1 npm run test:live
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
The live suite imports a texture over a local HTTP fixture server, verifies request-header forwarding, imports a local mesh fixture, polls both jobs to completion, smoke-tests the composable material workflow plus material function and material instance authoring, and round-trips the dedicated Enhanced Input authoring tools before saving the returned asset paths.
|
|
78
|
+
|
|
79
|
+
The default unit/stdio suites also cover prompt registration, resource-template registration, the narrowed widget surfaces (`extract_widget_blueprint`, `extract_widget_animation`, `modify_widget`, `modify_widget_blueprint`, `modify_widget_animation`), the host-side project-control tools (`compile_project_code`, `trigger_live_coding`, `restart_editor`, `sync_project_code`, `apply_window_ui_changes`), motion checkpoint capture/compare, the compact material graph surfaces (`extract_material`, `modify_material`), and output-schema exposure for the specialized import and cascade tools.
|
|
80
|
+
|
|
81
|
+
Repository and full documentation:
|
|
82
|
+
|
|
83
|
+
- <https://github.com/SunGrow/ue-blueprint-extractor>
|