We propose a systematic approach to mechanism design with strategic agents whilst considering three important engineering aspects; (i) complexity of messaging, (ii) communication constraints imposed by the network and (iii) learning guarantees for when the mechanism is played repeatedly so that agents learn each other’s private information. The last aspect’s importance can be appreciated by noting that NE is used in one-shot game with private information with the justification of the “evolutive” interpretation i.e., NE is the convergent point of a dynamical adjustment process where agents “learn” each other over time with repeated play. We study the tradeoff between the principle goal of mechanism design i.e., ensuring efficient allocation at equilibrium, and providing learning guarantees.