kakao_read_messages
Read KakaoTalk chat messages from a local database page by page, with date filters and pagination to retrieve oldest or newest messages without marking them as read.
Instructions
Read one chat's messages, a page at a time. Messages in a page are oldest first.
Does not open KakaoTalk or mark anything as read. Each message has a message_id, time (KST), sender ("me" for the user), type and text.
Paging:
No cursor: the newest page (or the oldest page with oldest_first=true).
Go back in time: pass before=; stop when older_cursor is null.
Go forward: pass after=; stop when newer_cursor is null.
since/until apply per call: pass them again on every page. Examples: whole chat from the start -> oldest_first=true, then follow newer_cursor. Everything since March -> since="2026-03-01", oldest_first=true.
Messages of type photo, photos (several photos), video, file, voice and
emoticon carry an attachment summary; get the content (emoticons and
photos as images) with kakao_get_attachment. A "reply" has reply_to
(the quoted message's id and text). reactions lists reactions on a
message: {"emoticon": name like "사랑" or "엄지척", "count", "mine"}, or for
older messages {"reaction": heart|like|check|laugh|surprise|sad (best-effort
name), "code", "count", "mine"}. Only counts and whether the user reacted
are recorded, not who else did.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | `newer_cursor` from a previous page: get the page after it. | |
| limit | No | Messages per page. Default 100, max 1000 (larger values are capped). | |
| since | No | Relative ("30m", "12h", "7d", "2w") or a KST date/time ("2026-03-01" or "2026-03-01 14:00"). A date-only `until` means the end of that day. | |
| until | No | Relative ("30m", "12h", "7d", "2w") or a KST date/time ("2026-03-01" or "2026-03-01 14:00"). A date-only `until` means the end of that day. | |
| before | No | `older_cursor` from a previous page: get the page before it. | |
| chat_id | Yes | Chat id STRING from kakao_list_chats or kakao_search, passed back unchanged (ids exceed 2^53, so never convert them to numbers). | |
| oldest_first | No | Start from the oldest message (within since/until) instead of the newest. Use to read a chat from the beginning. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||