diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
index ef4c0f2b065..d5cae084ea9 100644
--- a/Marlin/Marlin.h
+++ b/Marlin/Marlin.h
@@ -299,6 +299,8 @@ extern float soft_endstop_min[XYZ], soft_endstop_max[XYZ];
   bool select_coordinate_system(const int8_t _new);
 #endif
 
+void tool_change(const uint8_t tmp_extruder, const float fr_mm_s=0.0, bool no_move=false);
+
 void report_current_position();
 
 #if IS_KINEMATIC
diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp
index b5e55afabb8..0843796178b 100644
--- a/Marlin/Marlin_main.cpp
+++ b/Marlin/Marlin_main.cpp
@@ -742,7 +742,6 @@ void set_current_from_steppers_for_axis(const AxisEnum axis);
   void plan_cubic_move(const float (&cart)[XYZE], const float (&offset)[4]);
 #endif
 
-void tool_change(const uint8_t tmp_extruder, const float fr_mm_s=0.0, bool no_move=false);
 void report_current_position();
 void report_current_position_detail();