Kakao Bot Mcp Server
About
Connects an AI agent to a Kakao Official Account using the Kakao Developers API.
Explore
- Send Kakao Talk messages to yourself (text, feed, list, location, calendar, commerce templates)
- List, create, update, and delete sub‑calendars via TalkCalendar API
- Integrates with MCP‑compatible AI agents (e.g., Claude Desktop)
- Demonstrates usage of Kakao Developers API through an MCP server
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Kakao Bot Mcp ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Create a Kakao application on developers.kakao.com, configure the required settings (platform, business app, Kakao Login, consent items), then clone the repository and set up a local environment with uv. All tools require the __email_address__ input to identify the user’s credentials.
__email_address__
(string, required): The email address associated with the Kakao account.
text
(string, required, max 200 characters): The text content of the message.
link
(object, required): An object defining the link associated with the text.
web_url
(string, optional, uri format)
mobile_web_url
(string, optional, uri format)
button_title
(string, optional): The title of the button.
content
(object, required): The main content block of the feed message.
title
(string, required)
description
(string, required)
image_url
(string, required, uri format)
image_width
(integer, optional)
image_height
(integer, optional)
android_execution_params
(string, optional)
ios_execution_params
(string, optional)
item_content
(object, optional): Additional item content for the feed. (See API documentation for nested structure)
social
(object, optional): Social information like likes, comments, etc. (See API documentation for nested structure)
buttons
(array of objects, optional): Buttons to include with the message. (Each object requires `title` and `link`)
header_title
(string, required): The title displayed at the top of the list.
contents
(array of objects, required): A list of content items. Each item requires:
header_link
(object, optional): A link for the header area. (See API documentation for nested structure)
address
(string, required): The address of the location.
address_title
(string, optional): A title for the address.
id_type
(string, required, enum: "event"): The type of calendar item.
id
(string, required): The ID of the calendar item.
commerce
(object, required): Commerce-specific information.
regular_price
(integer, required)
discount_price
(integer, optional)
discount_rate
(integer, optional, 0-100)
name
(string, required): The name of the sub calendar.
color
(string, optional): The default color for events in the calendar.
reminder
(integer, optional): The default reminder time for non-all-day events in minutes.
reminder_all_day
(integer, optional): The default reminder time for all-day events in minutes.
calendar_id
(string, required): The ID of the sub calendar to update.
All tools require the __email_address__ input to identify the user's credentials.
<details>
<summary><h3>Kakao TalkMessage API</h3></summary>
- 작성시점 기준, '나에게 보내기 - 기본 템플릿' API만 지원됩니다.
- 참고문서: https://developers.kakao.com/docs/latest/ko/kakaotalk-message/rest-api#default-template-msg-me
1. send_text_template_to_me
Description: Sends a Kakao Talk text message to me.
Inputs:
__email_address__ (string, required): The email address associated with the Kakao account.
text (string, required, max 200 characters): The text content of the message.
link (object, required): An object defining the link associated with the text.
web_url (string, optional, uri format)
mobile_web_url (string, optional, uri format)
button_title (string, optional): The title of the button.
2. send_feed_template_to_me
Description: Sends a Kakao Talk feed message to me.
Inputs:
__email_address__ (string, required)
content (object, required): The main content block of the feed message.
title (string, required)
description (string, required)
image_url (string, required, uri format)
image_width (integer, optional)
image_height (integer, optional)
link (object, required) - defines the link for the content
web_url (string, optional, uri format)
mobile_web_url (string, optional, uri format)
android_execution_params (string, optional)
ios_execution_params (string, optional)
item_content (object, optional): Additional item content for the feed. (See API documentation for nested structure)
social (object, optional): Social information like likes, comments, etc. (See API documentation for nested structure)
buttons (array of objects, optional): Buttons to include with the message. (Each object requires title and link)
3. send_list_template_to_me
Description: Sends a Kakao Talk list message to me.
Inputs:
__email_address__ (string, required)
header_title (string, required): The title displayed at the top of the list.
contents (array of objects, required): A list of content items. Each item requires:
title (string, required)
description (string, required)
image_url (string, required, uri format)
image_width (integer, optional)
image_height (integer, optional)
link (object, required) - defines the link for the list item
web_url (string, optional, uri format)
mobile_web_url (string, optional, uri format)
android_execution_params (string, optional)
ios_execution_params (string, optional)
header_link (object, optional): A link for the header area. (See API documentation for nested structure)
buttons (array of objects, optional): Buttons to include with the message. (Each object requires title and link)
4. send_location_template_to_me
Description: Sends a Kakao Talk location message to me.
Inputs:
__email_address__ (string, required)
content (object, required): The main content block for the location message.
title (string, required)
description (string, required)
image_url (string, required, uri format)
image_width (integer, optional)
image_height (integer, optional)
link (object, required) - defines the link for the content
web_url (string, optional, uri format)
mobile_web_url (string, optional, uri format)
android_execution_params (string, optional)
ios_execution_params (string, optional)
address (string, required): The address of the location.
buttons (array of objects, optional): Buttons to include with the message. (Each object requires title and link)
address_title (string, optional): A title for the address.
5. send_calendar_template_to_me
Description: Sends a Kakao Talk calendar message to me.
Inputs:
__email_address__ (string, required)
content (object, required): The main content block for the calendar message.
title (string, required)
description (string, required)
link (object, required) - defines the link for the content
web_url (string, optional, uri format)
mobile_web_url (string, optional, uri format)
android_execution_params (string, optional)
ios_execution_params (string, optional)
image_url (string, optional, uri format)
id_type (string, required, enum: "event"): The type of calendar item.
id (string, required): The ID of the calendar item.
buttons (array of objects, optional): Buttons to include with the message. (Each object requires title and link)
6. send_commerce_template_to_me
Description: Sends a Kakao Talk commerce message to me.
Inputs:
__email_address__ (string, required)
content (object, required): The main content block for the commerce message.
title (string, required)
image_url (string, required, uri format)
image_width (integer, optional)
image_height (integer, optional)
link (object, required) - defines the link for the content
web_url (string, optional, uri format)
mobile_web_url (string, optional, uri format)
android_execution_params (string, optional)
ios_execution_params (string, optional)
commerce (object, required): Commerce-specific information.
regular_price (integer, required)
discount_price (integer, optional)
discount_rate (integer, optional, 0-100)
buttons (array of objects, optional): Buttons to include with the message. (Each object requires title and link)
</details>
<details>
<summary><h3>Kakao TalkCalendar API</h3></summary>
- 카카오 톡캘린더 API를 통해 사용자의 캘린더를 조회하고 관리하는 도구입니다.
- 작성시점 기준 '사용자 캘린더 - 목록 가져오기, 서브 캘린더 생성 / 수정 / 삭제' 기능만 지원됩니다.
- 톡캘린더 API는 카카오에 사용 권한을 신청해야 합니다. 신청 방법은 https://developers.kakao.com/docs/latest/ko/talkcalendar/common#policy-request-permission 를 참고하세요.
- 참고문서: https://developers.kakao.com/docs/latest/ko/talkcalendar/rest-api
1. get_calendar_list
Description: Retrieves the list of user calendars.
Inputs:
__email_address__ (string, required): The email address associated with the Kakao account.
2. create_sub_calendar
Description: Creates a new sub-calendar for the user.
Inputs:
__email_address__ (string, required): The email address associated with the Kakao account.
name (string, required): The name of the sub calendar.
color (string, optional): The default color for events in the calendar.
reminder (integer, optional): The default reminder time for non-all-day events in minutes.
reminder_all_day (integer, optional): The default reminder time for all-day events in minutes.
3. update_sub_calendar
Description: Updates an existing sub-calendar.
Inputs:
__email_address__ (string, required): The email address associated with the Kakao account.
calendar_id (string, required): The ID of the sub calendar to update.
name (string, optional): The new name for the sub calendar.
color (string, optional): The new default color for events in the calendar.
reminder (integer, optional): The new default reminder time for non-all-day events in minutes.
reminder_all_day (integer, optional): The new default reminder time for all-day events in minutes.
4. delete_sub_calendar
Description: Deletes a user's sub-calendar.
Inputs:
__email_address__ (string, required): The email address associated with the Kakao account.
calendar_id (string, required): The ID of the sub calendar to delete.
</details>
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"kakao bot mcp server": {
"kakao-bot-mcp-server": {
"command": "uv",
"args": [
"sync"
]
}
}
}
}
McpServers
{
"kakao-bot-mcp-server": {
"command": "uv",
"args": [
"sync"
]
}
}
<!-- TOC -->
- Kakao Bot MCP Server
- 예시
- Tools
- installation
- Step 1. developers.kakao.com 에서 카카오 애플리케이션 생성
- Step 2. 로컬환경 설정
<!-- /TOC -->
Model Context Protocol (MCP) server implementation that integrates the Kakao Developers API to connect an AI Agent to the Kakao Official Account.
MCP Server 구현체로, 카카오 Developers API를 AI Agent에 통합하는 예시입니다.
<br>
> [!NOTE]
> This repository is NOT officially provided or maintained by Kakao. <br>
> It may not include complete functionality or comprehensive support. <br>
> 카카오의 경우 대부분의 API가 사업자등록이 포함된 비즈니스 애플리케이션 단위로 권한을 관리하고 있으므로, <br>
> 개인이 사용하기엔 제한적입니다.
<br>
참고문서: https://developers.kakao.com/docs/latest/ko/kakaotalk-message/rest-api
---
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



