
안녕하세요. 여러분의 AI/AX 파트너
자본주의생존법 대표 최gpt(최성훈)입니다.
9월 들어 강의 제안이 부쩍 늘었습니다^_^
그런데 일정 확인하다가 크게 한 번 당했습니다ㅋㅋ;;
오늘은 클로드 코드에 카카오톡 캘린더를 연결해
일정관리하는 방법을 통째로 풀어드리겠습니다.

카카오톡 캘린더를 AI가 읽게 만드는 방법입니다.
제가 실제로 쓰고 있는 방식 그대로입니다.
AI한테 일정을 물어보면 왜 모른다고 할까요

이런 경험 다들 있으시죠.
"나 다음 주에 시간 돼?"라고 물으면
클로드 코드, 코덱스 둘 다 열에 아홉은 이렇게 답합니다.
"죄송하지만 캘린더에 접근할 수 없습니다."
아니 그럼 넌 뭘 할 수 있는 건데…;;

저는 이게 진짜 답답했습니다.
강의 제안이 들어오면 AI 에이전트가
제일 먼저 볼 게 '그날 일정이 비었느냐'인데,
읽을 수가 없으니 그걸 매번 폰 열어서
확인해야 했거든요.
실제로 한 번 크게 당했습니다.
6회 전부 참석해야 하는 강의 건이었는데,
금액이며 전략이며 한참을 분석했습니다.
그런데 셋째 주 토요일에 이미 다른 일정이 있었습니다.
애초에 지원이 불가능한 건이었고,
분석에 쓴 시간이 통째로 날아갔습니다…

그날 바로 붙였습니다.
카카오가 톡캘린더 API를 열어놨더라고요.

결론부터 말씀드리면 30분이면 붙습니다.
그런데 아무도 안 알려주는 함정이 두 개 있습니다.
그 두 개가 이 글의 진짜 내용입니다.
1. 톡캘린더 API로 뭘 할 수 있나

카카오가 공식으로 여는 문은 두 개입니다.
캘린더 목록 가져오기와 일정 목록 가져오기입니다.
필요한 권한 이름은 talk_calendar 하나뿐입니다.
저는 여기에 하나를 더 얹었습니다.
가져온 일정을 제 업무 기록으로
바로 밀어넣는 화면을 만들었습니다.
월별로 일정을 쫙 불러오면 체크박스가 뜨고,
체크한 것만 업무일지로 저장됩니다.
개인 일정은 체크 안 하면 안 들어갑니다.
회식 기록이 업무일지에 남으면 곤란하니까요ㅋㅋ
2. 준비물은 이게 전부입니다

거창한 거 하나도 없습니다.
카카오 계정, 무료인 카카오 개발자 가입,
로컬에서 도는 앱, 그리고 시간 30분입니다.
저는 앱을 파이썬으로 만들었습니다.
심사도 없고 결제도 없습니다.
테스트 앱 상태면 본인 계정에 한해서
권한 신청 없이 바로 쓸 수 있습니다.
이게 이 API의 제일 좋은 점입니다.
3. 카카오 개발자 설정 5단계

여기가 제일 많이 헤맸던 구간입니다.
콘솔 화면이 바뀌어서 저도 두 번 틀렸습니다…;;
1) 애플리케이션 추가하기
developers.kakao.com 에 접속해서
내 애플리케이션 → 애플리케이션 추가를 누릅니다.
앱 이름은 아무거나 괜찮습니다.
2) 플랫폼에 Web 주소 등록
앱 설정 → 플랫폼 → Web 사이트 도메인에
본인 앱 주소를 넣습니다. 포트는 본인 것으로 바꾸세요.
localhost 와 127.0.0.1 은 별개로 칩니다.
둘 다 등록해두시는 게 마음 편합니다.

3) 카카오 로그인 켜고 Redirect URI 넣기
제품 설정 → 카카오 로그인 → 일반에서
사용 설정을 ON으로 바꿉니다.
그다음이 진짜 함정입니다.
화면을 아래로 한참 더 내리셔야 합니다.
OpenID Connect 섹션 밑에 Redirect URI 항목이 숨어 있습니다.
저는 이걸 위쪽에서만 찾다가 한참을 헤맸습니다.
화면 위에 없습니다. 스크롤 내리세요.

4) 동의항목에서 톡캘린더 켜기
제품 설정 → 카카오 로그인 → 동의항목으로 갑니다.
화면을 내리면 개인정보 목록이 먼저 나오는데 여기가 아닙니다.
더 내려가면 접근권한 섹션이 나옵니다.
거기에 이 항목이 있습니다.

톡캘린더 및 일정 생성, 조회, 편집/삭제
권한 이름은 talk_calendar 입니다.
이걸 '이용 중 동의'로 바꿔주세요.
참고로 상태가 네 종류인데 뜻이 다릅니다.
필수 동의는 로그인할 때 무조건 받고,
선택 동의는 동의 안 해도 로그인됩니다.
이용 중 동의는 필요한 시점에 받고,
사용 안 함은 아예 안 물어봅니다.
우리가 쓸 건 이용 중 동의입니다.
5) REST API 키 복사하기
앱 설정 → 앱 → 앱 키에서 REST API 키를 복사해
프로젝트 폴더의 .env 파일에 한 줄만 넣습니다.
아래 값들을 그대로 복사해서 쓰시면 됩니다 👇
Web 사이트 도메인: http://127.0.0.1:8877 Redirect URI: http://127.0.0.1:8877/kakao/callback 필요한 권한(scope): talk_calendar .env 파일 한 줄: KAKAO_REST_KEY=복사한키
이 키는 깃허브에 올리면 절대 안 됩니다.
.gitignore 에 .env 를 꼭 넣어두세요.
4. 코드는 세 덩어리면 끝납니다
OAuth라고 하면 복잡해 보이는데
실제로는 세 덩어리가 전부입니다.
첫째, 로그인 주소 만들기
카카오 인증 주소 뒤에 client_id, redirect_uri,
response_type, scope 네 개를 붙여 링크를 만듭니다.
사용자가 그 링크를 누르면 동의 화면이 뜹니다.
둘째, 받은 code를 토큰으로 바꾸기
동의를 누르면 카카오가 아까 등록한 Redirect URI 로
code 를 달아서 돌려보냅니다.
그 code 를 다시 카카오에 보내면
access_token 과 refresh_token 을 줍니다.
이걸 파일로 저장해두면 끝입니다.
셋째, 일정 불러오기
헤더에 Bearer 토큰을 실어서 일정 목록을 호출합니다.
여기서 주의할 게 하나 있습니다.
조회 기간이 최대 31일입니다.
그래서 저는 아예 월 단위로 끊어서
1일부터 말일까지만 부르게 짰습니다.
그리고 401 이 뜨면 리프레시를 한 번 하고
재시도하도록 감싸두세요.
이게 없으면 하루만 지나도 계속 실패합니다.
5. 함정 하나, 일정 제목이 안 옵니다
자, 여기서부터가 진짜입니다.
연동 다 끝내고 신나서 일정을 불렀는데
화면에 이렇게 뜨더라고요.

제목 없음, 제목 없음, 제목 없음… 전부 다요.
처음엔 제 코드가 틀린 줄 알고
한 시간을 들여다봤습니다. 범인은 제가 아니었습니다ㅠ
카카오 공식 문서에 이렇게 적혀 있습니다.
「서비스에서 만든 일정이 아닌 경우 time 만 응답합니다」
무슨 말이냐면 이런 뜻입니다.
카카오톡 앱에서 손으로 적은 일정은
제목을 안 내려줍니다.
날짜와 시간만 옵니다.
API로 만든 일정만 제목이 나옵니다.
개인정보 보호 정책이라 이건 코드로 못 뚫습니다.
처음엔 좀 허무했습니다.
그런데 쓰다 보니 생각이 바뀌었습니다.
시간 슬롯만 알아도 절반은 됩니다.
"9월 20일 오후 2시에 뭔가 있다"
이것만 알아도 강의 제안이 왔을 때 겹치는지는 바로 판단이 됩니다.
제목은 제가 그 자리에서 타이핑합니다.
어차피 제 일정이라 제가 아니까요.
6. 함정 둘, 두 달 뒤 조용히 끊깁니다
이건 오늘 발견했습니다.
이 글 쓰려고 잘 도는지 확인했는데
에러가 뜨더라고요.
expired_or_invalid_refresh_token
에러 코드는 KOE322 였습니다.
토큰 파일 수정 날짜를 봤습니다.
2026년 7월 6일이었습니다.
카카오 리프레시 토큰은 2개월입니다.
7월 6일에 붙였으니 9월 6일에 만료된 겁니다.
문제는 알림이 없다는 것입니다.
메일도 안 오고 로그도 안 남습니다.
그냥 어느 날부터 조용히 안 됩니다.
저도 끊긴 줄 모르고 닷새를 썼습니다.
다행히 고치는 건 30초입니다.
연동 화면에서 카카오 로그인 버튼을
한 번 더 누르면 끝입니다.
대신 두 달에 한 번은 일부러 확인하셔야 합니다.
저는 이번에 당하고 나서 두 달마다 알림을 걸어뒀습니다.
7. 그래서 지금은 이렇게 씁니다
제목이 안 온다는 걸 알고 나서
방식을 반반으로 바꿨습니다.
날짜와 시간 슬롯은 API로 자동으로 가져오고,
일정 제목은 브라우저로 읽습니다.
카카오 캘린더 웹을 탭에 열어두고
AI한테 "이번 달 일정 읽어줘"라고 하면
제목까지 그대로 읽힙니다.
API가 못 주는 걸 브라우저가 대신 주는 구조입니다.
완벽하진 않지만 예전보다는 훨씬 낫습니다.
적어도 이제는 일정 겹치는지 보려고
폰을 꺼내지는 않습니다.
따라 하시기 전 체크리스트
1) 카카오 개발자 가입하셨나요?
2) Redirect URI 를 화면 아래쪽에서 찾아 등록하셨나요?
3) 접근권한에서 talk_calendar 를 이용 중 동의로 바꾸셨나요?
4) .env 를 .gitignore 에 넣으셨나요?
5) 조회 기간을 31일 이내로 끊으셨나요?
6) 두 달 뒤 재로그인 알림을 걸어두셨나요?
여섯 개 다 되시면 오늘 안에 붙이실 수 있습니다.
특히 6번, 저처럼 당하지 마세요ㅋㅋ
정리하면 이렇습니다.
카카오톡 캘린더 연동은 어렵지 않습니다.
어려운 건 연동이 아니라, 연동한 걸 계속 살아있게 두는 겁니다.
제가 만드는 것들이 대부분 그렇더라고요.
만드는 데 30분, 살려두는 데 평생입니다.
혹시 따라 하시다 막히시면 댓글로 남겨주세요.
제가 겪은 에러는 거의 다 겪어봤습니다 :)

유튜브 채널 최gpt | AI 바이브코딩·자동화 연구자에서
계속해서 AI로 문제 해결하는 과정을 공유하고 있습니다.
지금까지 여러분의 AI/AX파트너
자본주의생존법 대표 최gpt(최성훈)이었습니다 🙂
궁금한 점이나 막히는 부분이 있으시면
언제든지 편하게 카카오 채널 '자본주의생존법'을
추가하시고 연락 주세요. 친절히 답변드리겠습니다.
매달 AI 레벨업 프로그램도 운영하고 있으니
아래 AI공부방 함께하기에서 확인하고 지원하세요.