The hosts scored all their goals before half-time as the misfiring Bantams were forced to cling on to prevent the Ammies from running riot after the break.
Match-winner Luke Burgess bagged a brace and Ian Henderson was also on the scoresheet as McCall’s men were put to the sword.
“What frustrated me most was our decision making,” moaned McCall. “At 3-0, we still tried to play and did our best, but we give too many opportunities to sides and then have to work too hard.
“But we can’t just moan that we’ve got people missing. Those lads coming in have got to make sure they play well for the next couple of games so the manager can’t leave them out.
“I need people to stand up and say they want to be part of this. I still expect better than that.”
McCall was missing first-team regulars Callum Cooke, Billy Clarke, Lee Novak, Kurtis Guthrie, Bryan Hosannah and Reece Staunton.
“In the next couple of weeks, we will have five or six of our key players back who would have started today,” stressed McCall.
“Ultimately, we were beaten by the better side and just weren’t good enough.”
Burgess fired the hosts ahead after eight minutes before Henderson slotted home 11 minutes later. Burgess virtually sealed it when he scored his second in stoppage-time.
Salford City: Hladky; Clarke, Eastham, Bernard, Touray; Denny, Lowe (Threlkeld 62); Burgess (Boyd 83), Carvalho-Andrade (Thomas-Asant 67), Hunter (Turnbull 83); Henderson. Unused substitutes: Evans, Elliott, Dieseruvwe.
Bradford City: O’Donnell; O’Connor, O’Connor, Richards-Everton (Mottley-Henry 45); Watt, French, Pritchard (Scales 45), Evans (Sutton 45), Wood; Samuels (Ismail 71), Donaldson. Unused substitutes: Hornby, Longridge, Cousin-Dawson.
Referee: C Brook (Sussex).
Support The Yorkshire Post and become a subscriber today. Your subscription will help us to continue to bring quality news to the people of Yorkshire. In return, you’ll see fewer ads on site, get free access to our app and receive exclusive members-only offers. Click HERE to subscribe.