Use tramp with Emacs and you can interact with remote machines as if they were local. Who cares if the server only has vim, you have Emacs.
vim scp://remoteuser@server.tld//absolute/path/to/document
:help netrw-start
I have yet to see something as powerful as tramp for this.