Standard MLB player contracts do indeed specify that players participate in team promotional activities.
I believe MLB is stricter about required appearances than other pro sports.
Not surprisingly, the bigger the star the more likely he can get away with snubbing team activities.
Two of the Cubs didn't attend the White House visit. John Lester was attending the funeral for a family member, but Jake Arrieta just didn't want to. He gave as his excuse his son was having a tooth pulled.