From Shannon's Mathematical Theory of Communication (1949) we know that in an optimal code, the message length of an event E, MsgLen(E), where E has probability P(E), is given by MsgLen(E) = −log2(P(E)).
From Bayes' theorem we know that the probability of a hypothesis (H) given evidence (E) is proportional to P(E|H) P(H), which is just P(H & E). We want the model with the highest such probability.
Therefore, we want the model which generates the shortest description of the data! Since MsgLen (H & E) = −log2(P(H & E)), the most probable model will have the shortest such message. The message breaks into two parts: −log2(P(H & E)) = −log2(P(H)) + −log2(P(E|H)). The first is the length of the model, and the second is the length of the data, given the model.
So what? MML naturally and precisely trades model complexity for goodness of fit. A more complicated model takes longer to state (longer first part) but probably fits the data better (shorter second part). So an MML metric won't choose a complicated model unless that model pays for itself.
Key points about MML:
This article is a stub. You can help Wikipedia by fixing it.