16 KiB
16 KiB
BlueprintMCP Endpoint Naming Plan
Convention: every endpoint is verb_noun. Names should be descriptive enough that you can guess what the endpoint does without reading documentation. Verbs:
- dump — return the entire contents of a single object (blueprint, graph, material, etc.)
- list — enumerate assets or sub-elements from the asset registry (cheap, no loading)
- search — deep search that loads assets, inspects their contents, and returns matches
- find — look up references or locate specific items by criteria
- create — make a new asset/graph/struct/enum
- add — add a sub-element to an existing thing (variable, component, parameter, etc.)
- remove/delete — remove a sub-element or asset
- set/change — change a property value or type
- rename — rename something
- connect/disconnect — wire/unwire pins
- validate/compile — compile and report errors
- snapshot/diff/restore — capture, compare, and restore graph state
Blueprint — Read/Query
| Current | Proposed | Description |
|---|---|---|
list |
list_blueprint_assets |
List all blueprint and level blueprint assets from the asset registry (no loading). Optional query filters by name/path substring. Optional parentClass filters by parent class name. Returns name, path, and parent class for each. |
blueprint |
dump_blueprint |
Load one blueprint by name and dump everything: variables, graph list, interfaces, and parent class. |
graph |
dump_blueprint_graph |
Load one graph by blueprint name + graph name. Dumps all nodes with their pins, connections, positions, and metadata. |
search |
search_within_blueprints |
Deep search: loads every blueprint, iterates all graphs/nodes, and finds nodes whose title, function name, event name, or variable name matches the query. Returns blueprint, graph, and node info for each match. |
references |
find_asset_references |
Given an asset path, queries the asset registry for all packages that reference it. Separates results into blueprint referencers and other referencers. |
search_by_type |
search_type_usage_in_blueprints |
Deep search: loads every blueprint and finds variables, function parameters, and pin types that use a given type name (struct, class, or enum). Returns usage location and context for each match. |
get_pin_info |
get_pin_details |
Get detailed type and connection info for a specific pin (by blueprint, nodeId, pinName). |
check_pin_compatibility |
check_pin_connection_compatibility |
Check whether two specific pins (source and target) can be connected. Returns compatibility and any error message. |
test_save |
test_save_blueprint_package |
Diagnostic: load a blueprint and save its package with no modifications, to verify the save pipeline works. |
Blueprint — Discovery (Unreal reflection)
| Current | Proposed | Description |
|---|---|---|
list_classes |
search_unreal_classes |
Search all UClasses in the engine. Optional query filters by class name substring. Optional parentClass restricts to subclasses. Returns class name, path, parent, and flags. |
list_functions |
list_class_functions |
List all UFunctions on a given class. Optional query filters by function name substring. Returns name, parameters, return type, and flags for each. |
list_properties |
list_class_properties |
List all UProperties on a given class. Optional query filters by property name substring. Returns name, type, flags, and metadata for each. |
Blueprint — Validation
| Current | Proposed | Description |
|---|---|---|
validate_blueprint |
compile_blueprint |
Compile one blueprint and report any errors/warnings with graph, node, and message details. |
validate_all_blueprints |
compile_all_blueprints |
Compile all blueprints (optional query to filter which ones). Returns per-blueprint pass/fail with error details. Supports pagination. |
Blueprint — Creation/Structure
| Current | Proposed | Description |
|---|---|---|
create_blueprint |
create_blueprint_asset |
Create a new Blueprint asset with a given name, path, and parent class. |
create_graph |
create_blueprint_graph |
Create a new function or macro graph inside a blueprint. |
delete_graph |
delete_blueprint_graph |
Delete a graph from a blueprint. |
rename_graph |
rename_blueprint_graph |
Rename a graph inside a blueprint. |
reparent_blueprint |
reparent_blueprint |
Change a blueprint's parent class. |
create_struct |
create_struct_asset |
Create a new user-defined struct asset. |
create_enum |
create_enum_asset |
Create a new user-defined enum asset. |
add_struct_property |
add_struct_field |
Add a field to a user-defined struct. |
remove_struct_property |
remove_struct_field |
Remove a field from a user-defined struct. |
Blueprint — Variables
| Current | Proposed | Description |
|---|---|---|
add_variable |
add_blueprint_variable |
Add a variable to a blueprint with a given name and type. |
remove_variable |
remove_blueprint_variable |
Remove a variable from a blueprint by name. |
change_variable_type |
change_blueprint_variable_type |
Change an existing blueprint variable's type. |
set_variable_metadata |
set_blueprint_variable_metadata |
Set variable metadata (category, tooltip, replication, etc.). |
Blueprint — Functions/Parameters
| Current | Proposed | Description |
|---|---|---|
add_function_parameter |
add_function_parameter |
Add an input or output parameter to a function graph. |
remove_function_parameter |
remove_function_parameter |
Remove a parameter from a function graph. |
change_function_param_type |
change_function_parameter_type |
Change the type of an existing function parameter. |
Blueprint — Event Dispatchers
| Current | Proposed | Description |
|---|---|---|
add_event_dispatcher |
add_event_dispatcher |
Add an event dispatcher to a blueprint. |
list_event_dispatchers |
list_event_dispatchers |
List all event dispatchers on a blueprint with their delegate signatures. |
Blueprint — Components
| Current | Proposed | Description |
|---|---|---|
add_component |
add_blueprint_component |
Add a component to a blueprint's component hierarchy. |
remove_component |
remove_blueprint_component |
Remove a component from a blueprint. |
list_components |
list_blueprint_components |
List all components in a blueprint's component hierarchy. |
Blueprint — Interfaces (new-style)
| Current | Proposed | Description |
|---|---|---|
list_interfaces |
list_blueprint_interfaces |
List all interfaces implemented by a blueprint, with the function stubs each provides. |
add_interface |
add_blueprint_interface |
Add an interface implementation to a blueprint. Creates function stub graphs. |
remove_interface |
remove_blueprint_interface |
Remove an interface implementation from a blueprint. Optionally preserves function graphs. |
Blueprint — Node Mutation (new-style)
| Current | Proposed | Description |
|---|---|---|
search_node_types |
search_spawnable_node_types |
Search the blueprint action database (the right-click menu) for spawnable node types matching a query string. Returns full action names like "Utilities|Flow Control|Branch". |
spawn_node |
spawn_node_in_graph |
Create one or more nodes in a graph by exact action name (from search_spawnable_node_types). Invokes the spawner and returns the new node details. |
delete_node |
delete_node_from_graph |
Delete a node from a graph by GUID. |
move_node |
set_node_position |
Set a node's X/Y position in the graph editor. |
duplicate_nodes |
duplicate_nodes_in_graph |
Duplicate one or more nodes within a graph. |
connect_pins |
connect_blueprint_pins |
Connect two pins (by blueprint, source node+pin, target node+pin). |
disconnect_pin |
disconnect_blueprint_pin |
Break connections on a pin (all connections, or a specific one). |
set_pin_default |
set_pin_default_value |
Set a pin's default value string. |
get_node_comment |
get_node_comment |
Get the comment text on a node. |
set_node_comment |
set_node_comment |
Set or clear the comment text on a node. |
replace_function_calls |
replace_function_calls_in_blueprint |
Bulk-replace all calls to one function with calls to another across a blueprint. |
refresh_all_nodes |
refresh_all_nodes_in_graph |
Refresh (reconstruct) all nodes in a graph to pick up signature changes. |
change_struct_node_type |
change_struct_node_type |
Change which struct a Break/Make/Set-Members node operates on. |
set_blueprint_default |
set_class_default_value |
Set a property value on the blueprint's Class Default Object (CDO). |
rename_asset |
rename_asset |
Rename or move an asset to a new name/path. |
delete_asset |
delete_asset |
Delete an asset from the project. |
diff_blueprints |
diff_two_blueprints |
Compare two blueprints and return structural differences (added/removed/changed nodes, connections, variables). |
Blueprint — Snapshots
| Current | Proposed | Description |
|---|---|---|
snapshot_graph |
snapshot_blueprint_graph |
Capture a snapshot of a blueprint's graphs (nodes and connections) for later diffing or restore. |
diff_graph |
diff_blueprint_graph_vs_snapshot |
Diff the current state of a blueprint's graphs against a previously captured snapshot. Returns added/removed/changed nodes and connections. |
restore_graph |
restore_blueprint_graph_from_snapshot |
Restore a blueprint's graphs to the state captured in a snapshot (recreates nodes and connections). |
find_disconnected_pins |
find_pins_disconnected_since_snapshot |
Compare current graphs against a snapshot and find pins that were previously connected but are now disconnected. |
analyze_rebuild_impact |
analyze_cpp_rebuild_impact |
Given a C++ module name, find all blueprints that use structs/classes from that module and report which nodes/pins would be affected by a rebuild. |
Materials — Read
| Current | Proposed | Description |
|---|---|---|
materials |
list_material_assets |
List all material and material instance assets from the asset registry (no loading). Optional query filters by name/path substring. Optional type filters to "material" or "instance" only. |
material |
dump_material |
Load one material by name and dump everything: properties (domain, blend mode, shading model, two-sided, etc.) and expression summary. |
material_graph |
dump_material_expression_graph |
Load one material and dump its full expression graph: every expression node with type, position, parameter values, and all pin connections. |
describe_material |
describe_material_in_english |
Load a material and generate a human-readable text description by tracing the expression graph backwards from each material output pin. |
search_materials |
search_within_materials |
Deep search: loads every material, inspects expression nodes, and finds materials/expressions whose name, class, description, or parameter name matches the query. |
material_references |
find_material_references |
Given a material name, query the asset registry for all assets that reference it. |
Materials — Mutation
| Current | Proposed | Description |
|---|---|---|
create_material |
create_material_asset |
Create a new material asset. |
set_material_property |
set_material_property |
Set a top-level material property (blend mode, shading model, two-sided, etc.). |
add_material_expression |
add_material_expression |
Add a material expression node to a material's graph. |
delete_material_expression |
delete_material_expression |
Remove a material expression node from a material's graph. |
connect_material_pins |
connect_material_expression_pins |
Connect two expression pins in a material graph. |
disconnect_material_pin |
disconnect_material_expression_pin |
Disconnect a pin in a material graph. |
set_expression_value |
set_material_expression_property |
Set a property on a material expression node (e.g. constant value, texture, parameter name). |
move_material_expression |
set_material_expression_position |
Set X/Y position of a material expression in the graph editor. |
validate_material |
compile_material |
Compile a material and report errors. |
Material Instances
| Current | Proposed | Description |
|---|---|---|
create_material_instance |
create_material_instance_asset |
Create a new material instance constant with a given parent material. |
set_material_instance_parameter |
set_material_instance_parameter |
Set a parameter override on a material instance (scalar, vector, texture, etc.). |
material_instance_params |
dump_material_instance_parameters |
Dump all parameter values on a material instance, showing both overridden and inherited values. |
reparent_material_instance |
reparent_material_instance |
Change a material instance's parent material. |
Material Functions
| Current | Proposed | Description |
|---|---|---|
material_functions |
list_material_function_assets |
List all material function assets from the asset registry. Optional query filters by name/path substring. |
material_function |
dump_material_function |
Load one material function and dump its expressions, inputs, and outputs. |
create_material_function |
create_material_function_asset |
Create a new material function asset. |
Material Snapshots
| Current | Proposed | Description |
|---|---|---|
snapshot_material_graph |
snapshot_material_expression_graph |
Capture a snapshot of a material's expression graph. |
diff_material_graph |
diff_material_graph_vs_snapshot |
Diff a material's current expression graph against a snapshot. |
restore_material_graph |
restore_material_graph_from_snapshot |
Restore a material's expression graph from a snapshot. |
Animation Blueprints
| Current | Proposed | Description |
|---|---|---|
create_anim_blueprint |
create_anim_blueprint_asset |
Create a new Animation Blueprint asset with a given skeleton. |
add_anim_state |
add_anim_state_to_machine |
Add a state node to a state machine graph. |
remove_anim_state |
remove_anim_state_from_machine |
Remove a state node from a state machine graph. |
add_anim_transition |
add_anim_state_transition |
Add a transition between two states in a state machine. |
set_transition_rule |
set_anim_transition_rule |
Set the boolean condition expression for a state machine transition. |
add_anim_node |
add_anim_graph_node |
Add an animation node (sequence player, blend space player, etc.) to a state's graph. |
add_state_machine |
add_anim_state_machine |
Add a state machine sub-graph to an anim blueprint's AnimGraph. |
set_state_animation |
set_anim_state_animation |
Set which animation sequence a state plays. |
list_anim_slots |
list_anim_slot_names |
List all animation slot names available in the skeleton's slot groups. |
list_sync_groups |
list_anim_sync_groups |
List all animation sync groups defined in the project. |
create_blend_space |
create_blend_space_asset |
Create a new Blend Space asset. |
set_blend_space_samples |
set_blend_space_sample_points |
Set the sample points (animation + coordinates) on a blend space. |
set_state_blend_space |
set_anim_state_blend_space |
Set a state to play a blend space instead of a single animation. |
System
| Current | Proposed | Description |
|---|---|---|
health |
health |
Returns server status, mode, and asset counts. Answered on HTTP thread, no game-thread access. |
rescan |
rescan_asset_registry |
Re-scan the asset registry and refresh all cached asset lists. |
shutdown |
shutdown |
Request graceful engine exit. Only available in commandlet mode. |