Jason Bay is not a major league player at this point. We all know that.
So why is he playing? Well, duh... it's his contract.
But let's delve just a little bit deeper...
The team is out of it this season. Thus Bay is playing.
No one is picking him up this trade deadline. He has no trade value. The Mets have approximately 60 games to see if he can get anything back that would give him some kind of value this offseason. Even is the Mets have to eat 90% of his contract next season to get someone to take him off their hands for the last season of his contract next year, that's still a 10% savings on what's already going to be out the door next season anyway.
And if he doesn't show anything over the next two months... he'll get released in Spring Training like Ollie P and Castillo did last season.
So since the season is lost anyway, try to recoup some of next years's losses by playing Bay now.