Shifts of finite type and the notion of shadowing, or pseudo-orbit tracing, are powerful tools in the study of dynamical systems. In this paper we prove that there is a deep and fundamental relationship between these two concepts. Let X be a compact totally disconnected space and f : X → X a continuous map. We demonstrate that f has shadowing if and only if the system (f, X) is (conjugate to) the inverse limit of a directed system satisfying the Mittag-Leffler condition and consisting of shifts of finite type. In particular, this implies that, in the case that X is the Cantor set, f has shadowing if and only if (f, X) is the inverse limit of a sequence satisfying the Mittag-Leffler condition and consisting of shifts of finite type. Moreover, in the general compact metric case, where X is not necessarily totally disconnected, we prove that f has shadowing if (f, X) is a factor of the inverse limit of a sequence satisfying the Mittag-Leffler condition and consisting of shifts of finite type by a quotient that almost lifts pseudo-orbits.