https://phpdelusions.net/articles/mvc
No kidding, this is a real good test for your controllers. Just try to create a command line interface for creating the new user and see, whether you will need any code borrowed from the controller. If so -your Controller is fat and this code should be moved into the model.
…
So in a nutshell, your Model should be able to perform any task your application is supposed to do, no matter through which interface it is called.
bonus
nice explination about paths