Mark chat read
mark_readMarks an authorized Telegram chat as read and emits read receipts, with optional message ID or forum topic ID to control what is marked.
Instructions
Mark an in-scope chat read, emitting read receipts. Provide maxMessageId to mark read up to a specific message, or omit it to mark the whole dialog read. For a forum supergroup, add topicId (with maxMessageId) to mark a single topic read. Out-of-scope chats are rejected.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"peer": "<peer>"
},
"name": "mark_read"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| peer | Yes | Chat reference: { kind:'id', value:'<decimal id>' } | { kind:'username', value:'@name' } | { kind:'me' }. | |
| topicId | No | Mark one forum topic read instead of the whole chat; requires maxMessageId (Telegram has no whole-topic form). | |
| maxMessageId | No | Mark read up to and including this message id; omit to mark the entire dialog read. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| chat_id | Yes | Chat that was marked read. | |
| max_read_message_id | Yes | High-water-mark message id marked read (0 when the whole dialog was marked). |