The victory, which was decided by Joseph Olowu’s second-half header, lifted Rovers off the foot of the table and ended a run of five-straight defeats in all competitions.
The result keeps Doncaster in touch with the sides hovering above the relegation places, while four of their next five opponents are currently placed 16th or lower.
“We knew it was a big game,” said McSheffrey, with Shrewsbury now just three points ahead of Doncaster.
“We tried to play it down a bit because it’s only three points but when it’s head to head with a rival it’s the difference between three points and nine points behind them so it was important. The lads realised that. I’m just delighted because the togetherness was there in abundance and they went the extra yard for each other. Hopefully, they take some real confidence from it.”
McSheffrey praised goalkeeper Louis Jones for his efforts to keep the score level before Olowu struck.
He said: “We rode our luck in the second half, they created some good chances and we needed Louis to make big saves. I asked them at half-time to up the intensity and take the handbrake off. I think we played winning football once we got ahead. The decision making was very good to put the ball in the right areas.”
Doncaster Rovers: Jones; Knoyle, Anderson, Olowu, Horton; Galbraith, Smith; Hasani (Barlow 62), Rowe, Hiwula; Dodoo. Unused substitutes: Dahlberg, Blythe, Ravenhill, Williams, Kuleya, Cukur.
Shrewsbury Town: Marosi; Pennington, Leahy, Nurse; Daniels, Bennett, Vela, Ogbeta; Boxham, Udoh, Pyke. Unused substitutes: Burgoyne, Cosgrove, Caton, Leshabela, Wilson, Kaninda, Craig.
Referee: C Pollard (Suffolk).