Для начала, MVC чисто UI-ая архитектура. Об этом как-то скучно, но если интересно почитайте про
action-domain-responder
мы рассматриваем архитектуру клиент серверного приложения. У нас есть клиент (то что отдается браузеру + сам браузер) и сервер (то что обрабатывает запросы). С этой точки зрения как не посмотри у нас и там и там - два приложения. Разница может быть только в том, насколько они связаны.
Классический случай клиент-серверной архитектуры - single page application. С точки зрения WEB же частенько у нас клиента как такового почти и нет, почти всю роль клиента забирает браузер а на JS написаны разного рода украшательства и свистоперделки. Короче клиент и сервер сильно перемешаны (то есть сервер слишком много знает о клиенте).
На клиенте MVC позволяет из view работать с моделью через контроллер, который является эдаким промежуточным слоем, который разделяет view и model между собой. На сервере же, такой подход не жизнеспособен в большинстве случаев. Там поток данных идет строго вниз, запрос -> контроллер -> получение данных в контроллере (из сервисов или еще как) -> формирование представления данных (шаблонизация, сериализация, что угодно) -> отправка ответа. То есть из view возвращаться обратно в контроллер уже не хорошо, у него уже должно быть все что ему нужно, а всякие хелперы и утилиты - часть presentation layer. Иногда это неудобно и спасает HMVC, когда из view layer мы можем инициализировать запрос на другой контроллер, и тогда мы как бы не нарушаем цепочку и вроде как удобно.
Теперь к сути проблемы, а именно AJAX запрос. Запрос производится клиентом (как бы он небыл связан с сервером), то есть это никакого отношения к архитектуре сервера не имеет. То есть инициализируется все та же цепочка действий, формирование требуемого представления данных и отправка их на клиент. По сути как только мы отдали респонс с сервера, будь там что угодно, все что происходит с ним после, на клиенте, нас уже не сильно волнует.