The defender is expected to make his debut for the Shrews against Manchester City this weekend.
Town boss Graham Turner said: "He's one we've chased from the end of last season, but Newcastle thought he would end up at a Championship club.
"That didn't materialise, so we've had the opportunity to bring him down here now. Whenever we've seen James, the scouts have been impressed with him.
"He's good going forwards and he's a decent defender.
"He has had a bit of experience with Newcastle and from being out on loan at MK Dons, Sheffield Wednesday and Carlisle."