If you build a buggy app and the clients proxy through your server, MTA can just block you if it starts causing problems. If you are hitting them directly it’s much more difficult for them to block the traffic if there’s an issue or your app just gets wildly popular. I wouldn’t be surprised if they already had IP-based limits they are metering as well.
As far as the the browser goes I’m not sure it’s even possible to use it from there unless they have configured CORS, which likely they wouldn’t since they want you to proxy.
I’m just wondering why we aren’t allowed to make requests to the MTA from the client side (user side). Shouldn’t it be better for performance and save money if there is no server in between?