diff --git a/cfg_checker/common/kube_utils.py b/cfg_checker/common/kube_utils.py
index e6b9922..36efcaa 100644
--- a/cfg_checker/common/kube_utils.py
+++ b/cfg_checker/common/kube_utils.py
@@ -295,6 +295,24 @@
                 w.stop()
                 return
 
+    def get_k0rdent_release(self, mgmt_name="kcm"):
+        group = "k0rdent.mirantis.com"
+        version = "v1beta1"
+        plural = "managements"
+
+        try:
+            mgmt_list = self.get_custom_resource(group, version, plural) or {}
+            for item in mgmt_list.get("items", []):
+                name = item.get("metadata", {}).get("name", "").lower()
+                if name == mgmt_name.lower():
+                    return item.get("status", {}).get("release", "Unknown")
+            logger.warning(
+                f"Management object '{mgmt_name}' not found in CR list.")
+        except Exception as e:
+            logger.warning(
+                f"Failed to get the k0rdent release from the '{mgmt_name}' mgmt CRD: {e}")
+        return "Unknown"
+
     def get_node_info(self, http=False):
         # Query API for the nodes and do some presorting
         _nodes = {}
diff --git a/cfg_checker/modules/network/checker.py b/cfg_checker/modules/network/checker.py
index ee28e25..b212845 100644
--- a/cfg_checker/modules/network/checker.py
+++ b/cfg_checker/modules/network/checker.py
@@ -114,8 +114,7 @@
                 "domain": self.mapper.domain,
                 "nodes": self.mapper.nodes,
                 "map": self.mapper.map,
-                "mcp_release": self.mapper.cluster['mcp_release'],
-                "openstack_release": self.mapper.cluster['openstack_release']
+                "k0rdent_release": self.mapper.cluster['k0rdent_release']
             }
         )
         logger_cli.info("-> Done")
diff --git a/cfg_checker/nodes.py b/cfg_checker/nodes.py
index 7da09f4..eb2ebd8 100644
--- a/cfg_checker/nodes.py
+++ b/cfg_checker/nodes.py
@@ -101,8 +101,9 @@
 
     def get_info(self):
         _info = {
-           'mcp_release': self.mcp_release,
-           'openstack_release': self.openstack_release
+            'mcp_release': self.mcp_release,
+            'openstack_release': self.openstack_release,
+            'k0rdent_release': self.kube.get_k0rdent_release()
         }
         return _info
 
@@ -541,6 +542,11 @@
             _source
         )
 
+    def get_k0rdent_release(self):
+        logger_cli.debug("... get k0rdent release")
+        self.k0rdent_release = self.kube.get_k0rdent_release()
+        return self.k0rdent_release
+
     def gather_node_info(self, skip_list, skip_list_file):
         # Gather nodes info and query pod lists for each node
         logger_cli.debug("... collecting node names existing in the cloud")
