Я делаю так: создаю статичный шаблон (напр., 'AJAX'), файл шаблона указываю ajax.php. Далее создаю пустой НЕКЕШИРУЕМЫЙ документ и его шаблоном задаю 'AJAX'. При обращении к этому документу происходит инициализация и MODX, и modxsmarty, и всего остального. И в самом ajax.php остается только прописать нужный код, без инициализации самого MODX в этом файле. Все работает.