On September 3, 2019, the Royals selected Mejia's contract and promoted him to the major leagues.[6] He made his major league debut on September 5 versus the Detroit Tigers.[7] On December 2, 2019, Mejia was non-tendered and became a free agent,[8] but re-signed with the Royals on a minor league contract on December 17.[9]
Overall with the 2020 Kansas City Royals, Mejia batted .071 with no home runs and 0 RBIs in 8 games.[10] On December 2, Mejia was nontendered by the Royals. On December 21, 2020, Mejia re-signed with the Royals on a minor league contract.[11] Mejia spent the 2021 season with Triple-A Omaha. He played in 55 games, hitting .246 with 7 home runs and 30 RBI's. He became a free agent following the season on November 7, 2021.[12]
Seattle Mariners (second stint)
On February 12, 2022, Mejia signed a minor league contract with the Seattle Mariners.[13] In 120 games for the Triple–A Tacoma Rainiers, he batted .261/.330/.433 with a career–high 15 home runs, 58 RBI, and 19 stolen bases. He elected free agency following the season on November 10.[14]
Washington Nationals
On November 19, 2022, Mejia signed a minor league deal with the Washington Nationals.