Sources said Maldonado could make another $1.4 million in incentives. The Athletic first reported the agreement, which is pending a physical.
Maldonado hit .225 with nine home runs and 44 RBIs for the Los Angeles Angels and Houston Astros last season. His biggest strength is his ability to frame pitches and play defense, and his experience should help what is expected to be a young Royals team this season. Maldonado's Gold Glove in 2017 broke Perez's streak of four straight.
Cam Gallagher and Meibrys Viloria are the other catchers currently on Kansas City's 40-man roster. Gallagher, who appeared in 35 games during the past two years, has a .218 career average with two home runs and 12 RBIs. Viloria, 22, was a September call-up last season and has appeared in only three major league games.
The Royals are also trying first baseman Frank Schwindel behind the plate. Schwindel played catcher in college at St. John's and early in his minor league career, but he has been stuck behind other prospects at first base.
A career .220 hitter, Maldonado started in the majors with six seasons in Milwaukee.
ESPN's Jeff Passan and The Associated Press contributed to this report.