Mark Reynolds, just before half-time, and Peter Pawlett put the Dons 2-0 up and thinking of climbing up to third in the Scottish Premiership.
However, the visitors hit back two minutes after Pawlett’s strike through Callum Ball (58) and McLean slotted home his spot-kick after Reynolds handled John McGinn’s ball into the box.
Aberdeen’s stand-in skipper Reynolds had a mixed evening after a day that had seen the in-form defender named in the Scotland squad for next month’s European Qualifiers against Georgia and Poland.
Reynolds were almost undone against the run of play after some poor defending when Ash Taylor was well short with a back-pass, allowing former-Don Gregg Wylde an opening, but keeper Jamie Langfield stood firm to block (16).
A few moment later, and the visitors had rattled the woodwork. Former Derby striker Ball held the play up nicely before squaring for McLean, whose sweetly-struck shot clipped the bar on its way over.
A Reynolds cross then found Adam Rooney at the back post and he flicked back across goal for David Goodwillie, but the striker could only sidefoot straight at Marian Kello as the goalkeeper was quickly out to narrow the angle.
The Dons finally got the goal, and typically it was a scrappy effort, just before the break.
McGinn’s left-wing corner caused mayhem in the St Mirren defence and despite their valiant efforts to get the ball clear, it fell kindly for Reynolds to fire home through a ruck of bodies from eight yards.
Saints started the second half strongly but it was Aberdeen who doubled their lead, albeit with luck on their side, after 56 minutes.
Johnny Hayes’ delivery from the left was sweet as they come, and Pawlett netted with aplomb, even though it was from a fortuitous Rooney ricochet.
Their fortune did not last however, and Wylde’s low cross from the left evaded everyone in a red shirt, but drew Langfield off his line and allowed Ball, unmarked at the back post, the easiest of tap-ins.
Kello spilt Rooney’s shot as both teams went for broke as time elapsed, but the Buddies No 1 recovered quickly to dive on the loose ball.
And if Reynolds’ day had started on a high, it ended on a sour note when he raised his arm to block McGinn’s pass, and allowed McLean to stroke home the late leveller from the spot.