Are direct mechanisms always truthful? I am very new to mechanism design so I am a bit lost among the concepts, even the most basic ones. 

One thing that is not clear to me is the concept of direct mechanism and its relationship with the revelation principle. 

From what I got a direct mechanism is a mechanisms, in which, instead of messages, the agents report their preference/type. Are we assuming this is a truthful report?

I am asking that because the revelation principle is stated as "anything that can be accomplished by any mechanism can actually be accomplished by a direct revelation mechanism that is individual rational and incentive compatible" in this notes but as "a social choice function can be implemented by an arbitrary mechanism (i.e. if that mechanism has an equilibrium outcome that corresponds to the outcome of the social choice function), then the same function can be implemented by an incentive-compatible-direct-mechanism (i.e. in which players truthfully report type) with the same equilibrium outcome (payoffs)." on Wikipedia. 

So I don't get if truthfulness is implied by the direct mechanism or if it is an additional requirement.
Incentive compatible here means that you have no incentive to lie. A direct mechanism that is not incentive compatible would entice some agents to report a false type.