Garlick put Minnesota on the scoreboard with an RBI single in a three-run first inning and added a sacrifice fly in the second. He was lifted for a pinch-hitter in the fourth.
Miranda had two hits, including a two-run double with two outs in the eighth that made it 6-3.
''It felt great getting that first hit out of the way,'' Miranda said. ''Then getting the second one in a clutch situation when the team needed me, it just felt great to come through.''
Smeltzer (1-0) allowed one run and five hits over 5 1/3 innings, throwing 74 pitches in his second major league start this season. He walked one and did not record a strikeout.
''Smeltzer was excellent,'' Twins manager Rocco Baldelli said. ''He is helping us win ballgames, which is all he cares about and all we care about. But he was efficient and did a really nice job.''
Jhoan Duran worked 1 2/3 hitless innings to set up Emilio Pagan for his sixth save. Pagan gave up three hits in the ninth, including Emmanuel Rivera's solo homer.
Carlos Santana also had a solo shot for the Royals, ending an 0-for-21 slump.
Gary Sanchez hit an RBI double in the Twins first and Gio Urshela added a sacrifice fly.
Royals starter Daniel Lynch (2-3) gave up four runs on five hits with two walks and two strikeouts in 3 2/3 innings.
''(Lynch) was having some trouble finishing tonight and there was a reason for that,'' Kansas City manager Mike Matheny said. ''He had some tightness come up in his back and felt good enough to pitch, but it was something he had to work through. ... We tried to help him figure out a way to get through it and he got better as he went.''
Santana went deep in the seventh, and Whit Merrifield's sacrifice fly trimmed it 4-3.
Bobby Witt Jr. had a sac fly in the first for Kansas City.
A LONG-AWAITED RETURN
Royals reliever Foster Griffin tossed a scoreless inning in his season debut after returning from Tommy John surgery in 2020. The left-hander made his major league debut and got his first win on his birthday in Detroit on July 27, 2020, before an extended stint on the injured list.
Royals: INF Adalberto Mondesi (left knee ACL tear) was transferred to the 60-day injured list and RHP Ronald Bolanos (undisclosed) was placed on the injured list.
Royals: Recalled RHP Matt Peacock and selected Griffin from Triple-A Omaha. Optioned RHP Carlos Hernandez to their top farm club.
Joe Ryan (4-2, 2.39 ERA) starts Saturday for Minnesota against Brad Keller (1-3, 2.89).
More AP MLB: https://apnews.com/hub/MLB and https://twitter.com/AP-Sports
Copyright 2022 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.