Finding the least possible order of a stable Unknown-Input Functional Observer (UIFO) has always been a challenge in observer design theory. A practical recursive algorithm is proposed in this technical note to design a minimal multi-functional observer for multi-input multi-output (MIMO) linear time-invariant (LTI) systems with unknown-inputs. The concept of unknown-input functional observability is introduced, and it is used as a certificate of the convergence of our algorithm. The proposed procedure looks for a number of additional auxiliary functions to be augmented to the original functions desired for reconstruction. The resulting UIFO is proper, and minimal (of minimum possible order). Moreover, the algorithm does not need the system to be unknown-input observable. A numerical example shows the procedure as well as the effectiveness of the proposed algorithm.Keywords: Unknown-input functional observers, functional observability, invariant zeros and transmission zeros, null space and range space