It feels strictly masculine to me, and even then, very nickname-y, with the expectation that he'll start going by James once he's older than 12.
masculine list:
https://www.behindthename.com/pnl/191050/124079feminine list:
https://www.behindthename.com/pnl/191050/124080