Yes, you can run meteor simply by calling the meteor
CLI in your source folder, but there are SEVERAL things that actually building and deploying does.
First, running in "development mode" causes the code to constantly look for changes in the code to redeploy. This takes up resources...resources that cost real money when deployed on something like AWS or other cloud services, not to mention it takes resources away from doing real work.
On top of that, the build is optimizing the code, running minimizers, transpilers, etc. This is done real-time when running in dev mode, which again takes up resources.
Finally, dev mode runs an internal MongoDB, as apposed to a full MongoDB install. The full install will, as far as I am aware, outperform the "embedded" version, plus it allows you to run it on a separate server, which again frees resources.
Performance aside, automated build and deploy is preferred over manual copy/paste. Any time a human has to manually setup something, it is BOUND to fail at some point. We are not good at repetitive tasks over the long haul. In my 17+yrs as a professional developer I have been part of MANY installs, both in production and non-production. I can tell you that the automated installs were WAY less likely to fail over time over the meat-installs (installs that require a person to actually do them). We tend to not do the same steps over and over, and as a result things are different each time.
In my personal Meteor development I have even taken to using automated Continuous Integration servers to do ALL my deployments, both for Dev and Prod. I setup the scripts one time, point my CI server to my repo, and it monitors it for changes. When I update code and push to my GIT repo...BOOM! CI server takes over, pulls the new code down, builds it, tests it, and if all looks good deploys it. MUP has been instrumental in getting that process automated since it handles a LOT of the heavy lifting. And if anything fails in the build or deploy, I get an email notification and simply go peruse the logs to see what happened. I use the latest experimental MUP build that deploys via Docker images, which is nice because now I can add servers easy-peasy to my cluster at any time.
And since I already figured out how to automate one project via MUP and Jenkins (my CI server), it's mostly copy/paste and update some configs for my other projects.