카카오톡 MCP 연동 가이드 — AI 에이전트에서 메시지 전송 자동화하기
카카오톡 MCP 연동으로 AI 에이전트가 메시지·채널 알림을 자동 발송하는 방법을 단계별로 설명합니다. 카카오 API 설정부터 Claude Desktop 연결까지 한 번에 해결.
카카오톡 MCP를 연동하면 Claude·Cursor 같은 AI 에이전트가 직접 카카오톡 메시지를 발송할 수 있습니다. 카카오 REST API 키를 발급받아 MCP 서버 설정 파일에 등록하는 것이 핵심이며, 별도 서드파티 라이브러리 없이 표준 MCP 프로토콜로 동작합니다. 이 가이드에서는 카카오 개발자 앱 생성부터 Claude Desktop 실행 확인까지 전 과정을 단계별로 안내합니다.
카카오톡 MCP 연동이 필요한 상황
AI 에이전트 워크플로에서 외부 알림·메시지 발송이 필요한 경우는 생각보다 많습니다.
- 업무 자동화: 특정 이벤트 발생 시 담당자에게 카카오톡 알림 자동 발송
- 모니터링: 서버 상태·배포 결과를 즉시 카카오톡으로 수신
- 개인 비서: AI가 일정·할 일을 카카오톡 ‘나에게 보내기’로 정리해 전달
- 고객 응대 보조: 상담 내용 요약 후 카카오채널로 후속 메시지 발송
기존에는 이런 기능을 구현하려면 별도 백엔드 서버를 작성해야 했지만, MCP(Model Context Protocol) 표준이 등장하면서 AI 에이전트가 직접 카카오 API를 호출하는 구조가 가능해졌습니다.
카카오톡 API와 MCP의 관계
MCP는 AI 모델이 외부 도구·API를 표준화된 방식으로 호출하는 프로토콜입니다. 카카오톡 MCP 서버는 이 프로토콜을 구현해, AI 에이전트가 카카오 REST API를 직접 호출하도록 중간 다리 역할을 합니다.
AI 에이전트 (Claude / Cursor)
|
MCP 클라이언트 (Claude Desktop)
| stdio / SSE
카카오톡 MCP 서버 (Node.js / Python)
| HTTPS REST
카카오 API 서버 (kapi.kakao.com)
|
카카오톡 수신자
MCP 서버가 로컬에서 실행되므로 API 키가 사용자 환경 밖으로 노출되지 않는다는 점이 보안 측면에서 유리합니다.
준비물 요약
| 항목 | 설명 |
|---|---|
| 카카오 개발자 계정 | developers.kakao.com 가입 필요 |
| 카카오 REST API 키 | 앱 생성 후 발급 |
| 카카오 액세스 토큰 | OAuth 2.0 인증 후 발급 |
| Node.js 18 이상 | npx 실행 환경 |
| Claude Desktop | MCP 클라이언트 역할 |
단계별 연동 방법
1단계: 카카오 개발자 앱 생성 및 REST API 키 발급
- developers.kakao.com에 카카오 계정으로 로그인합니다.
- 상단 메뉴에서 내 애플리케이션 → 애플리케이션 추가하기를 클릭합니다.
- 앱 이름과 회사명(개인이면 본인 이름)을 입력하고 저장합니다.
- 생성된 앱의 앱 키 섹션에서 REST API 키를 복사해 둡니다.
2단계: 카카오톡 메시지 API 권한 설정
앱 메뉴에서 카카오 로그인 → 동의항목으로 이동합니다. 다음 권한이 활성화돼 있는지 확인하세요.
| 동의항목 ID | 설명 | 필요 여부 |
|---|---|---|
| talk_message | 카카오톡 메시지 전송 | 필수 |
| friends | 카카오톡 친구 목록 조회 | 선택 |
| account_email | 이메일 주소 | 선택 |
플랫폼 설정: 앱 메뉴 플랫폼 → Web에서 http://localhost를 리디렉션 URI로 추가합니다(로컬 OAuth 테스트용).
3단계: 액세스 토큰 발급
카카오 OAuth 2.0 인증 코드 방식으로 액세스 토큰을 발급받습니다.
인증 URL 접속: 아래 URL을 브라우저 주소창에 입력합니다(YOUR_REST_API_KEY 부분을 실제 키로 대체).
https://kauth.kakao.com/oauth/authorize?client_id=YOUR_REST_API_KEY&redirect_uri=http://localhost&response_type=code&scope=talk_message
카카오 로그인 후 동의 화면에서 권한을 허용하면, 브라우저가 아래와 같은 URL로 리디렉션됩니다.
http://localhost/?code=AUTHORIZATION_CODE
URL에서 code 파라미터 값을 복사합니다. 이후 아래 curl 명령으로 액세스 토큰을 요청합니다.
curl -X POST "https://kauth.kakao.com/oauth/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=authorization_code" \
-d "client_id=YOUR_REST_API_KEY" \
-d "redirect_uri=http://localhost" \
-d "code=AUTHORIZATION_CODE"
응답 JSON에서 access_token 값을 저장해 둡니다.
{
"access_token": "xxxxxx",
"token_type": "bearer",
"refresh_token": "yyyyyy",
"expires_in": 21599,
"scope": "talk_message",
"refresh_token_expires_in": 5183999
}
4단계: MCP 서버 설정 파일 작성
현재 카카오톡 전용 공개 MCP 서버 패키지는 공식 등록된 것이 없으므로, Claude Desktop에서 직접 커스텀 MCP 서버를 연결하는 방식으로 진행합니다. 가장 빠른 방법은 카카오 REST API를 래핑하는 간단한 Node.js MCP 서버를 작성하는 것입니다.
아래는 나에게 보내기 기능을 구현한 최소 MCP 서버 예시입니다. 파일명을 kakao-mcp-server.js로 저장합니다.
npm install @modelcontextprotocol/sdk node-fetch
서버 파일(kakao-mcp-server.js) 핵심 구조는 다음과 같습니다.
// kakao-mcp-server.js (최소 구현 예시)
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import fetch from "node-fetch";
const server = new Server(
{ name: "kakao-talk-mcp", version: "1.0.0" },
{ capabilities: { tools: {} } }
);
// send_kakao_message 도구 등록
server.setRequestHandler("tools/list", async () => ({
tools: [
{
name: "send_kakao_message",
description: "카카오톡 나에게 보내기로 메시지를 전송합니다",
inputSchema: {
type: "object",
properties: {
text: { type: "string", description: "전송할 메시지 내용" }
},
required: ["text"]
}
}
]
}));
server.setRequestHandler("tools/call", async (request) => {
if (request.params.name === "send_kakao_message") {
const text = request.params.arguments.text;
const res = await fetch("https://kapi.kakao.com/v2/api/talk/memo/default/send", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.KAKAO_ACCESS_TOKEN}`,
"Content-Type": "application/x-www-form-urlencoded"
},
body: new URLSearchParams({
template_object: JSON.stringify({ object_type: "text", text, link: {} })
})
});
const data = await res.json();
return { content: [{ type: "text", text: JSON.stringify(data) }] };
}
});
const transport = new StdioServerTransport();
await server.connect(transport);
Claude Desktop 설정 파일에 아래 항목을 추가합니다.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"kakao-talk": {
"command": "node",
"args": ["/절대경로/kakao-mcp-server.js"],
"env": {
"KAKAO_ACCESS_TOKEN": "여기에_액세스_토큰_입력"
}
}
}
}
5단계: 연동 테스트
Claude Desktop을 완전히 종료 후 재시작합니다. 재시작 후 Claude에게 다음과 같이 말해 보세요.
“카카오톡으로 ‘테스트 메시지입니다’를 나에게 보내줘.”
정상 동작 시 카카오톡 앱에 메시지가 수신됩니다. 응답이 없거나 오류가 발생하면 아래 흔한 오류 섹션을 참고하세요.
흔한 오류와 해결 방법
| 오류 메시지 | 원인 | 해결 방법 |
|---|---|---|
401 Unauthorized | 액세스 토큰 만료 또는 잘못된 값 | 토큰 재발급 후 설정 파일 업데이트 |
403 Forbidden | talk_message 권한 미설정 | 카카오 개발자 콘솔에서 동의항목 활성화 |
KOE101 | 존재하지 않는 앱 | REST API 키 재확인 |
spawn node ENOENT | Node.js 경로 문제 | which node로 절대경로 확인 후 command에 지정 |
| MCP 서버 연결 안 됨 | 설정 파일 경로 오류 | JSON 문법 검사 후 Claude Desktop 재시작 |
토큰 자동 갱신 처리
액세스 토큰은 약 6시간 후 만료됩니다. 리프레시 토큰으로 새 토큰을 발급하는 curl 명령은 다음과 같습니다.
curl -X POST "https://kauth.kakao.com/oauth/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=refresh_token" \
-d "client_id=YOUR_REST_API_KEY" \
-d "refresh_token=YOUR_REFRESH_TOKEN"
장기 운영이 필요하다면 이 명령을 크론잡으로 등록하거나, MCP 서버 내부에 토큰 갱신 로직을 추가하는 것을 권장합니다.
활용 시나리오
카카오톡 MCP를 연동한 뒤에는 다양한 AI 워크플로와 조합할 수 있습니다.
시나리오 1: 코드 배포 알림 CI/CD 파이프라인 완료 시점에 AI 에이전트가 배포 결과를 카카오톡으로 요약해서 전송합니다.
시나리오 2: 맞춤법 교정 후 발송 한국어 맞춤법 검사 MCP로 텍스트를 교정한 뒤, 카카오톡으로 최종 메시지를 보냅니다. 작성 → 교정 → 발송을 AI 에이전트 한 번의 명령으로 처리할 수 있습니다.
시나리오 3: 네이버 검색 결과 요약 전달 에이전트웹서치 MCP로 네이버에서 정보를 수집하고, AI가 요약한 내용을 카카오톡으로 발송합니다. 별도 뉴스레터 서비스 없이 나만의 AI 큐레이션 채널을 만들 수 있습니다.
시나리오 4: LINE WORKS 병행 운영 기업 환경에서 카카오톡과 LINE WORKS를 동시에 사용한다면 네이웍스 MCP 서버와 병행 연동해 채널별 맞춤 알림을 설정하세요.
보안 주의 사항
- 액세스 토큰을 코드에 직접 하드코딩하지 마세요. 설정 파일의
env항목이나 시스템 환경 변수를 사용하세요. - Claude Desktop 설정 파일(
claude_desktop_config.json)은 민감 정보를 포함하므로 git 저장소에 올리지 않도록.gitignore에 추가하세요. - 토큰을 의심스러운 제3자 MCP 서버에 제공하지 마세요. 직접 작성하거나 신뢰할 수 있는 오픈소스 코드를 검토한 뒤 사용하세요.
자주 묻는 질문
Q. 카카오톡 MCP를 사용하려면 카카오 개발자 계정이 필요한가요? 네, 카카오 메시지 API를 사용하려면 developers.kakao.com에서 개발자 계정을 만들고 애플리케이션을 등록해야 합니다. 개인 카카오 계정으로 가입할 수 있으며, 앱 등록은 무료입니다.
Q. 카카오톡 MCP로 채널 메시지도 보낼 수 있나요? 카카오 비즈니스 채널(구 카카오채널)을 통한 메시지는 별도의 카카오비즈니스 계정과 채널 권한이 필요합니다. 개인 계정 간 메시지는 카카오톡 메시지 API의 나에게 보내기·친구에게 보내기 기능으로 처리합니다.
Q. 액세스 토큰이 만료되면 어떻게 되나요? 카카오 액세스 토큰은 보통 6시간 후 만료됩니다. 리프레시 토큰(유효기간 최대 60일)을 사용해 새 액세스 토큰을 자동으로 재발급받도록 MCP 서버 로직을 구성하거나, 만료 시 재인증 안내를 설정해야 합니다.
Q. 카카오톡 MCP는 Windows에서도 동작하나요? Node.js 환경이 설치된 Windows, macOS, Linux 모두에서 실행할 수 있습니다. Claude Desktop 설정 파일 경로만 OS에 맞게 변경하면 됩니다.
Q. 카카오 API 무료 할당량은 얼마나 되나요? 카카오 메시지 API는 나에게 보내기의 경우 일정량 무료로 제공되지만, 친구에게 보내기는 카카오 비즈니스 연동 및 별도 심사가 필요합니다. 정확한 할당량과 제한은 카카오 개발자 공식 문서를 확인하세요.
Q. 카카오톡 외에 비슷한 한국 메시지 서비스를 MCP로 연결할 수 있나요? LINE WORKS(네이버웍스) 기반 메시징은 네이웍스 MCP 서버를 통해 연결할 수 있습니다. 메시지뿐 아니라 캘린더·드라이브·메일 등 26가지 도구를 제공합니다.
다음 단계
카카오톡 MCP 연동을 완료했다면, 다른 한국 서비스와 조합해 더 강력한 AI 워크플로를 구성해 보세요.
- 카카오/네이버 카테고리 전체 서버 보기 — 국내 서비스 특화 MCP 서버 목록
- MCP 서버 전체 목록 — 카테고리별로 정리된 MCP 서버 디렉토리
- 가이드 모음 — 카카오, 네이버, 공공데이터 등 국내 API 연동 가이드
- 나만의 MCP 서버 등록하기 — 직접 만든 카카오 MCP 서버를 MCP모아에 등록
카카오톡 외에도 LINE WORKS 연동이 필요하다면 네이웍스 MCP 서버를, 발송 전 텍스트 교정이 필요하다면 한국어 맞춤법 검사 MCP를 함께 활용해 보세요.