diff --git a/libpldmresponder/base.cpp b/libpldmresponder/base.cpp
index 6f97bdf..f72e8dc 100644
--- a/libpldmresponder/base.cpp
+++ b/libpldmresponder/base.cpp
@@ -12,6 +12,11 @@
 #include "libpldm/fru.h"
 #include "libpldm/platform.h"
 
+#ifdef OEM_IBM
+#include "libpldm/file_io.h"
+#include "libpldm/host.h"
+#endif
+
 namespace pldm
 {
 
@@ -31,14 +36,25 @@
      {PLDM_GET_DATE_TIME, PLDM_SET_DATE_TIME, PLDM_GET_BIOS_TABLE,
       PLDM_GET_BIOS_ATTRIBUTE_CURRENT_VALUE_BY_HANDLE,
       PLDM_SET_BIOS_ATTRIBUTE_CURRENT_VALUE}},
-    {PLDM_FRU,
-     {PLDM_GET_FRU_RECORD_TABLE_METADATA, PLDM_GET_FRU_RECORD_TABLE}}};
+    {PLDM_FRU, {PLDM_GET_FRU_RECORD_TABLE_METADATA, PLDM_GET_FRU_RECORD_TABLE}},
+#ifdef OEM_IBM
+    {PLDM_OEM,
+     {PLDM_HOST_GET_ALERT_STATUS, PLDM_GET_FILE_TABLE, PLDM_READ_FILE,
+      PLDM_WRITE_FILE, PLDM_READ_FILE_INTO_MEMORY, PLDM_WRITE_FILE_FROM_MEMORY,
+      PLDM_READ_FILE_BY_TYPE_INTO_MEMORY, PLDM_WRITE_FILE_BY_TYPE_FROM_MEMORY,
+      PLDM_NEW_FILE_AVAILABLE, PLDM_READ_FILE_BY_TYPE, PLDM_WRITE_FILE_BY_TYPE,
+      PLDM_FILE_ACK}},
+#endif
+};
 
 static const std::map<Type, ver32_t> versions{
     {PLDM_BASE, {0xF1, 0xF0, 0xF0, 0x00}},
     {PLDM_PLATFORM, {0xF1, 0xF2, 0xF0, 0x00}},
     {PLDM_BIOS, {0xF1, 0xF0, 0xF0, 0x00}},
     {PLDM_FRU, {0xF1, 0xF0, 0xF0, 0x00}},
+#ifdef OEM_IBM
+    {PLDM_OEM, {0xF1, 0xF0, 0xF0, 0x00}},
+#endif
 };
 
 namespace base
diff --git a/tool/pldm_base_cmd.cpp b/tool/pldm_base_cmd.cpp
index 7edc33c..c0801a0 100644
--- a/tool/pldm_base_cmd.cpp
+++ b/tool/pldm_base_cmd.cpp
@@ -4,6 +4,11 @@
 
 #include "libpldm/utils.h"
 
+#ifdef OEM_IBM
+#include "libpldm/file_io.h"
+#include "libpldm/host.h"
+#endif
+
 namespace pldmtool
 {
 
@@ -17,8 +22,11 @@
 
 std::vector<std::unique_ptr<CommandInterface>> commands;
 const std::map<const char*, pldm_supported_types> pldmTypes{
-    {"base", PLDM_BASE}, {"platform", PLDM_PLATFORM}, {"bios", PLDM_BIOS},
-    {"fru", PLDM_FRU},   {"oem", PLDM_OEM},
+    {"base", PLDM_BASE},   {"platform", PLDM_PLATFORM},
+    {"bios", PLDM_BIOS},   {"fru", PLDM_FRU},
+#ifdef OEM_IBM
+    {"oem-ibm", PLDM_OEM},
+#endif
 };
 
 const std::map<const char*, pldm_supported_commands> pldmBaseCmds{
@@ -44,6 +52,24 @@
     {"GetFRURecordTableMetadata", PLDM_GET_FRU_RECORD_TABLE_METADATA},
     {"GetFRURecordTable", PLDM_GET_FRU_RECORD_TABLE}};
 
+#ifdef OEM_IBM
+const std::map<const char*, pldm_host_commands> pldmIBMHostCmds{
+    {"GetAlertStatus", PLDM_HOST_GET_ALERT_STATUS}};
+
+const std::map<const char*, pldm_fileio_commands> pldmIBMFileIOCmds{
+    {"GetFileTable", PLDM_GET_FILE_TABLE},
+    {"ReadFile", PLDM_READ_FILE},
+    {"WriteFile", PLDM_WRITE_FILE},
+    {"ReadFileInToMemory", PLDM_READ_FILE_INTO_MEMORY},
+    {"WriteFileFromMemory", PLDM_WRITE_FILE_FROM_MEMORY},
+    {"ReadFileByTypeIntoMemory", PLDM_READ_FILE_BY_TYPE_INTO_MEMORY},
+    {"WriteFileByTypeFromMemory", PLDM_WRITE_FILE_BY_TYPE_FROM_MEMORY},
+    {"NewFileAvailable", PLDM_NEW_FILE_AVAILABLE},
+    {"ReadFileByType", PLDM_READ_FILE_BY_TYPE},
+    {"WriteFileByType", PLDM_WRITE_FILE_BY_TYPE},
+    {"FileAck", PLDM_FILE_ACK}};
+#endif
+
 } // namespace
 
 class GetPLDMTypes : public CommandInterface
@@ -287,6 +313,10 @@
                     case PLDM_FRU:
                         printCommand(pldmFruCmds, i);
                         break;
+                    case PLDM_OEM:
+                        printCommand(pldmIBMHostCmds, i);
+                        printCommand(pldmIBMFileIOCmds, i);
+                        break;
                     default:
                         break;
                 }
