He was fast-tracked into the Cardiff under-21 team at the turn of the year and was man-of-the-match with 25 points in the 57-3 demolition of Swansea in the cup final.
McCarthy then made his senior debut as a replacement against Llanelli and also played against Bridgend in the final week of the season.
Chief executive Robert Norster said,
'We are pleased to complete contract negotiations with Gareth who has attracted interest from far and wide. We anticipate that he will make a speedy transition into the senior game during the term of this deal.'