We have but three weeks left in this Major League Baseball season. Many sports fans are focusing on football at this point, but it's the best time of the year to grasp onto meaningful baseball. Though we might be void of any fun divisional races, individual award races can be exciting and the National League MVP is still very much up for grabs ... for two guys. There's always the chance someone goes crazy and enters the fray, too. Let's take a look at the race: 

The two front-runners

Cody Bellinger
CHC • RF • #24
BA0.306
R108
HR44
RBI105
SB11
View Profile

Cody Bellinger right now has an 8.3 to 7.1 WAR lead on Christian Yelich, thanks in part to how amazing he's been on defense in right field, where he'd previously barely seen any time. He's got a shot to set the Dodgers' franchise record in home runs while getting on base at a .410 clip. He also steals bases and plays on the best team in the league. That's a formula to win MVP. He definitely has competition, but right now I think he's the one to beat. 

Christian Yelich
MIL • RF • #22
BA0.330
R99
HR44
RBI97
SB30
View Profile

Yelich has proven the naysayers (I'll admit I was one) wrong that the last two months of last season were a fluky hot streak. He really is this good. He leads the NL in on-base percentage at .429 and the majors with a .674 slugging. The 30 stolen bases show he's a threat with his legs, too. Where Yelich lags behind Bellinger is defense. Advanced metrics show he's a sub-par defender in right and his team right now would miss the playoffs. Still, this is very much a neck-and-neck race with three weeks to go. Yelich would be the first back-to-back MVP since Albert Pujols in 2008-09. Other NL back-to-back winners: Barry Bonds (four in a row and two in a row), Dale Murphy, Mike Schmidt, Joe Morgan and Ernie Banks. 

The one to watch

Anthony Rendon
LAA • 3B • #6
BA0.337
R108
HR32
RBI114
SB3
View Profile

After a brutal 19-31 start, the Nationals appear playoff-bound and Anthony Rendon has been an absolute beast his in walk year. He leads the majors in hitting and the NL in doubles (again). He's also the clutch candidate. His situational hitting is off the charts. He's slashing .356/.454/.664 with runners in scoring position and .364/.514/.800 with RISP and two out. In "late and close" situations, he's hitting .355/.452/.661. If we look at what baseball-reference.com deems "high leverage," Rendon is slashing .407/.458/.837 with 10 homers in 86 at-bats. Good lord. 

Also in the mix

Ketel Marte
ARI • CF • #4
BA0.330
R95
HR32
RBI91
SB9
View Profile

You might not have noticed, but the Diamondbacks are only 1 1/2 games out of playoff spot. Ketel Marte has been their heart and soul while racking up the stats. In addition to what you see above, he's also leading the NL in hits, has 31 doubles, nine triples, a .599 slugging percentage, 149 OPS+ and 6.7 WAR that tops even Rendon. 

Ronald Acuna
ATL • CF • #13
BA0.280
R113
HR37
RBI93
SB34
View Profile

The 40-40 Club (40 homers and steals) includes just Jose Canseco, Barry Bonds, Alex Rodriguez and Alfonso Soriano. The 21-year-old Acuna has a shot to get there as well. He leads the league in steals and runs. He has a shot to get to 100 RBI as a leadoff man.

Freddie Freeman
LAD • 1B • #5
BA0.299
R109
HR38
RBI115
SB6
View Profile

The perpetually underrated Freddie Freeman is again doing this thing. He leads the majors in RBI, plays excellent defense at first base and he's now the leader in the incredibly young clubhouse

Josh Donaldson
MIL • 3B • #3
BA0.262
R89
HR36
RBI85
SB4
View Profile

Josh Donaldson had a lost season in 2018 and had to take a one-year deal in free agency. He's sixth in the NL among position players in WAR while getting on base at a .384 clip and slugging .542. He also rates out as an excellent defender at an important position. 

Juan Soto
NYY • LF • #22
BA0.297
R98
HR33
RBI101
SB12
View Profile

Take note of the Rendon snippet and realize Juan Soto has also made a huge impact on a relentless Nationals' offense,. He's over .400 OBP with a slugging approaching .600 while in double digits in steals. 

Pete Alonso
NYM • 1B • #20
BA0.268
R87
HR45
RBI107
SB1
View Profile

Pete Alonso already has the Mets franchise record in home runs and he's got his eyes on the rookie record of 52. If he gets there and the Mets make what's now an unlikely push for a wild card spot, Alonso will get a strong look here. 

Others for down-ballot consideration

J.T. Realmuto
PHI • C • #10
BA0.282
R87
HR23
RBI79
SB8
View Profile

Every contender needs a candidate and Realmuto fits the bill for the Phillies. He's been a steady presence behind the plate for a very inconsistent Phillies' season. 

Javier Baez
DET • SS • #28
BA0.281
R88
HR29
RBI85
SB11
View Profile

Unfortunately, he's likely to fall off here as he misses the rest of the regular season with a fractured thumb, but Javier Baez looked an awful lot like the 2018 MVP runner-up for much of the season. 

Max Muncy
LAD • 2B • #13
BA0.253
R89
HR33
RBI87
SB4
View Profile

Max Muncy is also hurt, but he's coming back. He ranks seventh among NL position players in WAR.  

Trevor Story
BOS • SS • #10
BA0.296
R101
HR30
RBI76
SB20
View Profile
Nolan Arenado
STL • 3B • #28
BA0.309
R94
HR37
RBI108
SB2
View Profile

My annual plea for Mike Trout is that baseball is unlike other sports in that while it is a team sport, it's a series of individual matchups. A player can only bat once every nine spots, so the tired trope that he can't be valuable if his team is bad is complete nonsense. The best players are the most valuable. As such, both Story and Arenado deserve mention despite their team being awful. 

Jeff McNeil
NYM • 2B • #1
BA0.325
R73
HR18
RBI65
SB4
View Profile

In addition to that sparkling batting average, Jeff McNeil has only struck out 66 times in 500 plate appearances. The art of contact hitting is lost for many these days, but he's excellent here. 

Josh Bell
MIA • 1B • #9
BA0.279
R93
HR36
RBI114
SB0
View Profile

Josh Bell has grown into a star this season and should be the Pirates' centerpiece moving forward. Things to watch: There hasn't been a 40-homer Pirates player since 1973 (Willie Stargell) and the franchise record for RBI is 131. No Pirates player has gotten to 125 since 1971 (Stargell). 

Eugenio Suarez
ARI • 3B • #28
BA0.269
R81
HR44
RBI95
SB3
View Profile

Eugenio Suarez is currently on a tear with 10 homers in his last 14 games. He's now right in the mix to lead the majors and he could set the Reds' franchise record (George Foster's 52). 

Max Scherzer
TEX • SP • #31
ERA2.56
WHIP1.00
IP154.2
BB30
K216
View Profile

Max Scherzer missed time due to injury, so he's not a huge threat here, but he does lead NL pitchers in WAR, FIP and ERA+. He was strong Sunday against one of the best offenses in baseball and a late push isn't out of the question here. 

Jack Flaherty
DET • SP • #9
ERA2.99
WHIP1.03
IP168.1
BB49
K196
View Profile

The Cardinals are likely to win the NL Central, but none of their position players show up much on leaderboards. They've gotta have someone, right? Jack Flaherty's overall numbers are good to great, but man, he's been ridiculous for a while. In his last 12 starts, Flaherty has a 0.80 ERA, 0.73 WHIP and 95 strikeouts against 18 walks in 78 1/3 innings. The Cardinals have gone 8-4 in those starts. They've won five of his last six starts and he's as close to a sure thing as there is in baseball these days.