Hi,
I really don't think there' a built in method for doing this. Chances are you can get it from robotlist callback on hub with details turned up to 3. If not there, you'll have to go to the robot itself. That being said, I do have the same problem myself, people set the maintenance mode for a year or something of the sort. I think this is really bad practice and try to get people to stop doing it. As I'm building a new UIM environment, I have disabled the ability to use the Infrastructure Manager, or old, maintenance mode. It is kind of better than the new "USM" maintenance mode, but the new one does bring some good things with it, such as maintenance periods being saved in the database. If you migrated to use that as well, you could rather easily build a SQL query to keep an eye on the maintenance windows people define.
-jon