The main difference is that IP VPN is a point to point VPN. If you have 5 sites, they all have tunnels (two actually since they are unidirectional) to each other. So five sites = (5(5-1))2 or 40 unidirectional tunnels.
MPLS VPN is a multipoint technology by design. There are no tunnels, when site 1 needs to talk to site 2, it looks up the site in the routing table, adds a tag that is for that site, and send the packet to the next router