I sometimes get the error message:

TypeError: Cannot create a consistent method resolution
order (MRO) for bases …

I suggest that Python report
* cycles (if there are any), or
* a list of orderings of direct base classes (if there are no cycles).

A cycle for the base classes A, B, C, D can be reported as follows:

TypeError: Cannot create a consistent method resolution
order (MRO) because A inherits from B (through X, Y), but B inherits from A (through Z).

The topological sort could be reported as follows for base classes A, B, C, D:

TypeError: Cannot create a consistent method resolution
order (MRO) because B inherit from C (through X, Y), but B follows C in inheritance order.

It might be nice to have an exposed tool somewhere in the standard library that spits out for A, B, C, D:

A, B inherit from C (through X, Y)
C inherit from D (through Z)

Best,

Neil