Boro boss Gordon Strachan had set his players a 12-point target for the final four matches and his aims enjoyed the perfect start, even if it was a narrow 1-0 win over relegation threatened Sheffield Wednesday.
McDonald's third goal in nine appearances since his £3.5m switch from Celtic in January proved the difference, as Middlesbrough closed the gap to the top six to four points.
Despite Leicester's win at Peterborough United, Swansea's inability to see off Bristol City and Blackpool's thrashing at Newcastle has closed the gap with three games to go.
This was not a pretty display by any stretch of the imagination but it was enough to extend Middlesbrough's unbeaten run to eight matches.
There were chances at both ends, but the defences tended to be on top and it took a moment of luck to divide the two teams.
Middlesbrough turned defence into attack when goalkeeper Brad Jones rolled to Kyle Naughton.
The full-back cut inside and McDonald picked up play just inside the Owls half.
A quick burst created space before he unleashed a left-foot strike that deflected off defender Mark Beevers and dropped to the right of goalkeeper Lee Grant.
Now Middlesbrough, who again left out Gary O'Neil whose next appearance will trigger a £1m payment to Portsmouth, head for West Brom next week before ending with two games against Coventry (h) and Leicester City (a).
MIDDLESBROUGH (4-4-2): Jones; Hoyte, Wheater, McManus, Naughton; Franks, Robson, Williams, Arca; Lita, McDonald. Subs: Coyne (gk), Miller, Grounds, Taylor, Killen, O'Shea, Bennett.
SHEFFIELD WEDNESDAY (4-4-2): Grant; Nolan, Purse, Beevers, Spurr; Soares, Potter, O'Connor (Esajas 77), Varney; Johnson, Tudgay (Jeffers 80). Subs: O'Donnell, Hinds, Simek, Gray.