For consistent quality VoIP, you generally need to be connected to a wired broadband connection. Using any type of mobile data 4G/3G will be a hit or miss proposition.
Though VoIP doesn't require much bandwidth, it does need a quality, consistent connection.
Mobile data tends to suffer from higher latency, or jitter which can cause interrupted or distorted conversations. Though MagicJack uses a high quality voice codec, it doesn't allow the user to configure custom VoIP settings. It's a set it, and forget appliance for simplicity sake.
You may be better off using a VoIP service such as CallCentric, and buy your own VoIP device that allows you to choose supported voice codecs, and set other custom settings. May offer better quality than using MJ, but setup can be intimidating if you haven't done so previously. Basically, if you've setup(admin) a router at some time, you shouldn't have too much difficulty.
BTW, there are some advantages of using a VoIP service. Such as setting your own caller ID phone number for outgoing calls. For instance, I have my CallCentric VoIP number set to display my Google Voice number when making calls. Not the phone number I was assigned, which I couldn't recall if ever asked. I'd have to look it up.
Still, I wouldn't expect to get the same VoIP call quality from mobile data, as I would from a wired broadband connection.