Inset by Smoothing Group
As the mcg installation process was pretty convoluted, I decided to redo the InsetBySmoothingGroup modifier in maxscript - the speed is the same and you don't have to care about different versions of max behaving different, connecting disconnected nodes and all that stuff. Now it's just one .ms file, and there's no vertex weld needed either.
So after installing it, you will get a pair of modifiers, the InsetBySmoothingGroup modifier will inset mesh polygon groups by their smoothing groups, which helps to keep flat surfaces flat smoothed when chamfered instead of the usual mess. Keep in mind that for it to work, the smoothing groups should not be shared, i.e. no polygons that have both smoothing group 1, 2 etc. set.
The InsetChamferStack scripted modifier automates the process of using the InsetBySmoothingGroupmodifier with a Chamfer modifier for a quick and clean rounded edges effect. You can see it in action in the gif above. There is also InsetQuadChamferStack for those who want to use the Quad Chamfer modifier by Marius Silaghi instead, and InsetFixChamferStack which uses a different way of insetting trying to avoid diagonal edges on corners.
Installation: Copy the .ms file to your scripts\startup folder or run as a script if you only want to try it out. If you want to be able to use it from the modifier sets panel, place the .ms file instead inside the stdplugs/stdscripts folder in the 3ds max root folder.
Upon running, the modifier will be available in the modifier stack.
And if you put it inside the stdscripts folder before evaluating it, you can add it to a modifier set for easier accessibility.
Known Issues: If the chamfer amount doesn't seem to do anything or collapses unwanted verts, bump it up or lower it down to compensate for it. Apparently, in max 2016 it's not guaranteed that the script/mcg graph will work. If in doubt, ensure that you have SP3 installed and try it. See comments below for further details.