My thinking was more along @scottalanmiller's this time... But like everything "it depends" on what the server does. For a File Server, or an application server (Exchange, et al) that we previously mentioned, to me an agent would make more sense.
However, I thought that restoring to different hardware was actually a function of the restore process, and not necessarily part of the backup process. (I guess it depends on what backup software we are talking about).
Your first, and thus main, backup should always be the entire VM for anything.
If you then need some of the features a backup from inside the OS gives you, then make secondary backups there.
Veeam can be made application aware and issue commands inside the guest to ensure the specified application is in a state for a valid recovery. I would assume that Unitrends has similar functionality, but no idea.