The 38-year-old seamer took the first five wickets to reduce the visitors to 48-5, before Ben Cox (63) and George Rhodes (59) shared a stand of 94.
They were eventually all out for 230, losing their last four wickets for 30.
England Test captain Alastair Cook closed on 43, with Tom Westley 58 not out, as Essex reached stumps on 111-1.
Masters' seven-wicket haul added up to the second-best bowling figures of his career, bettered only by his 8-10 against Leicestershire at Southend in 2011.
Essex fast bowler David Masters told BBC Radio Essex:
"I'm getting a bit older now and can't play as many games, so when I am playing I'm generally fresh. They've looked after me well this year. I've played when they've needed me to play and hopefully I don't disappoint.
"My body takes a bit more of a battering now and it takes me a bit more time to recover. But I still love playing, I love bowling.
"It's quite a docile wicket actually. The shine came off the new-ball and it started to swing and I got the ball in the right areas. That can happen sometimes."
Worcestershire assistant coach Matt Mason told BBC Hereford & Worcester:
"We probably lacked a bit of application with the bat, particularly early on with some soft dismissals in there. And that last session was probably the poorest we have had as a bowling unit this year, so not an ideal day.
"When you win the toss and bat first you want to post 400, let's be honest. It looked a good surface and if we'd applied ourselves better you could bat and get some good partnerships.
"I wouldn't want to detract anything from Masters' spell. He did what he's done for his whole career - he put the ball on the spot and nagged away. He is very disciplined, but I don't think we were very good in defence."
David Masters took 7-52 to put Division Two leaders Essex in a strong position against Worcestershire on the opening day at Chelmsford.