Well, it's strong enough, especially considering mercury's small size. The solar wind is what causes atmosphere loss without a field and it's strong enough to deflect it, so...
Not entirely, you will still have atmosphere escape even with a massive magnetic field. Atmosphere loss is due to the fact that a gas at a particular temperature has it's molecules at a distribution of speeds, and for each molecule there is a corresponding speed that is sufficient for it to escape from the planets gravity. Hence the high energy(high speed) tail of the distribution past this escape speed allows molecules to escape. Usually this will only occur at the edge of the atmosphere as molecules lower down are more likely to colide with other gas molecules and lose the energy to escape.
What the solar wind does is to help increase the number of molecules that have energies(speeds) over that needed to escape, and also remove the escaped molecules away from the planet reducing the chance of another escaping molecule impacting and loosing the energy it would need to escape. The other way to increase the rate of atmosphere loss is to increase the temperature of the atmosphere.
The magnetic field, or lack of it, effects how much effect the solar wind will have on the atmosphere of a planet. Also planets a large distance from their star will feel relatively little effect from the solar wind even without a magnetic field as the solar wind drops rapidly with distance.