what is the role of IGP in MPLS network to route the customer traffic or to make the reachability
IGP in an MPLS network advertises the internal topology. It provides connectivity for MP-BGP inside the network. The routing table in every router is also used by LDP to generate labels for every route.
The IGP caries no customer routes. That is handled by MP-BGP.
An IGP exchanges routing prefixes between gateways/routers. Common examples are OSPF, IS-IS, EIGRP, or (aged) RIP.
Without a routing protocol, you'd have to configure each route on every router (static routing) and you'd have no dynamic updates when routes change because of link failures.
There's no direct connection with MPLS, but the latter usually connects remote networks and you need some way to make the remote routes known to each side.
The role is primarily to ensure reachability between the PE Routers loopbacks.
As stated, no customer routes are stored in the internal IGP. MPLS LDP uses the internal IGP routes to the Loopbacks to create Labels (Transport Labels) for the Label Switching between PEs for the MP-BGP next-hop address of the customer routes. The next-hop would be the loopback of the PE exporting the route into MP-BGP from the customer VRF.