"It's good to see us win a tight one," manager Walt Weiss said.
The Rockies got the first of their two runs on a home run by McBride, who crushed a 74-mph curveball from D-backs starter Vidal Nuno in the second inning .
Matzek (4-9) struggled with his command early, walking two of the first four batters he faced. But the rookie worked out of the jam and settled into a groove.
The 23-year-old left-hander matched a career high in innings pitched (seven) and a career low in hits allowed (three) during a start.
Saturday's start was the second seven-inning outing in a row for Matzek, who pitched seven innings and surrendered only two runs against the Giants on Monday
"He's throwing the ball really well," Weiss said. "Close to dominant the last couple times out. It's good to see."
But Nuno had his own stellar performance on the mound.
The D-backs starter retired the next 20 batters after surrendering the home run to McBride, striking out seven and keeping the Rockies off balance through the eighth inning while allowing only two hits.
"He was, for the most part, a pretty classic left-hander," Weiss said. "When you got the hitters thinking soft, you pop a fastball on the inner half, and [he was] very effective doing it."
Matzek and Nuno battled it out for seven innings, with Matzek exiting the game after the seventh. But while Nuno pitched longer, Matzek came away with the victory.
"When you know the other guy's doing good, you try to stay more focused," Matzek said. "You definitely can't get distracted. Seeing him do what he was doing out there definitely helps me to remind me what I needed to do to get the win."
With the Rockies still leading by one, the D-backs mounted one major attempt at a second straight comeback win.
Weiss turned the game over to his bullpen in the bottom of the eighth. After Brooks Brown recorded an out, Weiss brought in Christian Friedrich, who gave up a single to Ender Inciarte.
After a wild pitch moved Inciarte to second, Cliff Pennington reached on an error, and the D-backs had a runner in scoring position for only the second time in the game.
After Friedrich struck out David Peralta, Weiss brought in Adam Ottavino to try to work out of the jam one day after he gave up a two-out, go-ahead grand slam.
This time, Ottavino escaped, forcing an inning-ending groundout.
Charlie Blackmon added an insurance run in the top of the ninth with a solo home run.
"One of the things we need to work on is our quality of at-bats with guys in scoring position and our two-strike approach," D-backs manager Kirk Gibson said. "We've been on a bad run right now."