Skip to main content
Glama
draiqw
by draiqw

tg_remind

Set a reminder for a later time, and have it automatically drop if the specified chat or person replies before the deadline.

Instructions

Remind the owner later, through the agent's bot, optionally only if nobody replied.

This is the answer to "remind me in two hours if Lena hasn't answered" and "at 18:00 remind me about the invoice". Unlike tg_wait it does not block and is not capped at ten minutes: the daemon stores it on disk and it survives a restart. Nothing is sent to anyone but the owner.

With unless_reply the reminder cancels itself as soon as an incoming message from that chat or person arrives, so a person who answers in time never triggers a nag.

Args: text: what to remind about, in the owner's own words. when: "+2h", "+30m", "+3d" or an absolute "2026-08-18T09:00" (local time). chat: the chat or person this is about; required for unless_reply. unless_reply: drop the reminder if that chat writes before the deadline. list: show the active reminders instead of creating one. cancel: id of a reminder to drop, as returned by list.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
chatNo
listNo
textNo
whenNo
cancelNo
unless_replyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A5/5.0
Behavior5/5

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

Beyond the annotations, it discloses that the reminder is stored on disk, survives restarts, never sends anything to anyone but the owner, and self-cancels when an incoming message arrives. This is rich behavioral context about persistence, privacy, and cancellation that annotations alone do not provide.

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 compact yet fully informative: a one-sentence purpose, two clarifying examples, the key distinction from tg_wait, and a structured Args section. Every sentence adds meaning, and the most important behavioral facts are front-loaded.

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 tool with six parameters, no output schema, and subtle reminder semantics, the description covers purpose, timing formats, cancellation, persistence, ownership, and the list/cancel modes. Nothing essential is missing for an agent to invoke it correctly.

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%, so the description carries the full burden, and it succeeds: text, when (with format examples), chat, unless_reply, list, and cancel are all explained in plain language. It even includes required-conditional information for chat and explains that cancel uses ids returned by list.

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

Purpose5/5

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

The description opens with a specific verb-resource statement: 'Remind the owner later, through the agent's bot, optionally only if nobody replied.' It names the exact use cases with examples and explicitly distinguishes itself from tg_wait, saying it does not block and is not capped at ten minutes.

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

Usage Guidelines5/5

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

The description gives concrete scenarios ('remind me in two hours if Lena hasn't answered'), explains when to choose it over tg_wait, and clarifies the cancellation behavior for unless_reply. This lets an agent decide when to use this tool versus a sibling without ambiguity.

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