본관은 안동(安東). 아버지는 상락군(上洛君) 김묘(金昴)이다.
19세에 진사시·생원시에 합격하고, 음보(蔭補)로 산원(散員)이 되었다. 이어서 사헌부규정(司憲府糾正)·사헌부잡단(司憲府雜端)을 지냈고, 1396년(태조 5) 형조의랑(刑曹議郎)에 올랐다.
이때 형옥을 잘못 처리하였다고 하여 순군옥(巡軍獄)에 투옥되기도 하였다. 그 뒤 외직으로 나가 단양·청풍(淸風: 현재의 堤川)·한주(韓州: 현재의 韓山) 등 3개 고을의 군수가 되어 선정을 폈고, 정종 때는 사헌부중승(司憲府中丞)이 되어 당시 판삼군부사(判三軍府事)로서 권력을 부리던 최운해(崔雲海)를 탄핵, 음죽(陰竹)으로 유배를 보냈다.
이어서 지사간원사(知司諫院事)에 올랐고, 다시 외직으로 나가 해주·광주·청주목사를 지냈다. 이어서 판통례문사(判通禮門事)가 되었는데, 그때 딸이 태종전(太宗殿)에 간택되어 명빈(明嬪)이 되자, 벼슬이 올라 우군동지총제(右軍同知摠制)가 되었다.
1412년(태종 12) 한성부윤(漢城府尹)을 지내고, 이어서 강원도관찰사를 거쳐 이듬해 참지의정부사(參知議政府事)가 되었다. 이듬해 다시 한성부윤을 역임하였으며 천추사(千秋使)로 명나라에 다녀왔다. 이윽고 지돈녕부사(知敦寧府事)를 거쳐, 판돈녕부사(判敦寧府事)에 이르렀고, 1427년(세종 9)에는 손녀가 세자빈에 간택되었다.
김구덕이 죽자 나라에서는 3일 동안 철조(輟朝: 왕이 조정의 업무를 정지시킴)하였고, 조문을 내려 치제하였다. 성품이 온화하여 남과 다투지 않았고 사람을 대함에 예로써 하였다. 문장에 능하였으며, 음악을 좋아하였다. 시호는 안정(安靖)이다.