Skip to main content
Glama
draiqw
by draiqw

tg_mark_read

Idempotent

Mark a Telegram chat as read or unread, clear mention badges, and flag chats as unread to remind yourself to revisit them.

Instructions

Mark a chat as read, or put the unread mark back on it.

Args: chat: chat id, @username, exact title or "me". clear_mentions: also clear the mention badge. unread: true flips it the other way — the chat shows as unread again, which is how the owner keeps a reminder to come back to it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
chatYes
unreadNo
clear_mentionsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a non-read-only, idempotent, non-destructive operation. The description adds useful behavioral detail: clear_mentions 'also clear the mention badge' and unread true 'flips it the other way,' showing the state changes the call will cause. There is no contradiction with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded: core behavior first, then a compact Args list. The reminder phrase is not filler – it explains why the unread mode is useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple state-toggle tool with three scalar parameters and strong annotations, the description is complete enough to invoke correctly. It covers all argument forms and the main side-effect options; return-value details are not necessary for selection or invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the Args section fully compensates by explaining all three parameters. chat accepts 'chat id, @username, exact title or "me"', clear_mentions is defined as clearing the mention badge, and unread is explained as flipping the chat to unread.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a concrete action and resource: 'Mark a chat as read, or put the unread mark back on it,' and the unread flag makes the two-way behavior explicit. It is clear, but it does not explicitly distinguish itself from sibling tools such as tg_unread or tg_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No alternatives are mentioned and there is no explicit when-to-use or when-not-to-use guidance. The only usage context is the rationale for unread ('how the owner keeps a reminder to come back to it'), which is not enough to route an agent among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.