McCutchen, who also scored twice, dropped a two-out single into left field in the ninth inning that brought Alex Presley in from third and broke a 4-4 tie. Garret Jones and Neil Walker both had three hits and an RBI for the Pirates, who had dropped six of their seven previous games.
Bryan Shaw (0-2) took the loss after allowing three hits in the ninth.
The Diamondbacks, who have lost three of their last five, led 3-1 after two innings. They lost the lead in the sixth but scored a single run in the eighth to tie the score 4-4.