Thakur, who went wicket less against UP in the hosts' '
previous drawn game, did the bulk of early damage by bagging three out of the top four wickets to fall, before finishing with four wickets by sticking to a consistent outside off-stump line.
His new-ball partner Dhawal Kulkarni, though not as impressive, bagged two wickets.
Left-arm Harmeet Singh, brought into the playing eleven by Mumbai along with Jay Bista accounted for two.
More From This Section
But Railways hit back strongly and reduced Mumbai to 4 for two before stumps were drawn for the day with the home team trailing the visitors by 213 runs.
Railways, who won the toss and elected to bat on a wicket that afforded some help to the bowlers, plunged into deep trouble against the new ball to be 16 for 3 before staging a partial recovery through top scorer Arindam Ghosh (67) and Vivek Singh (28).
But the loss of Vivek Singh at 48, put the visitors again on the back foot before they were revived by a stand of 85 between Ghosh, who was ninth out after making a patient 67 in 272 minutes, and Sagar Mishra, who compiled 46 in 138 minutes that included a six and five fours.
Ghosh, too, could have been snapped up on 33 but was dropped off left arm spinner Vishal Dhabolkar and went on to play the sheet-anchor role till he edged the same bowler to slip fielder Suryakumar Yadav just before the second new ball became due. He faced 182 balls and had five hits to the fence.
The Railways innings folded up an hour after tea.
In the remaining time, Mumbai were rocked when they lost debutant Bista (2) to a catch at gully off Anureet Singh. Night watchman Kulkarni was then castled by leggie Karn Sharma for a duck.
Brief scores: Railways 217 all out (Aridam Ghosh 67, Sagar Mishra 46; D Kulkarni 2 for 40, S Thakur 4 for 38, Harmeet Singh 2 for 41) v Mumbai 4 for 2.