In a game where anything other than a win would have eliminated them, Hardik Pandya (61no off 31 balls) helped Mumbai to 171-4.
Yusuf Pathan (52 off 37) hit a fifty for the Knight Riders in reply to take them close, but when he fell in the final over to Kieron Pollard, Kolkata???s hopes of a win went with him.
Mumbai???s innings got off to a fairly sedate start, with only 29 runs on the board when Parthiv Patel (21 off 14) was dismissed by Shakib Al Hasan (2-22) early in the fifth over, shortly after being dropped by Umesh Yadav off Morne Morkel.
Morkel (1-27) did pick up the wicket of Lendl Simmons (14) though, a ball after having been smashed over long-on for the first six of the innings.
When Ambati Rayudu became Shakib???s second victim and the third wicket in three overs, Mumbai were really in trouble at 47-3.
Rohit Sharma (30 off 21) rebuilt with the strangely out-of-sorts Pollard (33no off 38) before being beautifully bowled by Sunil Narine in the 12th over.
That brought Pandya to the crease, who gave the innings some much-needed momentum with some fearsome striking, including four consecutive boundaries off Yadav in the 17th and two fours and a six off Andre Russell in the penultimate over.
Kolkata got off to a good start in their run-chase, openers Robin Uthappa (25 off 20) and Gautam Gambhir (38 off 29) putting on 45 together.
But a double-strike in the sixth over, as Harbhajan grabbed Uthappa and Manish Pandey was brilliantly run out by Simmons, brought Mumbai back into the game.
Gambhir continued on his way and even looked to have benefited from a slice of luck in the 11th over as he was dropped by Pandya at deep midwicket, only to be bowled by Jagadeesha Suchith as he skipped down the track to the next ball.
Pathan and Shakib recovered things and looked nicely placed to get the Knight Riders over the line before Pandya made amends for his earlier dropped catch by grabbing Shakib, and in-form Russell was caught behind off Lasith Malinga.
It left Kolkata struggling at 130-5 after 16 overs, still requiring 42 from the final four overs.
Three fours came from the next four balls though as Vinay Kumar???s wayward over looked to be gifting a Kolkata a route back into the contest, only for Yadav to fall first ball of Mitchell McClenaghan???s next over.
Pathan smashed Malinga for a huge six over midwicket to knock the runs required from the final over down to 12, but Pollard picked him up first ball, and despite following that with a four-ball and a wide, the West Indian finished things up with three dot balls to seal a five-run win.