The Brentford striker converted in the 27th minute to condemn Grimsby to a fifth successive defeat.
The wind caused problems all night and Grimsby keeper Wayne Henderson was the first to suffer when he dropped a high ball from Ryan Dickson, but Marcus Bean could only blast over the empty net.
Rob Atkinson headed wide from a Danny Boshell cross before Brentford swept ahead. A Jordan Rhodes cross from the left found its way through to Adam Newton on the right and his first-time ball was guided home by McDonald.
Grimsby replied with a Jamie Clarke free-kick which was held by Ben Hamer, before Henderson tipped over a rising drive from Bean.
A Boshell free kick held by Hamer was Grimsby’s only effort on target in a wind-swept second half as the Bees comfortably held on for the points.