Castillo was making his first start of the season after having his contract purchased from Class AAA Fresno on July 6. In his only previous at-bat for San Francisco, he doubled as a pinch hitter July 9.
The catcher attended spring training with the Giants as a non-roster invitee but was loaned to the Mexican League, where he played this season for both Mexico City and Vageros.
His grand slam off Denny Neagle (2-4) snapped a 1-1 tie in the fourth inning before Marquis Grissom's two-run shot made it 7-1 in the fifth.
Jesse Foppert (6-8) got the win. He took a one-hitter into the seventh before giving up a two-run homer to Preston Wilson and a double to Jay Payton.