diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecExampleConfigDb.py b/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecExampleConfigDb.py
index 45d9f5ca9e025b926244e2cbde5e9e9644c3ce0c..7a2e93c983f5cb7874bad147d6254139d94d1d96 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecExampleConfigDb.py
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecExampleConfigDb.py
@@ -43,7 +43,6 @@ addTool( "MuonRecExample.MuonRecTools.MuonCombinePatternTool", "MuonCombinePatte
 addTool( "MuonRecExample.MuonRecTools.MuonHoughPatternTool", "MuonHoughPatternTool" )
 addTool( "MuonRecExample.MuonRecTools.MuonHoughPatternFinderTool", "MuonHoughPatternFinderTool" )
 
-addService("MuonRecExample.MuonRecTools.AtlasTrackingGeometrySvc","AtlasTrackingGeometrySvc")
 addService("MuonRecExample.MuonRecTools.TrackingVolumesSvc","TrackingVolumesSvc")
 
 addTool( "Trk::MaterialEffectsUpdator", "MuonMaterialEffectsUpdator" )
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecTools.py b/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecTools.py
index 0985b2da0a388c100256974bb23852cf5dead960..676e791f79fd234dbc75585ee102d3767d360f31 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecTools.py
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecExample/python/MuonRecTools.py
@@ -187,9 +187,6 @@ def MuonHoughPatternFinderTool(name="MuonHoughPatternFinderTool",**kwargs):
 #--------------------------------------------------------------------------------
 
 # combined tracking geometry service
-def AtlasTrackingGeometrySvc(name="AtlasTrackingGeometrySvc",**kwargs):
-    from TrkDetDescrSvc.AtlasTrackingGeometrySvc import AtlasTrackingGeometrySvc
-    return AtlasTrackingGeometrySvc
 
 def TrackingVolumesSvc(name="TrackingVolumesSvc",**kwargs):
     from TrkDetDescrSvc.TrkDetDescrSvcConf import Trk__TrackingVolumesSvc
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecExample/share/MuonRec_jobOptions.py b/MuonSpectrometer/MuonReconstruction/MuonRecExample/share/MuonRec_jobOptions.py
index df1e8c81f8ebd8a5c16df6faf302751d8f3470b7..9ad89f4038daa0b13ee144fb3ea90721d3fed1d8 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecExample/share/MuonRec_jobOptions.py
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecExample/share/MuonRec_jobOptions.py
@@ -107,8 +107,6 @@ if rec.doTruth() and DetFlags.makeRIO.Muon_on():
    from MuonTruthAlgs.MuonTruthAlgsConf import MuonPRD_MultiTruthMaker
    topSequence+=MuonPRD_MultiTruthMaker()
 
-   from AthenaCommon.CfgGetter import getService
-   getService("AtlasTrackingGeometrySvc")
    from MuonTruthAlgs.MuonTruthAlgsConf import Muon__MuonTruthDecorationAlg
    topSequence += Muon__MuonTruthDecorationAlg("MuonTruthDecorationAlg")
    from MCTruthClassifier.MCTruthClassifierBase import MCTruthClassifier
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/share/MuonTGRec_jobOptions.py b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/share/MuonTGRec_jobOptions.py
index ab4df8207588fb151ce7bb9540d5a332f26e08c5..f5d240b71a2620cf0bb08160232deb9053dc1d3b 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/share/MuonTGRec_jobOptions.py
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTGRecTools/share/MuonTGRec_jobOptions.py
@@ -1,6 +1,9 @@
 # muon active/passive geometry setup
 from MuonTrackingGeometry.ConfiguredMuonTrackingGeometry import MuonTrackingGeometryBuilder
 
+# atlas tracking geometry service
+from TrkDetDescrSvc.AtlasTrackingGeometrySvc import AtlasTrackingGeometrySvc
+
 # atlas tracking geometry builder
 from TrkDetDescrTools.TrkDetDescrToolsConf import Trk__GeometryBuilder
 MuonStandAloneGeometryBuilder = Trk__GeometryBuilder( name = "MuonStandAloneGeometryBuilder",
@@ -54,7 +57,7 @@ MuonTGExtrapolator = Trk__Extrapolator( name = 'MuonTGExtrapolator',
 ToolSvc += MuonTGExtrapolator
 print MuonTGExtrapolator                          
  
-#
+# 
 
 
 from MuonTGRecTools.MuonTGRecToolsConf import Muon__MuonTGMeasurementTool
diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/share/MuonTrackSummaryHelperTool_jobOptions.py b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/share/MuonTrackSummaryHelperTool_jobOptions.py
index 39c364b4fa1ce99b71853dd801fe9a9ec420b8a7..1ad380a187191897cb7930618b9273191cf6c827 100755
--- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/share/MuonTrackSummaryHelperTool_jobOptions.py
+++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonTrackSummaryHelperTool/share/MuonTrackSummaryHelperTool_jobOptions.py
@@ -26,14 +26,6 @@ if doMuonHoleSearch:
     MyMuonHolesOnTrackToolGeometryBuilder.switchOffGeometry('Calo') 
     MyMuonHolesOnTrackToolGeometryBuilder.switchOnGeometry('Muon',0) 
     MyMuonHolesOnTrackToolGeometryBuilder.printInfo() 
-
-    # combined tracking geometry options
-    include ("TrkDetDescrSvc/ConfiguredTrackingGeometrySvc.py")
-    MyMuonHolesOnTrackToolTrackingGeometrySvc = ConfiguredTrackingGeometrySvc("MuonTrackingGeometrySvc","MuonTest",\
-                                                                            MyMuonHolesOnTrackToolGeometryBuilder)
-    #MyMuonHolesOnTrackToolTrackingGeometrySvc.buildGeometryAtStartup()  
-    MyMuonHolesOnTrackToolTrackingGeometrySvc.layerMaterialAssociationOff()  
-    MyMuonHolesOnTrackToolTrackingGeometrySvc.printInfo()
     
     # navigator
     include ( 'TrkExTools/ConfiguredNavigator.py' )
diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.cxx
index 347eafdb55956efa59a266121c0ed89bddd354db..b2ab2ba65af55b0da3f8f2aec79d541e90de09e1 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.cxx
@@ -37,7 +37,7 @@ namespace Muon {
         if (!m_trackingGeometryReadKey.empty()) {
             ATH_CHECK(m_trackingGeometryReadKey.initialize());
         } else {
-            ATH_CHECK(m_trackingGeometrySvc.retrieve());
+            ATH_MSG_ERROR("Could not retrieve a valid tracking geometry");
         }
         ATH_CHECK(m_fieldCacheCondObjInputKey.initialize());
 
diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.h b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.h
index 668fd468bd04c40c810b648416a8e2e3084814c0..439517ee45cfb8334d9e2e0dddc4d7cb07ade65d 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.h
+++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonTrackExtrapolationTool.h
@@ -12,7 +12,6 @@
 #include "MuonRecHelperTools/IMuonEDMHelperSvc.h"
 #include "MuonRecHelperTools/MuonEDMPrinterTool.h"
 #include "MuonRecToolInterfaces/IMuonTrackExtrapolationTool.h"
-#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h"
 #include "TrkExInterfaces/IExtrapolator.h"
 #include "TrkGeometry/TrackingGeometry.h"
 
@@ -73,8 +72,6 @@ namespace Muon {
         SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_fieldCacheCondObjInputKey{this, "AtlasFieldCacheCondObj", "fieldCondObj",
                                                                                   "Name of the Magnetic Field conditions object key"};
 
-        ServiceHandle<Trk::ITrackingGeometrySvc> m_trackingGeometrySvc{this, "TrackingGeometrySvc",
-                                                                       "TrackingGeometrySvc/AtlasTrackingGeometrySvc"};
         SG::ReadCondHandleKey<Trk::TrackingGeometry> m_trackingGeometryReadKey{this, "TrackingGeometryReadKey", "",
                                                                                "Key of input TrackingGeometry"};
         ServiceHandle<Muon::IMuonEDMHelperSvc> m_edmHelperSvc{this, "edmHelper", "Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
@@ -92,8 +89,6 @@ namespace Muon {
         Gaudi::Property<std::string> m_msEntranceName{this, "MuonSystemEntranceName", "MuonSpectrometerEntrance"};
 
         inline const Trk::TrackingVolume *getVolume(const std::string &vol_name, const EventContext& ctx) const {
-            /// Good old way of retrieving the volume via the geometry service
-            if (m_trackingGeometryReadKey.empty()) { return m_trackingGeometrySvc->trackingGeometry()->trackingVolume(vol_name); }
             SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
             if (!handle.isValid()) {
                 ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
diff --git a/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/RpcRawDataMonitoring/python/RpcMonitorAlgorithm.py b/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/RpcRawDataMonitoring/python/RpcMonitorAlgorithm.py
index ef6a6106b54abd302045143ef9074e4ee13f17a6..3883de8ea30073a431ac2b0ecaa5be65e4a336b9 100644
--- a/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/RpcRawDataMonitoring/python/RpcMonitorAlgorithm.py
+++ b/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/RpcRawDataMonitoring/python/RpcMonitorAlgorithm.py
@@ -427,10 +427,8 @@ if __name__=="__main__":
 
     from MagFieldServices.MagFieldServicesConfig import MagneticFieldSvcCfg
     from AtlasGeoModel.AtlasGeoModelConfig import AtlasGeometryCfg
-    from TrkConfig.AtlasTrackingGeometrySvcConfig import TrackingGeometrySvcCfg
     cfg.merge(MagneticFieldSvcCfg(ConfigFlags))
     cfg.merge(AtlasGeometryCfg(ConfigFlags))
-    cfg.merge(TrackingGeometrySvcCfg(ConfigFlags))
 
     if ConfigFlags.DQ.Steering.Muon.doTrackMon:
         # do not run in RAW->ESD
diff --git a/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/TgcRawDataMonitoring/python/TgcRawDataMonitorAlgorithm.py b/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/TgcRawDataMonitoring/python/TgcRawDataMonitorAlgorithm.py
index c00c89dd35a68daeef1ed5a8e27763f7b1664d54..68810636b894dc0546a96e8f51c231f6e2cdc740 100644
--- a/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/TgcRawDataMonitoring/python/TgcRawDataMonitorAlgorithm.py
+++ b/MuonSpectrometer/MuonValidation/MuonDQA/MuonRawDataMonitoring/TgcRawDataMonitoring/python/TgcRawDataMonitorAlgorithm.py
@@ -729,8 +729,6 @@ if __name__=='__main__':
     cfg.merge(MagneticFieldSvcCfg(ConfigFlags))
     from AtlasGeoModel.AtlasGeoModelConfig import AtlasGeometryCfg
     cfg.merge(AtlasGeometryCfg(ConfigFlags))
-    from TrkConfig.AtlasTrackingGeometrySvcConfig import TrackingGeometrySvcCfg
-    cfg.merge(TrackingGeometrySvcCfg(ConfigFlags))
     from TrigConfigSvc.TrigConfigSvcCfg import L1ConfigSvcCfg,generateL1Menu
     cfg.merge(L1ConfigSvcCfg(ConfigFlags))
     generateL1Menu(ConfigFlags)
diff --git a/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/CombinedMuonTrackBuilder.h b/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/CombinedMuonTrackBuilder.h
index 3fec5fd4a0afebac54e82fab3480d4aceddc3e41..e4442c36271d7a28f299997992b5627c95afa605 100755
--- a/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/CombinedMuonTrackBuilder.h
+++ b/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/CombinedMuonTrackBuilder.h
@@ -33,7 +33,6 @@
 #include "MuonRecToolInterfaces/IMuonHoleRecoveryTool.h"
 #include "MuonRecToolInterfaces/IMuonTrackCleaner.h"
 #include "StoreGate/ReadCondHandleKey.h"
-#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h"
 #include "TrkDetDescrInterfaces/ITrackingVolumesSvc.h"
 #include "TrkExInterfaces/IExtrapolator.h"
 #include "TrkExInterfaces/IIntersector.h"
@@ -263,8 +262,6 @@ namespace Rec {
         // Read handle for conditions object to get the field cache
         SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_fieldCacheCondObjInputKey{this, "AtlasFieldCacheCondObj", "fieldCondObj",
                                                                                   "Name of the Magnetic Field conditions object key"};
-        ServiceHandle<Trk::ITrackingGeometrySvc> m_trackingGeometrySvc{
-            this, "TrackingGeometrySvc", "TrackingGeometrySvc/AtlasTrackingGeometrySvc"};  // init with callback
 
         SG::ReadCondHandleKey<Trk::TrackingGeometry> m_trackingGeometryReadKey{this, "TrackingGeometryReadKey", "",
                                                                                "Key of the TrackingGeometry conditions data."};
diff --git a/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/MuonTrackQuery.h b/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/MuonTrackQuery.h
index 647990918a260beb0caf57d75c3eac05a76260db..3317357a790541d4229cfbe5f068c7bd7ff45236 100755
--- a/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/MuonTrackQuery.h
+++ b/Reconstruction/MuonIdentification/MuidTrackBuilder/MuidTrackBuilder/MuonTrackQuery.h
@@ -13,7 +13,6 @@
 #include "MuonRecHelperTools/IMuonEDMHelperSvc.h"
 #include "MuonRecToolInterfaces/IMdtDriftCircleOnTrackCreator.h"
 #include "StoreGate/ReadCondHandleKey.h"
-#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h"
 #include "TrkFitterInterfaces/ITrackFitter.h"
 #include "TrkGeometry/TrackingGeometry.h"
 namespace Rec {
@@ -112,23 +111,18 @@ namespace Rec {
         ToolHandle<Muon::IMdtDriftCircleOnTrackCreator> m_mdtRotCreator{
             this, "MdtRotCreator", "Muon::MdtDriftCircleOnTrackCreator/MdtDriftCircleOnTrackCreator", "MdtDriftCircleOnTrackCreator tool"};
 
-        ServiceHandle<Trk::ITrackingGeometrySvc> m_trackingGeometrySvc{this, "TrackingGeometrySvc",
-                                                                       "TrackingGeometrySvc/AtlasTrackingGeometrySvc"};
-
         SG::ReadCondHandleKey<Trk::TrackingGeometry> m_trackingGeometryReadKey{this, "TrackingGeometryReadKey", "",
                                                                                "Key of the TrackingGeometry conditions data."};
 
         inline const Trk::TrackingVolume* getVolume(const std::string&& vol_name, const EventContext& ctx) const {
             /// Tracking geometry is provided by the TrackingGeometryAlg
-            if (!m_trackingGeometryReadKey.empty()) {
-                SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
-                if (!handle.isValid()) {
-                    ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
-                    return nullptr;
-                }
-                return handle->trackingVolume(vol_name);
+            SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
+            if (!handle.isValid()) {
+                ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
+                return nullptr;
             }
-            return m_trackingGeometrySvc->trackingGeometry()->trackingVolume(vol_name);
+            return handle->trackingVolume(vol_name);
+            
         }
 
     };  // end of class MuonTrackQuery
diff --git a/Reconstruction/MuonIdentification/MuidTrackBuilder/src/CombinedMuonTrackBuilder.cxx b/Reconstruction/MuonIdentification/MuidTrackBuilder/src/CombinedMuonTrackBuilder.cxx
index 5dd92bf5a1cbe4d972ef71950d5df9d635c786f4..cad9e98a4fcc0764733802bf558e9f88cb8104ac 100755
--- a/Reconstruction/MuonIdentification/MuidTrackBuilder/src/CombinedMuonTrackBuilder.cxx
+++ b/Reconstruction/MuonIdentification/MuidTrackBuilder/src/CombinedMuonTrackBuilder.cxx
@@ -197,11 +197,10 @@ namespace Rec {
         ATH_CHECK(m_materialUpdator.retrieve());
         ATH_MSG_DEBUG("Retrieved tool " << m_materialUpdator);
 
-        if (m_trackingGeometryReadKey.empty()) {
-            ATH_CHECK(m_trackingGeometrySvc.retrieve());
-            ATH_MSG_DEBUG("Retrieved Svc " << m_trackingGeometrySvc);
-        } else {
+        if (!m_trackingGeometryReadKey.empty()) {
             ATH_CHECK(m_trackingGeometryReadKey.initialize());
+        } else {
+            ATH_MSG_ERROR("Could not retrieve a valid tracking geometry");
         }
         // need to know which TrackingVolume we are in: indet/calo/spectrometer
         ATH_CHECK(m_trackingVolumesSvc.retrieve());
@@ -3829,15 +3828,12 @@ namespace Rec {
 
     const Trk::TrackingVolume* CombinedMuonTrackBuilder::getVolume(const std::string&& vol_name, const EventContext& ctx) const {
         /// Tracking geometry is provided by the TrackingGeometryAlg
-        if (!m_trackingGeometryReadKey.empty()) {
-            SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
-            if (!handle.isValid()) {
-                ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
-                return nullptr;
-            }
-            return handle.cptr()->trackingVolume(vol_name);
+        SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
+        if (!handle.isValid()) {
+            ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
+            return nullptr;
         }
-        return m_trackingGeometrySvc->trackingGeometry()->trackingVolume(vol_name);
+        return handle.cptr()->trackingVolume(vol_name);
     }
     const AtlasFieldCacheCondObj* CombinedMuonTrackBuilder::getFieldCacheObj(const EventContext& ctx) const {
         SG::ReadCondHandle<AtlasFieldCacheCondObj> readHandle{m_fieldCacheCondObjInputKey, ctx};
diff --git a/Reconstruction/MuonIdentification/MuidTrackBuilder/src/MuonTrackQuery.cxx b/Reconstruction/MuonIdentification/MuidTrackBuilder/src/MuonTrackQuery.cxx
index b07b71e4dfaee8bbead3b8d2da3c8d41575733b6..32e60e7ccb2b6f8252c05db1f6814ecb78a7aa8c 100755
--- a/Reconstruction/MuonIdentification/MuidTrackBuilder/src/MuonTrackQuery.cxx
+++ b/Reconstruction/MuonIdentification/MuidTrackBuilder/src/MuonTrackQuery.cxx
@@ -69,7 +69,7 @@ namespace Rec {
         if (!m_trackingGeometryReadKey.empty()) {
             ATH_CHECK(m_trackingGeometryReadKey.initialize());
         } else {
-            ATH_CHECK(m_trackingGeometrySvc.retrieve());
+            ATH_MSG_ERROR("Could not retrieve a valid tracking geometry");
         }
         return StatusCode::SUCCESS;
     }
diff --git a/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/MuonCombinedFitTools.py b/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/MuonCombinedFitTools.py
index 70afda02d866de241ca1f96dfae09f84c8b8f818..56bc06eed7cd5855146b809a5c4305a3c5e14572 100644
--- a/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/MuonCombinedFitTools.py
+++ b/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/MuonCombinedFitTools.py
@@ -14,7 +14,7 @@
 from MuonRecExample.MuonRecFlags import muonRecFlags
 from MuonRecExample.MuonStandaloneFlags import muonStandaloneFlags
 from AthenaCommon import CfgMgr
-from AthenaCommon.CfgGetter import getPrivateTool, getPrivateToolClone, getPublicTool, getPublicToolClone, getService
+from AthenaCommon.CfgGetter import getPrivateTool, getPrivateToolClone, getPublicTool, getPublicToolClone
 from AthenaCommon.BeamFlags import jobproperties
 beamFlags = jobproperties.Beam
 from AthenaCommon.DetFlags import DetFlags 
@@ -35,7 +35,6 @@ def MuidMaterialAllocator( name='MuidMaterialAllocator', **kwargs):
     kwargs.setdefault("AggregateMaterial",True)
     kwargs.setdefault("AllowReordering",False)
     kwargs.setdefault("Extrapolator", getPublicTool('AtlasExtrapolator') )
-    kwargs.setdefault("TrackingGeometrySvc", getService("AtlasTrackingGeometrySvc") )
 
     cond_alg = TrackingCommon.createAndAddCondAlg(TrackingCommon.getTrackingGeometryCondAlg, "AtlasTrackingGeometryCondAlg", name="AtlasTrackingGeometryCondAlg")
     kwargs.setdefault("TrackingGeometryReadKey",cond_alg.TrackingGeometryWriteKey)
@@ -466,7 +465,6 @@ def MuonCombinedTrackFitter( name="MuonCombinedTrackFitter", **kwargs ):
     kwargs.setdefault("PropagatorTool"        , getPublicTool("MuonCombinedPropagator") )
     kwargs.setdefault("RotCreatorTool"        , getPublicTool("MuonRotCreator") )
     kwargs.setdefault("MeasurementUpdateTool" , getPublicTool("MuonMeasUpdator") )
-    kwargs.setdefault("TrackingGeometrySvc"   , getService("AtlasTrackingGeometrySvc") )
     kwargs.setdefault("ExtrapolatorMaterial"  , True )
     kwargs.setdefault("MuidTool"              , getPublicTool("MuidMaterialEffectsOnTrackProvider") )
     kwargs.setdefault("MuidToolParam"         , None )
@@ -482,7 +480,6 @@ def MuonCombinedTrackFitter( name="MuonCombinedTrackFitter", **kwargs ):
 
 def CombinedMuonTagTestTool( name='CombinedMuonTagTestTool', **kwargs ):
     kwargs.setdefault("ExtrapolatorTool",getPublicTool("AtlasExtrapolator") )
-    kwargs.setdefault("TrackingGeometrySvc",  getService("AtlasTrackingGeometrySvc") )
     kwargs.setdefault("Chi2Cut",50000.)
     cond_alg = TrackingCommon.createAndAddCondAlg(TrackingCommon.getTrackingGeometryCondAlg, "AtlasTrackingGeometryCondAlg", name="AtlasTrackingGeometryCondAlg")
     kwargs.setdefault("TrackingGeometryReadKey",cond_alg.TrackingGeometryWriteKey)
diff --git a/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.cxx b/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.cxx
index c076c454f21d7650bedd699b278840e12cdbe275..014231999d52a4eee6b39f4c0be5e36a62c480bf 100644
--- a/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.cxx
+++ b/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.cxx
@@ -37,11 +37,10 @@ namespace MuonCombined {
 
     StatusCode MuonTrackTagTestTool::initialize() {
         ATH_CHECK(m_extrapolator.retrieve());
-        if (m_trackingGeometryReadKey.empty()) {
-            ATH_CHECK(m_trackingGeometrySvc.retrieve());
-            ATH_MSG_INFO("  geometry Svc " << m_trackingGeometrySvc << " retrieved ");
-        } else {
+        if (!m_trackingGeometryReadKey.empty()) {
             ATH_CHECK(m_trackingGeometryReadKey.initialize());
+        } else {
+            ATH_MSG_ERROR("Could not retrieve a valid tracking geometry");
         }
 
         ATH_MSG_INFO("Initialized successfully");
diff --git a/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.h b/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.h
index 4893361adb109448b36830c38dc3e52bc03640d6..4ace040e2961b426a5c266cd9e687325d0e71a17 100644
--- a/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.h
+++ b/Reconstruction/MuonIdentification/MuonCombinedTestTools/src/MuonTrackTagTestTool.h
@@ -12,7 +12,6 @@
 #include "GaudiKernel/ToolHandle.h"
 #include "MuonCombinedToolInterfaces/IMuonTrackTagTool.h"
 #include "StoreGate/ReadCondHandleKey.h"
-#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h"
 #include "TrkExInterfaces/IExtrapolator.h"
 #include "TrkGeometry/TrackingGeometry.h"
 #include "TrkParameters/TrackParameters.h"
@@ -37,8 +36,6 @@ namespace MuonCombined {
         };
         SG::ReadCondHandleKey<Trk::TrackingGeometry> m_trackingGeometryReadKey{this, "TrackingGeometryReadKey", "",
                                                                                "Key of input TrackingGeometry"};
-        ServiceHandle<Trk::ITrackingGeometrySvc> m_trackingGeometrySvc{
-            this, "TrackingGeometrySvc", "AtlasTrackingGeometrySvc"};  // Services are assumed to be thread-safe
 
         // end LEGACY_TRKGEOM
 
@@ -48,15 +45,13 @@ namespace MuonCombined {
 #endif
         inline const Trk::TrackingVolume* getVolume(const std::string&& vol_name, const EventContext& ctx) const {
             /// Tracking geometry is provided by the TrackingGeometryAlg
-            if (!m_trackingGeometryReadKey.empty()) {
-                SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
-                if (!handle.isValid()) {
-                    ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
-                    return nullptr;
-                }
-                return handle.cptr()->trackingVolume(vol_name);
+            SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
+            if (!handle.isValid()) {
+                ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");
+                return nullptr;
             }
-            return m_trackingGeometrySvc->trackingGeometry()->trackingVolume(vol_name);
+            return handle.cptr()->trackingVolume(vol_name);
+            
         }
     };
 
diff --git a/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.cxx b/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.cxx
index 25d86d7bd8ce07747f634f71e4df95efe100fc43..3843c35626903f4b3e90289fb4a0c14b18a18bf1 100644
--- a/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.cxx
+++ b/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.cxx
@@ -105,7 +105,7 @@ StatusCode MuTagMatchingTool::initialize() {
     if (!m_trackingGeometryReadKey.empty()) {
         ATH_CHECK(m_trackingGeometryReadKey.initialize());
     } else {
-        ATH_CHECK(m_trackingGeometrySvc.retrieve());
+        ATH_MSG_ERROR("Could not retrieve a valid tracking geometry");
     }
 
     return StatusCode::SUCCESS;
diff --git a/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.h b/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.h
index c26f69e0e6f9c7b9b120020d0d1688b416029e8a..9d07b44b3ca5d8450058c247d91dc4e43fe16500 100644
--- a/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.h
+++ b/Reconstruction/MuonIdentification/MuonSegmentTaggers/MuonSegmentTaggerTools/src/MuTagMatchingTool.h
@@ -19,7 +19,6 @@
 #include "MuonSegmentMakerToolInterfaces/IMuonSegmentHitSummaryTool.h"
 #include "MuonSegmentMakerToolInterfaces/IMuonSegmentSelectionTool.h"
 #include "MuonSegmentTaggerToolInterfaces/IMuTagMatchingTool.h"
-#include "TrkDetDescrInterfaces/ITrackingGeometrySvc.h"
 #include "TrkExInterfaces/IExtrapolator.h"
 #include "TrkExInterfaces/IPropagator.h"
 #include "TrkGeometry/TrackingGeometry.h"
@@ -159,9 +158,6 @@ private:
         "Key of input MuonDetectorManager condition data",
     };
 
-    ServiceHandle<Trk::ITrackingGeometrySvc> m_trackingGeometrySvc{this, "TrackingGeometrySvc",
-                                                                   "TrackingGeometrySvc/AtlasTrackingGeometrySvc"};
-
     SG::ReadCondHandleKey<Trk::TrackingGeometry> m_trackingGeometryReadKey{this, "TrackingGeometryReadKey", "",
                                                                            "Key of input TrackingGeometry"};
 
@@ -193,8 +189,6 @@ private:
     double m_combinedPullCut;
 
     inline const Trk::TrackingVolume* getVolume(const EventContext& ctx, const std::string&& vol_name) const {
-        /// Good old way of retrieving the volume via the geometry service
-        if (m_trackingGeometryReadKey.empty()) { return m_trackingGeometrySvc->trackingGeometry()->trackingVolume(vol_name); }
         SG::ReadCondHandle<Trk::TrackingGeometry> handle(m_trackingGeometryReadKey, ctx);
         if (!handle.isValid()) {
             ATH_MSG_WARNING("Could not retrieve a valid tracking geometry");