So why doesn't LDP LSPs need "protocols mpls" configured?
An L3VPN will actually exchange labels without both protocols mpls and family mpls. Configuring family mpls is only a requirement for sginaling LSPs. Of course without valid LSPs, the VPN IPv4 prefixes become hidden but the label exchange still occurs.