Multi-degree splines are piecewise polynomial functions having sections of different degrees. They offer significant advantages over the classical uniform-degree framework, as they allow for modeling complex geometries with fewer degrees of freedom and, at the same time, for a more efficient engineering analysis. Moreover they possess a set of basis functions with similar properties to standard B-splines. In this paper we develop an algorithm for efficient evaluation of multi-degree B-splines, which, unlike previous approaches, is numerically stable. The proposed method consists in explicitly constructing a mapping between a known basis and the multi degree B-spline basis of the space of interest, exploiting the fact that the two bases are related by a sequence of knot insertion and/or degree elevation steps and performing only numerically stable operations. In addition to theoretically justifying the stability of the algorithm, we will illustrate its performance through numerical experiments that will serve us to demonstrate its excellent behavior in comparison with existing methods, which, in some cases, suffer from apparent numerical problems.