Seems like everyday I have to SSH into our SME server and issue a "hg serve" command so that we can push/pull from/to it. Is there anyway for the mercurial server to stay on? I dont even know whats turning it off as the actual server is always on.
It's probably a good idea to set up a more robust mechanism for serving your repositories.
Mercurial includes a nice little CGI (as well as WSGI, which is cleaner and faster) script that you can serve with a production-capable web server which provides both a web interface and an HTTPS endpoint for push/pull.
See here for the setup documentation.