Snider, who turns 28 on Tuesday, spent most of last season with Baltimore after getting traded from Pittsburgh. He hit .237 with three homers and 20 RBIs for the Orioles before clearing waivers in August and re-signing with the Pirates.
He was Toronto's first-round pick in 2006 but hit just 31 homers in five seasons with the Blue Jays. His best season came with Pittsburgh in 2014, when he hit .264 with 13 homers and 38 RBIs.
The World Series champion Royals will have an open competition for the right field job this spring. Jarrod Dyson and Paulo Orlando are the front-runners to platoon there.