Haspel, appointed by Trump to replace new Secretary of State Mike Pompeo, faced tough questions from the Senate intelligence committee Wednesday about concerns with her involvement in past CIA interrogations.
The 33-year CIA veteran was tabbed by Trump to replace Pompeo as agency chief when he succeeded Rex Tillerson as head of the State Department.
In a statement late Wednesday, McCain cited Haspel's refusal to acknowledge "torture's immorality" during her testimony.
"I believe Gina Haspel is a patriot who loves our country and has devoted her professional life to its service and defense," McCain said. "However, Ms. Haspel's role in overseeing the use of torture by Americans is disturbing. Her refusal to acknowledge torture's immorality is disqualifying. I believe the Senate should exercise its duty of advice and consent and reject this nomination."
McCain, chairman of the Senate Armed Services Committee, has been a vocal critic of the use of torture in interrogations because of the abuse he received as a prisoner during the Vietnam War.
The longtime senator has been away from Washington, D.C., for weeks to continue treatment for brain cancer in Arizona. He is not expected to vote on Haspel's nomination.
Haspel said during the hearing that she would never allow the CIA to be involved activity that she thought was immoral, even if it was technically legal. She did not, however, criticize the CIA's past use of torturous techniques like waterboarding, a controversial interrogation technique that simulates drowning.
Trump has praised Haspel for the position and said she is tough on terrorists.
"Gina Haspel did a spectacular job today," he tweeted. "There is nobody even close to run the CIA!"