diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool.h
index 94c18414b2ac45b8c0ed220aa5abe194c32daafa..f0855ca0e79ebe1e5ae2b61860b68c6198a76a1f 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool/MuonAmbiTrackSelectionTool.h
@@ -46,9 +46,16 @@ class MuonAmbiTrackSelectionTool : virtual public Trk::IAmbiTrackSelectionTool,
                                                               Trk::PRDtoTrackMap &prd_to_track_map) const override;
 
   private:
-    ToolHandle<Muon::MuonEDMPrinterTool>  m_printer;
-    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc",
-                                                        "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
+    ToolHandle<Muon::MuonEDMPrinterTool> m_printer{
+        this,
+        "Printer",
+        "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
+    };
+    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{
+        this,
+        "MuonIdHelperSvc",
+        "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
+    };
 
     /** maximum hit overlap fraction between two track, if higher track will be rejected*/
     double m_maxOverlapFraction;
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/src/MuonAmbiTrackSelectionTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/src/MuonAmbiTrackSelectionTool.cxx
index 51a4dd34707c1941ee1f1ea4d6dab6c45f7c3b80..16a40c19b06b310db674d1f42a059b573e0311c7 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/src/MuonAmbiTrackSelectionTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonAmbiTrackSelectionTool/src/MuonAmbiTrackSelectionTool.cxx
@@ -20,7 +20,7 @@
 
 Muon::MuonAmbiTrackSelectionTool::MuonAmbiTrackSelectionTool(const std::string &t, const std::string &n,
                                                              const IInterface *p)
-    : AthAlgTool(t, n, p), m_printer("Muon::MuonEDMPrinterTool/MuonEDMPrinterTool")
+    : AthAlgTool(t, n, p)
 {
     declareInterface<IAmbiTrackSelectionTool>(this);
 
@@ -34,8 +34,6 @@ Muon::MuonAmbiTrackSelectionTool::MuonAmbiTrackSelectionTool(const std::string &
 StatusCode
 Muon::MuonAmbiTrackSelectionTool::initialize()
 {
-    ATH_CHECK(AthAlgTool::initialize());
-
     ATH_CHECK(m_printer.retrieve());
     ATH_CHECK(m_idHelperSvc.retrieve());
 
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/MuonRecHelperTools/MuonEDMPrinterTool.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/MuonRecHelperTools/MuonEDMPrinterTool.h
index 5b2719b10ae141b775ca5198043506748fc1a0e2..40d97a9438914a452c55a97b3c9191bfba1ddbf6 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/MuonRecHelperTools/MuonEDMPrinterTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/MuonRecHelperTools/MuonEDMPrinterTool.h
@@ -141,8 +141,17 @@ class MuonEDMPrinterTool : public AthAlgTool {
         "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
         "Handle to the service providing the IMuonEDMHelperSvc interface",
     };
-    ToolHandle<Trk::ITrackSummaryHelperTool> m_summaryHelper;
-    ToolHandle<Trk::IResidualPullCalculator> m_pullCalculator;
+
+    ToolHandle<Trk::ITrackSummaryHelperTool> m_summaryHelper{
+        this,
+        "MuonTrackSummaryHelperTool",
+        "Muon::MuonTrackSummaryHelperTool/MuonTrackSummaryHelperTool",
+    };
+    ToolHandle<Trk::IResidualPullCalculator> m_pullCalculator{
+        this,
+        "ResidualPullCalculator",
+        "Trk::ResidualPullCalculator/ResidualPullCalculator",
+    };
 
     SG::ReadCondHandleKey<MuonGM::MuonDetectorManager> m_DetectorManagerKey{
         this,
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonEDMPrinterTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonEDMPrinterTool.cxx
index f1144e4494008e8003a41888e992d1c7fcff5c96..0e31bd6d001f4f0c0e525f5b3ac61d0ac8f4a19f 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonEDMPrinterTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonEDMPrinterTool.cxx
@@ -33,22 +33,18 @@ namespace Muon {
 
 
 MuonEDMPrinterTool::MuonEDMPrinterTool(const std::string& ty, const std::string& na, const IInterface* pa)
-    : AthAlgTool(ty, na, pa),
-      m_summaryHelper("Muon::MuonTrackSummaryHelperTool/MuonTrackSummaryHelperTool"),
-      m_pullCalculator("Trk::ResidualPullCalculator/ResidualPullCalculator")
+    : AthAlgTool(ty, na, pa)
 {
     declareInterface<MuonEDMPrinterTool>(this);
-    declareProperty("MuonTrackSummaryHelperTool", m_summaryHelper);
 }
 
 StatusCode
 MuonEDMPrinterTool::initialize()
 {
-    ATH_CHECK(AthAlgTool::initialize());
-
     ATH_CHECK(m_idHelperSvc.retrieve());
     ATH_CHECK(m_edmHelperSvc.retrieve());
     ATH_CHECK(m_summaryHelper.retrieve());
+    ATH_CHECK(m_pullCalculator.retrieve());
 
     ATH_CHECK(m_DetectorManagerKey.initialize());
     ATH_CHECK(m_mdtKey.initialize());
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.cxx
index 3cd820065d667cc9be19bb8bbb63ff739a93e33f..5d5a93427cf587e73cf497dfd9f562be97d04cd3 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.cxx
@@ -11,9 +11,7 @@
 namespace Muon {
 
 MuonSegmentConverterTool::MuonSegmentConverterTool(const std::string& t, const std::string& n, const IInterface* p)
-    : AthAlgTool(t, n, p),
-      m_hitSummaryTool("Muon::MuonSegmentHitSummaryTool/MuonSegmentHitSummaryTool"),
-      m_hitTimingTool("Muon::MuonHitTimingTool/MuonHitTimingTool")
+    : AthAlgTool(t, n, p)
 {
     declareInterface<xAODMaker::IMuonSegmentConverterTool>(this);
 }
@@ -21,11 +19,11 @@ MuonSegmentConverterTool::MuonSegmentConverterTool(const std::string& t, const s
 StatusCode
 MuonSegmentConverterTool::initialize()
 {
-
     ATH_CHECK(m_hitSummaryTool.retrieve());
     ATH_CHECK(m_idHelperSvc.retrieve());
     ATH_CHECK(m_edmHelper.retrieve());
-    ATH_CHECK(m_hitSummaryTool.retrieve());
+    ATH_CHECK(m_hitTimingTool.retrieve());
+
     return StatusCode::SUCCESS;
 }
 
@@ -33,7 +31,6 @@ xAOD::MuonSegment*
 MuonSegmentConverterTool::convert(const ElementLink< ::Trk::SegmentCollection>& segLink,
                                   xAOD::MuonSegmentContainer*                   container) const
 {
-
     // sanity checks
     if (!segLink.isValid() || !*segLink) {
         ATH_MSG_WARNING(" Got invalid element link");
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.h
index 8dac1836e027ddcc7f83cea629a40620aaf0bad3..4c1fe99674cf0b9f9d352dd2e706a767954646a5 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecHelperTools/src/MuonSegmentConverterTool.h
@@ -53,8 +53,17 @@ class MuonSegmentConverterTool : public AthAlgTool, virtual public xAODMaker::IM
     /** helper function to dress output segment with cluster hit timing information */
     void addClusterTiming(const MuonSegment& seg, xAOD::MuonSegment& xaodSeg) const;
 
-    ToolHandle<IMuonSegmentHitSummaryTool> m_hitSummaryTool;
-    ServiceHandle<Muon::IMuonIdHelperSvc>  m_idHelperSvc{
+    ToolHandle<IMuonSegmentHitSummaryTool> m_hitSummaryTool{
+        this,
+        "MuonSegmentHitSummaryTool",
+        "Muon::MuonSegmentHitSummaryTool/MuonSegmentHitSummaryTool",
+    };
+    ToolHandle<IMuonHitTimingTool> m_hitTimingTool{
+        this,
+        "MuonHitTimingTool",
+        "Muon::MuonHitTimingTool/MuonHitTimingTool",
+    };
+    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{
         this,
         "MuonIdHelperSvc",
         "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
@@ -65,7 +74,6 @@ class MuonSegmentConverterTool : public AthAlgTool, virtual public xAODMaker::IM
         "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
         "Handle to the service providing the IMuonEDMHelperSvc interface",
     };
-    ToolHandle<IMuonHitTimingTool> m_hitTimingTool;
 };
 
 }  // namespace Muon
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.cxx
index dfa54ad915bc6fce37ca5d632e28b1d38db1a6dc..97db90ae3de9372c499ccafb2cd8d4a1f599560e 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.cxx
@@ -16,20 +16,14 @@ namespace Muon {
 
 MuonSystemExtensionTool::MuonSystemExtensionTool(const std::string& type, const std::string& name,
                                                  const IInterface* parent)
-    : AthAlgTool(type, name, parent),
-      m_caloExtensionTool("Trk::ParticleCaloExtensionTool/ParticleCaloExtensionTool", this),
-      m_extrapolator("Trk::Extrapolator/AtlasExtrapolator", this)
+    : AthAlgTool(type, name, parent)
 {
     declareInterface<IMuonSystemExtensionTool>(this);
-
-    declareProperty("Extrapolator", m_extrapolator);
-    declareProperty("ParticleCaloExtensionTool", m_caloExtensionTool);
 }
 
 StatusCode
 MuonSystemExtensionTool::initialize()
 {
-
     ATH_CHECK(m_caloExtensionTool.retrieve());
     ATH_CHECK(m_extrapolator.retrieve());
 
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.h
index f0f0f5cff7dff675420b142fe7acc0530f833ecf..ce9a503ce869484804904d9c7fc78977516bbcae 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/src/MuonSystemExtensionTool.h
@@ -7,6 +7,8 @@
 
 #include <vector>
 
+#include "TrkExInterfaces/IExtrapolator.h"
+#include "TrkParameters/TrackParameters.h"
 #include "AthenaBaseComps/AthAlgTool.h"
 #include "GaudiKernel/ToolHandle.h"
 #include "MuonDetDescrUtils/MuonSectorMapping.h"
@@ -14,8 +16,6 @@
 #include "MuonRecToolInterfaces/IMuonSystemExtensionTool.h"
 #include "MuonStationIndex/MuonStationIndex.h"
 #include "RecoToolInterfaces/IParticleCaloExtensionTool.h"
-#include "TrkExInterfaces/IExtrapolator.h"
-#include "TrkParameters/TrackParameters.h"
 #include "xAODTracking/TrackParticle.h"
 
 namespace Trk {
@@ -50,8 +50,16 @@ class MuonSystemExtensionTool : virtual public IMuonSystemExtensionTool, public
     /** get surfaces to be intersected for a given start parameters */
     SurfaceVec getSurfacesForIntersection(const Trk::TrackParameters& muonEntryPars) const;
 
-    ToolHandle<Trk::IParticleCaloExtensionTool> m_caloExtensionTool;
-    ToolHandle<Trk::IExtrapolator>              m_extrapolator;
+    ToolHandle<Trk::IParticleCaloExtensionTool> m_caloExtensionTool{
+        this,
+        "ParticleCaloExtensionTool",
+        "Trk::ParticleCaloExtensionTool/ParticleCaloExtensionTool",
+    };
+    ToolHandle<Trk::IExtrapolator> m_extrapolator{
+        this,
+        "Extrapolator",
+        "Trk::Extrapolator/AtlasExtrapolator",
+    };
 
     /** reference surfaces per region and sector */
     std::vector<std::vector<SurfaceVec> > m_referenceSurfaces;
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.cxx
index c36fcec2bd3dee751bdbf1fdadc818da81cd9945..ab0b25742f7810f2077f44956b661559513964a4 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.cxx
@@ -14,9 +14,7 @@
 namespace Muon {
 
 MuonHitSummaryTool::MuonHitSummaryTool(const std::string& ty, const std::string& na, const IInterface* pa)
-    : AthAlgTool(ty, na, pa),
-      m_printer("Muon::MuonEDMPrinterTool/MuonEDMPrinterTool"),
-      m_summaryHelperTool("Muon::MuonTrackSummaryHelperTool/MuonTrackSummaryHelperTool")
+    : AthAlgTool(ty, na, pa)
 {
     declareInterface<IMuonHitSummaryTool>(this);
 }
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.h
index 6021e2093283e54cee4ee37cd7f3f17db6ba15f2..65a8902b213bc48048e4c3da57a0d9435dc2885e 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/src/MuonHitSummaryTool.h
@@ -70,12 +70,28 @@ class MuonHitSummaryTool : public AthAlgTool, virtual public IMuonHitSummaryTool
     /** helper function to calculate MuonTrackSummary from track */
     void getMuonTrackSummary(Trk::MuonTrackSummary& muonSummary, const Trk::Track& track) const;
     void calculateSummaryCounts(CompactSummary& sum) const;
-    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc",
-                                                        "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
-    ServiceHandle<IMuonEDMHelperSvc>      m_edmHelperSvc{this, "edmHelper", "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
-                                                    "Handle to the service providing the IMuonEDMHelperSvc interface"};
-    ToolHandle<MuonEDMPrinterTool>        m_printer;
-    ToolHandle<Trk::ITrackSummaryHelperTool> m_summaryHelperTool;
+    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{
+        this,
+        "MuonIdHelperSvc",
+        "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
+    };
+    ServiceHandle<IMuonEDMHelperSvc> m_edmHelperSvc{
+        this,
+        "edmHelper",
+        "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
+        "Handle to the service providing the IMuonEDMHelperSvc interface",
+    };
+
+    ToolHandle<MuonEDMPrinterTool> m_printer{
+        this,
+        "Printer",
+        "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
+    };
+    ToolHandle<Trk::ITrackSummaryHelperTool> m_summaryHelperTool{
+        this,
+        "MuonTrackSummaryHelperTool",
+        "Muon::MuonTrackSummaryHelperTool/MuonTrackSummaryHelperTool",
+    };
 };
 
 }  // namespace Muon
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.cxx
index 32acb2a5391d37125bcc3accfc04703a110cc810..fe2feb7eb852927c42d81af59a056a61b42da090 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.cxx
@@ -18,7 +18,6 @@ namespace Muon {
 /** Constructor **/
 MuonTruthSummaryTool::MuonTruthSummaryTool(const std::string& t, const std::string& n, const IInterface* p)
     : AthAlgTool(t, n, p),
-      m_printer("Muon::MuonEDMPrinterTool/MuonEDMPrinterTool"),
       m_incidentSvc("IncidentSvc", n),
       m_wasInit(false),
       m_truthHitsTotal(0),
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.h
index 828ba55f73540d9d9e530977162d8931b146d709..f320fc54cb101437ae9d8b2d36e21b4cce5fcd27 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthSummaryTool.h
@@ -85,13 +85,26 @@ class MuonTruthSummaryTool : public AthAlgTool, virtual public IMuonTruthSummary
     std::string printSummary(const std::unordered_set<Identifier, IdentifierHash>& truth,
                              const std::unordered_set<Identifier, IdentifierHash>& found);
 
-    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc",
-                                                        "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
-    ServiceHandle<IMuonEDMHelperSvc>      m_edmHelperSvc{this, "edmHelper", "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
-                                                    "Handle to the service providing the IMuonEDMHelperSvc interface"};
-    ToolHandle<MuonEDMPrinterTool>        m_printer;
-    ServiceHandle<IIncidentSvc>           m_incidentSvc;
-    mutable std::atomic<bool>             m_wasInit;
+    ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{
+        this,
+        "MuonIdHelperSvc",
+        "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
+    };
+    ServiceHandle<IMuonEDMHelperSvc> m_edmHelperSvc{
+        this,
+        "edmHelper",
+        "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
+        "Handle to the service providing the IMuonEDMHelperSvc interface",
+    };
+    ServiceHandle<IIncidentSvc> m_incidentSvc;
+
+    ToolHandle<MuonEDMPrinterTool> m_printer{
+        this,
+        "Printer",
+        "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
+    };
+
+    mutable std::atomic<bool> m_wasInit;
 
     SG::ReadHandleKeyArray<PRD_MultiTruthCollection> m_TruthNames{
         this, "TruthNames", {"RPC_TruthMap", "TGC_TruthMap", "MDT_TruthMap"}, "truth names"};
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.cxx
index 88d1968be7c6827bfde509bf77ebec056a37a0a0..e198e68b2abfe4cd513bbf8434d7c6720b962847 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.cxx
@@ -45,28 +45,12 @@ namespace Muon {
 /** Constructor **/
 MuonTruthTrackBuilder::MuonTruthTrackBuilder(const std::string& t, const std::string& n, const IInterface* p)
     : AthAlgTool(t, n, p),
-      m_trackFitter("Trk::GlobalChi2Fitter/MCTBFitter"),
-      m_slTrackFitter("Trk::GlobalChi2Fitter/MCTBSLFitter"),
-      m_extrapolator("Trk::Extrapolator/AtlasExtrapolator"),
-      m_trackToSegmentTool("Muon::MuonTrackToSegmentTool/MuonTrackToSegmentTool"),
-      m_mdtCreator("Muon::MdtDriftCircleOnTrackCreator/MdtDriftCircleOnTrackCreator"),
-      m_muonClusterCreator("Muon::MuonClusterOnTrackCreator/MuonClusterOnTrackCreator"),
-      m_muonCompRotCreator("Muon::TriggerChamberClusterOnTrackCreator/TriggerChamberClusterOnTrackCreator"),
-      m_printer("Muon::MuonEDMPrinterTool/MuonEDMPrinterTool"),
-      m_trackExtrapolationTool("Muon::MuonTrackExtrapolationTool/MuonTrackExtrapolationTool"),
-      m_trackCleaner("Muon::MuonTrackCleaner/MuonTrackCleaner"),
       m_minNdof(6),
       m_onlyPrimaries(false),
       m_primaryBarcodeCutOff(100000)
 {
     declareInterface<Trk::ITruthTrackBuilder>(this);
     // TrackFitter
-    declareProperty("TrackFitter", m_trackFitter);
-    declareProperty("MdtRotCreator", m_mdtCreator);
-    declareProperty("MuonClusterCreator", m_muonClusterCreator);
-    declareProperty("MuonCompRotCreator", m_muonCompRotCreator);
-    declareProperty("TrackExtrapolationTool", m_trackExtrapolationTool);
-    declareProperty("TrackCleaner", m_trackCleaner);
     declareProperty("MinDegreesOfFreedom", m_minNdof);
     declareProperty("OnlyPrimaries", m_onlyPrimaries);
     declareProperty("PrimaryBarcodeCutOff", m_primaryBarcodeCutOff);
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.h
index 0367619bda0e3fa493c5d864b7d23a80494a92ca..006b7eeafc8da6ffe6a60a335821c44a0192df1d 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTruthTools/src/MuonTruthTrackBuilder.h
@@ -120,16 +120,56 @@ class MuonTruthTrackBuilder : public AthAlgTool, virtual public Trk::ITruthTrack
                              std::vector<const Trk::MeasurementBase*>& hitsOut, int splitSL, int splitNSWEI,
                              bool isEndcap, double phiDist) const;
 
-    ToolHandle<Trk::ITrackFitter>                    m_trackFitter;
-    ToolHandle<Trk::ITrackFitter>                    m_slTrackFitter;
-    ToolHandle<Trk::IExtrapolator>                   m_extrapolator;
-    ToolHandle<IMuonTrackToSegmentTool>              m_trackToSegmentTool;
-    ToolHandle<IMdtDriftCircleOnTrackCreator>        m_mdtCreator;
-    ToolHandle<IMuonClusterOnTrackCreator>           m_muonClusterCreator;
-    ToolHandle<IMuonCompetingClustersOnTrackCreator> m_muonCompRotCreator;
-    ToolHandle<MuonEDMPrinterTool>                   m_printer;
-    ToolHandle<IMuonTrackExtrapolationTool>          m_trackExtrapolationTool;
-    ToolHandle<IMuonTrackCleaner>                    m_trackCleaner;
+    ToolHandle<Trk::ITrackFitter> m_trackFitter{
+        this,
+        "TrackFitter",
+        "Trk::GlobalChi2Fitter/MCTBFitter",
+    };
+    ToolHandle<Trk::ITrackFitter> m_slTrackFitter{
+        this,
+        "MCTBSLFitter",
+        "Trk::GlobalChi2Fitter/MCTBSLFitter",
+    };
+    ToolHandle<Trk::IExtrapolator> m_extrapolator{
+        this,
+        "AtlasExtrapolator",
+        "Trk::Extrapolator/AtlasExtrapolator",
+    };
+    ToolHandle<IMuonTrackToSegmentTool> m_trackToSegmentTool{
+        this,
+        "MuonTrackToSegmentTool",
+        "Muon::MuonTrackToSegmentTool/MuonTrackToSegmentTool",
+    };
+    ToolHandle<IMdtDriftCircleOnTrackCreator> m_mdtCreator{
+        this,
+        "MdtRotCreator",
+        "Muon::MdtDriftCircleOnTrackCreator/MdtDriftCircleOnTrackCreator",
+    };
+    ToolHandle<IMuonClusterOnTrackCreator> m_muonClusterCreator{
+        this,
+        "MuonClusterCreator",
+        "Muon::MuonClusterOnTrackCreator/MuonClusterOnTrackCreator",
+    };
+    ToolHandle<IMuonCompetingClustersOnTrackCreator> m_muonCompRotCreator{
+        this,
+        "MuonCompRotCreator",
+        "Muon::TriggerChamberClusterOnTrackCreator/TriggerChamberClusterOnTrackCreator",
+    };
+    ToolHandle<MuonEDMPrinterTool> m_printer{
+        this,
+        "Printer",
+        "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool",
+    };
+    ToolHandle<IMuonTrackExtrapolationTool> m_trackExtrapolationTool{
+        this,
+        "TrackExtrapolationTool",
+        "Muon::MuonTrackExtrapolationTool/MuonTrackExtrapolationTool",
+    };
+    ToolHandle<IMuonTrackCleaner> m_trackCleaner{
+        this,
+        "TrackCleaner",
+        "Muon::MuonTrackCleaner/MuonTrackCleaner",
+    };
 
     ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{
         this,