More work on MCP endpoints
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -367,23 +367,6 @@ static int32 TrySavePackageSEH(
|
||||
}
|
||||
}
|
||||
|
||||
static void RefreshAllNodesInner(UBlueprint* BP)
|
||||
{
|
||||
FBlueprintEditorUtils::RefreshAllNodes(BP);
|
||||
}
|
||||
|
||||
int32 TryRefreshAllNodesSEH(UBlueprint* BP)
|
||||
{
|
||||
__try
|
||||
{
|
||||
RefreshAllNodesInner(BP);
|
||||
return 0;
|
||||
}
|
||||
__except (1)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
// Inner: create expression, register in material, and trigger PostEditChange.
|
||||
// All of this may crash for classes that are effectively abstract.
|
||||
@@ -601,13 +584,13 @@ bool FBlueprintMCPServer::Start(int32 InPort, bool bEditorMode)
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/references")), EHttpServerRequestVerbs::VERB_GET,
|
||||
QueuedHandler(TEXT("references")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/replace-function-calls")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("replaceFunctionCalls")));
|
||||
QueuedHandler(TEXT("replace_function_calls")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/change-variable-type")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("changeVariableType")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/change-function-param-type")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("changeFunctionParamType")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/delete-asset")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("deleteAsset")));
|
||||
QueuedHandler(TEXT("delete_asset")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/test-save")), EHttpServerRequestVerbs::VERB_GET,
|
||||
QueuedHandler(TEXT("testSave")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/connect-pins")), EHttpServerRequestVerbs::VERB_POST,
|
||||
@@ -615,7 +598,7 @@ bool FBlueprintMCPServer::Start(int32 InPort, bool bEditorMode)
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/disconnect-pin")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("disconnect_pin")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/refresh-all-nodes")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("refreshAllNodes")));
|
||||
QueuedHandler(TEXT("refresh_all_nodes")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/set-pin-default")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("set_pin_default")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/move-node")), EHttpServerRequestVerbs::VERB_POST,
|
||||
@@ -635,7 +618,7 @@ bool FBlueprintMCPServer::Start(int32 InPort, bool bEditorMode)
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/list-properties")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("listProperties")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/change-struct-node-type")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("changeStructNodeType")));
|
||||
QueuedHandler(TEXT("change_struct_node_type")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/remove-function-parameter")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("removeFunctionParameter")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/delete-node")), EHttpServerRequestVerbs::VERB_POST,
|
||||
@@ -648,18 +631,16 @@ bool FBlueprintMCPServer::Start(int32 InPort, bool bEditorMode)
|
||||
QueuedHandler(TEXT("validateBlueprint")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/validate-all-blueprints")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("validateAllBlueprints")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/add-node")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("addNode")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/search-node-actions")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("searchNodeActions")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/search-node-actions")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("search_node_actions")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/spawn-node")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("spawn_node")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/rename-asset")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("renameAsset")));
|
||||
QueuedHandler(TEXT("rename_asset")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/reparent-blueprint")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("reparentBlueprint")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/set-blueprint-default")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("setBlueprintDefault")));
|
||||
QueuedHandler(TEXT("set_blueprint_default")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/create-blueprint")), EHttpServerRequestVerbs::VERB_POST,
|
||||
QueuedHandler(TEXT("createBlueprint")));
|
||||
Router->BindRoute(FHttpPath(TEXT("/api/create-graph")), EHttpServerRequestVerbs::VERB_POST,
|
||||
@@ -977,25 +958,24 @@ void FBlueprintMCPServer::RegisterHandlers()
|
||||
{
|
||||
// Mutation endpoints — wrapped in undo transactions by ProcessOneRequest()
|
||||
MutationEndpoints = {
|
||||
TEXT("replaceFunctionCalls"),
|
||||
TEXT("replace_function_calls"),
|
||||
TEXT("changeVariableType"),
|
||||
TEXT("changeFunctionParamType"),
|
||||
TEXT("removeFunctionParameter"),
|
||||
TEXT("deleteAsset"),
|
||||
TEXT("delete_asset"),
|
||||
TEXT("connect_pins"),
|
||||
TEXT("disconnect_pin"),
|
||||
TEXT("refreshAllNodes"),
|
||||
TEXT("refresh_all_nodes"),
|
||||
TEXT("set_pin_default"),
|
||||
TEXT("move_node"),
|
||||
TEXT("changeStructNodeType"),
|
||||
TEXT("change_struct_node_type"),
|
||||
TEXT("delete_node"),
|
||||
TEXT("duplicate_nodes"),
|
||||
TEXT("addNode"),
|
||||
TEXT("spawn_node"),
|
||||
TEXT("set_node_comment"),
|
||||
TEXT("renameAsset"),
|
||||
TEXT("rename_asset"),
|
||||
TEXT("reparentBlueprint"),
|
||||
TEXT("setBlueprintDefault"),
|
||||
TEXT("set_blueprint_default"),
|
||||
TEXT("createBlueprint"),
|
||||
TEXT("createGraph"),
|
||||
TEXT("deleteGraph"),
|
||||
@@ -1050,14 +1030,14 @@ void FBlueprintMCPServer::RegisterHandlers()
|
||||
H(TEXT("references"), &FBlueprintMCPServer::HandleFindReferences);
|
||||
H(TEXT("testSave"), &FBlueprintMCPServer::HandleTestSave);
|
||||
H(TEXT("searchByType"), &FBlueprintMCPServer::HandleSearchByType);
|
||||
H(TEXT("replaceFunctionCalls"), &FBlueprintMCPServer::HandleReplaceFunctionCalls);
|
||||
// replace_function_calls is now handled by UMCPHandler_ReplaceFunctionCalls (new-style registry)
|
||||
H(TEXT("changeVariableType"), &FBlueprintMCPServer::HandleChangeVariableType);
|
||||
H(TEXT("changeFunctionParamType"), &FBlueprintMCPServer::HandleChangeFunctionParamType);
|
||||
H(TEXT("removeFunctionParameter"), &FBlueprintMCPServer::HandleRemoveFunctionParameter);
|
||||
H(TEXT("deleteAsset"), &FBlueprintMCPServer::HandleDeleteAsset);
|
||||
// delete_asset is now handled by UMCPHandler_DeleteAsset (new-style registry)
|
||||
// connect_pins is now handled by UMCPHandler_ConnectPins (new-style registry)
|
||||
// disconnect_pin is now handled by UMCPHandler_DisconnectPin (new-style registry)
|
||||
H(TEXT("refreshAllNodes"), &FBlueprintMCPServer::HandleRefreshAllNodes);
|
||||
// refresh_all_nodes is now handled by UMCPHandler_RefreshAllNodes (new-style registry)
|
||||
// set_pin_default is now handled by UMCPHandler_SetPinDefault (new-style registry)
|
||||
// move_node is now handled by UMCPHandler_MoveNode (new-style registry)
|
||||
// get_node_comment is now handled by UMCPHandler_GetNodeComment (new-style registry)
|
||||
@@ -1067,17 +1047,16 @@ void FBlueprintMCPServer::RegisterHandlers()
|
||||
H(TEXT("listClasses"), &FBlueprintMCPServer::HandleListClasses);
|
||||
H(TEXT("listFunctions"), &FBlueprintMCPServer::HandleListFunctions);
|
||||
H(TEXT("listProperties"), &FBlueprintMCPServer::HandleListProperties);
|
||||
H(TEXT("changeStructNodeType"), &FBlueprintMCPServer::HandleChangeStructNodeType);
|
||||
// change_struct_node_type is now handled by UMCPHandler_ChangeStructNodeType (new-style registry)
|
||||
// delete_node is now handled by UMCPHandler_DeleteNode (new-style registry)
|
||||
// duplicate_nodes is now handled by UMCPHandler_DuplicateNodes (new-style registry)
|
||||
H(TEXT("validateBlueprint"), &FBlueprintMCPServer::HandleValidateBlueprint);
|
||||
H(TEXT("validateAllBlueprints"), &FBlueprintMCPServer::HandleValidateAllBlueprints);
|
||||
H(TEXT("addNode"), &FBlueprintMCPServer::HandleAddNode);
|
||||
H(TEXT("searchNodeActions"), &FBlueprintMCPServer::HandleSearchNodeActions);
|
||||
// search_node_actions is now handled by UMCPHandler_SearchNodeActions (new-style registry)
|
||||
// spawn_node is now handled by UMCPHandler_SpawnNode (new-style registry)
|
||||
H(TEXT("renameAsset"), &FBlueprintMCPServer::HandleRenameAsset);
|
||||
// rename_asset is now handled by UMCPHandler_RenameAsset (new-style registry)
|
||||
H(TEXT("reparentBlueprint"), &FBlueprintMCPServer::HandleReparentBlueprint);
|
||||
H(TEXT("setBlueprintDefault"), &FBlueprintMCPServer::HandleSetBlueprintDefault);
|
||||
// set_blueprint_default is now handled by UMCPHandler_SetBlueprintDefault (new-style registry)
|
||||
H(TEXT("createBlueprint"), &FBlueprintMCPServer::HandleCreateBlueprint);
|
||||
H(TEXT("createGraph"), &FBlueprintMCPServer::HandleCreateGraph);
|
||||
H(TEXT("deleteGraph"), &FBlueprintMCPServer::HandleDeleteGraph);
|
||||
|
||||
Reference in New Issue
Block a user