Halford moved from Sunderland to Molineux 12 months ago in a £2million deal.
But the 25-year-old struggled to make an impression and made his last start of the campaign against Manchester United at Old Trafford in December.
After that Halford was confined to a couple of substitute's appearances.
McCarthy has made it clear Halford's days at Wolves will be numbered unless he wins him over.
McCarthy said: "Greg is doing well but, if he doesn't take the chance, then he'll move on. He knows that - because I've told him.
"But, fair play to him, he's trained well and he wants to be here, which is a great attitude for me to see."
Halford - plus £6.5million club record signing Kevin Doyle - will face former club Reading in tonight's away friendly clash.
He will be looking to create another favourable impression after setting up both goals in the weekend's 2-1 win over Belgian side Charleroi.