I don’t think McCain is Catholic. He is a professing believer, but not Catholic.
In fact, I was surprised when I saw that he was not Episcopalian, and claimed another denomination...but I forget what it was.
He is Episcopalian.