diff --git a/pid/zone.cpp b/pid/zone.cpp
index a8c388a..995b2aa 100644
--- a/pid/zone.cpp
+++ b/pid/zone.cpp
@@ -516,4 +516,9 @@
     _pidsFailSafePercent[name] = percent;
 }
 
+std::string DbusPidZone::leader() const
+{
+    return _maximumSetPointName;
+}
+
 } // namespace pid_control
diff --git a/pid/zone.hpp b/pid/zone.hpp
index 53d90fd..85a9064 100644
--- a/pid/zone.hpp
+++ b/pid/zone.hpp
@@ -11,6 +11,7 @@
 #include <sdbusplus/bus.hpp>
 #include <sdbusplus/server.hpp>
 #include <xyz/openbmc_project/Control/Mode/server.hpp>
+#include <xyz/openbmc_project/Debug/Pid/Zone/server.hpp>
 #include <xyz/openbmc_project/Object/Enable/server.hpp>
 
 #include <fstream>
@@ -24,7 +25,9 @@
 template <typename... T>
 using ServerObject = typename sdbusplus::server::object_t<T...>;
 using ModeInterface = sdbusplus::xyz::openbmc_project::Control::server::Mode;
-using ModeObject = ServerObject<ModeInterface>;
+using DebugZoneInterface =
+    sdbusplus::xyz::openbmc_project::Debug::Pid::server::Zone;
+using ModeObject = ServerObject<ModeInterface, DebugZoneInterface>;
 using ProcessInterface =
     sdbusplus::xyz::openbmc_project::Object::server::Enable;
 using ProcessObject = ServerObject<ProcessInterface>;
@@ -102,6 +105,8 @@
     bool manual(bool value) override;
     /* Method for reading whether in fail-safe mode over dbus */
     bool failSafe() const override;
+    /* Method for recording the maximum SetPoint PID config name */
+    std::string leader() const override;
     /* Method for control process for each loop at runtime */
     void addPidControlProcess(std::string name, sdbusplus::bus_t& bus,
                               std::string objPath, bool defer);
diff --git a/test/pid_zone_unittest.cpp b/test/pid_zone_unittest.cpp
index 8c55a70..391d026 100644
--- a/test/pid_zone_unittest.cpp
+++ b/test/pid_zone_unittest.cpp
@@ -26,6 +26,7 @@
 using ::testing::StrEq;
 
 static std::string modeInterface = "xyz.openbmc_project.Control.Mode";
+static std::string debugZoneInterface = "xyz.openbmc_project.Debug.Pid.Zone";
 static std::string enableInterface = "xyz.openbmc_project.Object.Enable";
 
 namespace
@@ -60,6 +61,8 @@
     std::vector<std::string> properties;
     SetupDbusObject(&sdbus_mock_mode, defer, objPath, modeInterface, properties,
                     &d);
+    SetupDbusObject(&sdbus_mock_mode, defer, objPath, debugZoneInterface,
+                    properties, &d);
 
     std::string sensorname = "temp1";
     std::string pidsensorpath = "/xyz/openbmc_project/settings/fanctrl/zone1/" +
@@ -100,6 +103,8 @@
 
         SetupDbusObject(&sdbus_mock_mode, defer, objPath, modeInterface,
                         properties, &property_index);
+        SetupDbusObject(&sdbus_mock_mode, defer, objPath, debugZoneInterface,
+                        properties, &property_index);
 
         SetupDbusObject(&sdbus_mock_enable, defer, pidsensorpath.c_str(),
                         enableInterface, propertiesenable,
