With MPI we have a huge feature coming to cmdstan. I don’t quite see how this will be easy to integrate with our other interfaces which have a tight integration with stan such as rstan and pystan. However, a simple and straightforward approach could be to add to rstan/pystan functions which essentially call the cmdstan version and then import the results.
Does that sound sensible? Those wrappers do not need to support all options, but the most important ones. This would allow rstan/pystan to easily take advantage of MPI.
BTW, running from R the cmdstan version is what I do all the time for large runs which are crunched on our cluster. Later post-processing is then done in R, of course.