The American superstar, who turns 38 in September has not won any event since claiming the 2017 Australian Open while pregnant.
She lost the final at Wimbledon and the US Open last year – and had Dominic Thiem thrown out of the interview room after losing in the third round at the French Open – to remain one victory away from the Major record held by Margaret Court.
McEnroe, who won his final Grand Slam title aged 25 in 1984, said: “She is going to be 38 and she has had a baby. How does your body react to that is an obvious question.
“As you get older, at least for me, I felt there was more pressure because you realised that your window is closing.
“You don’t know how much longer you are going to be doing it. And you end up feeling: I had better do it now.
“I don’t know what she is thinking.
“But I am thinking she can’t be thinking I am going to be playing for much more than a year or two.”
Chris Evert still makes Williams the favourite for Wimbledon despite the world No.11 losing in the third round at the French Open and playing in only five tournaments this year – and won only nine matches – because of illness and injury.
Speaking on behalf of espn.co.uk, the three-time Wimbledon champion said: “She is still the best grass-court player out there.
“She was not at her best in the US Open and she still lost in the final.
“Maybe she doesn’t need to be 100% but she has to be 80 or 90% to really have a chance.
“Maybe there is not as much intimidation factor. But it is hard for me to bet against Serena.”
Asked about Andy Murray’s return to action in the Wimbledon doubles, McEnroe said: “He will either win it or go out in the first round.”
Meanwhile, Rafael Nadal has slammed Wimbledon for not respecting the rankings by seeding him below Roger Federer.
The French Open champion is world No.2 behind only Novak Djokovic.
But Wimbledon is the only Grand Slam which does not seed based directly on the rankings as they also use a formula taking into account grass-court results in the last two years.
Eight-time Wimbledon winner Federer won the Halle Open for the 10th time on Sunday and will be seeded to meet Djokovic in the final.
“Wimbledon is the only tournament of the year that does it like this,” said the Spaniard.
“Obviously it would be better to be number two than three but if they think I have to be three I will accept it and fight to win the matches I have to win.
“Having said that, the only thing that doesn’t seem right about this issue is that it is only Wimbledon that does it. If they all did it, it would seem more correct.
“It’s not only about my particular case. There have been many occasions when players have played well all year on all surfaces but Wimbledon does not respect the ranking they have earned. And for this reason they get more complicated draws.”