I'm not dogmatic about MVC (or any similar acronym), but I think MVC serves as a good reminder to (follow the more agreed upon maxim to) separate your concerns. Your application logic, data, and presentation layers need not be intertwined.
Best practices always have the hidden assumption that going deal with the same situations as 99/100 cases. But, clearly that’s not always true, so you need to keep in mind the reasoning behind them.