Rohit Sharma opted to bat after winning the toss but Mumbai batsmen failed to deliver while the Supergiant bowlers came out firing on all cylinders.
Krunal Pandya top-scored with a crucial 47-run knock while skipper Rohit contributed 24 runs to help Mumbai post 128 for eight.
Jaydev Unadkat (2/19) and Adam Zampa (2/32) shared four wickets between them for Pune Supergiant.
Mumbai Indians surprisingly managed to defend the low total to capture their third IPL trophy with Pune Supergiant falling agonisingly short by one run.
More From This Section
Skipper Steve Smith scored 51 runs while Ajinkya Rahane came up with a 44-run knock in Pune chase.
Brief Scores:
Mumbai Indians: 129 for 8 in 20 overs. (Krunal Pandya 47, Rohit Shrama 24; J Unadkat 2/19)
Rising Pune Supergiant: 128 for 6 in 20 overs. (Steve Smith 51, Ajinkya Rahane 44; Mitchell Johnson 3/26).