I think where it's lacking is the last equality:
$$M_B(\varphi^k) \cdot M_B(\varphi) = M_B(\varphi^{k+1}).$$
Every other step follows from associativity of matrix multiplication and composition of endomorphisms. At no other point do you use/claim any specific properties of the $M_B$ map. This is the step that tests your understanding of the $M_B$ map: what it means, how it's used, and what properties you've proven about it.
Now, how do you justify this step? It may be as simple as referring to a result proven previously in your course. It may look something like this:
Suppose $V_1, V_2, V_3$ are vector spaces over the same field, $B_1, B_2, B_3$ are respective bases for these spaces, and $T : V_1 \to V_2$ and $S : V_2 \to V_3$ are linear. Then,
$$M_{B_1}^{B_3}(ST) = M_{B_2}^{B_3}(S)M_{B_1}^{B_2}(T).$$
(Here $M_{B_1}^{B_2}(T)$ refers to the matrix for the linear transformation $T$, from basis $B_1$, to basis $B_2$. I find that there's a lot of variety in how these matrices are notated, so the notation might not be the same for you.)
Applying this result is easy enough. Just take $V_1 = V_2 = V_3 = V$, $B_1 = B_2 = B_3 = B$, $S = \varphi^k$, and $T = \varphi$. Recall that $M_B$ is shorthand for $M_B^B$.
If you don't have access to the above result, then you'll have to prove the step manually, using the definition of $M_B$. Recall that, by definition,
$$M_B(\psi) = \left(\begin{array}{c|c}
& & & \\
[\psi(b_1)]_B & [\psi(b_2)]_B & \cdots & [\psi(b_n)]_B \\
& & &
\end{array}\right),$$
i.e. the matrix whose columns are the coordinate column vectors of $\psi(b_1), \psi(b_2), \ldots, \psi(b_n)$ with respect to $B$. Now, here's a result you probably do have access to:
If $\psi : V_1 \to V_2$ is linear, and $B_1, B_2$ are bases for $V_1, V_2$ respectively, then for all $v \in V_1$,
$$[\psi(v)]_{B_2} = M_{B_1}^{B_2}(\psi) \cdot [v]_{B_1}. \tag{$\star$}$$
In fact, $(\star)$ characterises the matrix $M_{B_1}^{B_2}(\psi)$, and the unqique matrix satisfying $(\star)$ for all $v \in V_1$ is, in my mind, the most natural definition of $M_{B_1}^{B_2}(\psi)$.
So, we can use this to show $M_B(\varphi^k) \cdot M_B(\varphi) = M_B(\varphi^{k+1})$. To compute $M(\varphi^{k+1})$, we must first compute $[\varphi^{k+1} b_i]_B$ for $i = 1, \ldots, n$. Using the above result, we get
\begin{align*}
[\varphi^{k+1} b_i]_B &= [\varphi^k(\varphi(b_i))]_B \\
&= M_B(\varphi^k)[\varphi(b_i)]_B \\
&= M_B(\varphi^k) M_B(\varphi)[b_i]_B \\
&= M_B(\varphi^k) M_B(\varphi)e_i,
\end{align*}
where $e_i$ is the $i$th standard vector, since
$$b_i = 0b_1 + 0b_2 + \ldots + 0b_{i-1} + 1b_i + 0 b_{i+1} + \ldots + 0b_n.$$
But, multiplying a matrix (such as $M_B(\varphi^k) M_B(\varphi)$) by $e_i$ simply returns the $i$th column of such a matrix. By definition, the above vector is also the $i$th column of $M_B(\varphi^{k+1})$, hence
$$M_B(\varphi^k) M_B(\varphi) = M_B(\varphi^{k+1})$$
as all their columns are equal in this way.