Why is mRNA needed in the Protein translation?
One reason is that an intermediate like mRNA allows for higher amounts of protein expression. You can have multiple mRNA molecules that are translated simultaneously. If you read directly from DNA you can have at most two translations in parallel.

I'm not sure about this, but I would imagine that having to unwind the DNA double strand every time for translation could be a drawback to directly reading from DNA as well. The mRNA is also subject to various forms of regulation, which might be an advantage as well for the added intermediary.