MC makes regular backups but you have no control over it. It does some housecleaning as well and removes backups it deems old, although I don't tihnk that happens as agressively as it used to.
MC automatically backs the Library up essentially every day. However, this only happens at launch/shutdown, so it doesn't happen as reliably if you run a Media Server (which is when you'd think having those backups is the most essential). The problem is that MC is, you know, pretty stable. Mine generally only updates when: (a) Windows updates make my PC reboot, or (b) I install new builds of MC.
Luckily, I do (b) all the time, so it isn't an issue.
However... I agree completely. I want to add a "backup before processing" feature to my FileIngester addin. There is already a MCC command that triggers the Backup Library process, it just prompts you for a Save As location.
All we need is a parameter for this command that causes it to work in "silent mode", and auto-saves to the current directory specified in:
Options > File Location > Program Files > Library backups
If you want them filed (and stored) using a more complex scheme than MC does by default, you can always just move them via a script after they're created there. Though, honestly, MC is pretty conservative with the backup rotation cycle (it keeps monthly versions for about a year back, and every version within the past 30 days or so). For most people, this would be enough.