According to MikroTik documentaion, the BGP best path selection algorithm does not take the IGP shortest path to the next hop into account:
https://wiki.mikrotik.com/wiki/Manual:BGP_Best_Path_Selection_Algorithm
Is this a documentation error or does it reflect the actual implementation in RouterOS?
If it would reflect the implementation on RouterOS, you could not use Mikrotik MPLS and iBGP in all topologies which have multiple BGP paths (multiple BGP next hops) for a given destination prefix. RouterOS would select one of the routes ignoring any differing IGP metrics. This would result in suboptimal routing path selection within RouterOS based MPLS or iBGP clouds.
Furthermore, it would also not be in compliance with RFC4271 (A Border Gateway Protocol 4)
https://tools.ietf.org/html/rfc4271
9.1.2.2. Breaking Ties (Phase 2)
In its Adj-RIBs-In, a BGP speaker may have several routes to the same
destination that have the same degree of preference. The local
speaker can select only one of these routes for inclusion in the
associated Loc-RIB. (…)e) Remove from consideration any routes with less-preferred
interior cost. The interior cost of a route is determined by
calculating the metric to the NEXT_HOP for the route using the
Routing Table.