We need both MAC and Ip addresses because of Routing.
Suppose there are 2 systems in 2 different local networks, System A with Ip address iA and Mac address mA, and System B with Ip address iB and Mac address mB.
Case 1:-
(Since private Ip addresses are unique locally) It is possible that both A and B have the same Ip address.
In this case, while routing router will first check Data-link layer where it will see the same IP address and then it will be passed to physical layer and here both the mac address will be unique, so there will be no ambiguity.
Case 2:-
Let, a host from the same device is running more than one process at the same time. In this case, the Mac address is the same mA=mB. But each process in the same network will have a different Ip address, so iA and iB will never be same, so in this case, Ip will reduce the ambiguity.
hope it helps