The lighting controller switches an IKEA USB lamp (or PWM dim it...)
There isn't a class-compliant protocol specific to this. This is a perfect candidate for an "HID Generic" device.
Though, honestly, these days I prefer doing vendor class, instead of HID class, for these sorts of devices (as we were discussing in your USB MCU thread). Vendor class gets you access to bulk IO (which is exactly the sort of transfer you want for your device), and works well across operating systems.
Which host operating systems do you have to support? You mentioned KVM, so I assume there's multiple.
HID in Linux is a little clunkier than vendor classes, as you have to load udev rules for assigning the "hidraw" driver to the device, otherwise the kernel gobbles it up, if I remember correctly. Vendor-class devices can be opened directly by LibUSB (only subject to typical device permission issues... bah).
In Windows, it's the other way around: HID devices will instantiate without issues, but vendor-class devices need drivers. The best way is to add the WinUSB descriptors to the firmware to get WinUSB.sys to load without having to screw around with INFs / code signing certificates (though it's really not the end of the world to self-sign a certificate for use on your local machine, and programs like Zadig will do this whole process for you).
In macOS, IOKit is fairly easy to make work with either device class.
While both HID Generic and Vendor-class devices let you send and receive arrays of bytes up through userspace, they have very different APIs across the operating systems, so you may want to do a bit of research before committing!