India, with the first innings lead of 304 runs, had the hosts on the mat in the rain-marred first session of play as they picked up four wickets in just 15.5 overs.
The hosts still need 256 runs to make India bat in the second innings and avoid a second consecutive Test defeat.
After the start of the match was delayed by an hour and 15 minutes, India removed Rajendra Chandrika (1), who had pacer Ishant Sharma ball kiss his elbow as he tried to leave the ball before it hit the stumps.
Before rain interrupted the play again, India gave away only six runs as rain intervened the visitors’ progress.
After a 30-minute rain-enforced break, India were again right on the money, even though Kraigg Braithwaite (23) and Darren Bravo (20) showed some resistance.
Right-hander Braightwaite skied leg-spinner Amit Mishra and it was followed by a running catch from Lokesh Rahul as the West Indies lost their second wicket for 41 runs.
Afterwards, right-arm medium pacer Mohammed Shami operated with a probing line and bagged two quick wickets. While veteran right-hander Marlon Samuels was clean bowled after missing the line, left-hander Bravo succumbed to a rising ball, ending up nudging a catch to Rahul at third slip as the West Indies plunged to 48/4.
Jermaine Blackwood was batting on 3 as the ball that dismissed Bravo was the final one before lunch was called.
Brief scores: West Indies 196 and 48/4 (Kraigg Braithwaite 23; Mohammed Shami 2/25) vs India: 500/9d.