When both parents are U.S. citizens, and one is active duty personnel, and the spouse is a military dependent, then the UCMJ considers their child to be a natural born citizen regardless of where the birth takes place. So, McCain has some kind of leg to stand on.
But not according to Donofrio.
§ 1403. Persons born in the Canal Zone or Republic of Panama on or after February 26, 1904
(a) Any person born in the Canal Zone on or after February 26, 1904, and whether before or after the effective date of this chapter, whose father or mother or both at the time of the birth of such person was or is a citizen of the United States, is declared to be a citizen of the United States.
(b) Any person born in the Republic of Panama on or after February 26, 1904, and whether before or after the effective date of this chapter, whose father or mother or both at the time of the birth of such person was or is a citizen of the United States employed by the Government of the United States or by the Panama Railroad Company, or its successor in title, is declared to be a citizen of the United States.