McBreen joined Conference Premier club York City on 5 October 2007 on a one-month loan, with the option of a possible extension. His York debut came in a 4–1 home defeat to Histon a day later and scored his first goal in the following match against Stafford Rangers, with a header from a Martyn Woolford cross in a 2–0 home victory. After making five appearances and scoring two goals he was recalled by Scunthorpe on 5 November due to the departure of on-loan Millwall striker Ben May. Despite this, York manager Billy McEwan was interested in bringing McBreen back to the club for another loan spell. He bought out the remainder of his Scunthorpe contract to join St Johnstone of the Scottish First Division on 2 January 2008 on a contract until the end of the season. His debut came the same day in a 1–1 home draw with Dundee, which he entered as a 62nd-minute substitute for Liam Craig. St Johnstone finished in third place in the 2007–08 Scottish First Division table as McBreen made seven appearances and scored one goal