Skip to main content
Glama

Send a Telegram message

telegram_send_message
Destructive

Send a message to a real person from the user's own Telegram account. This is irreversible and visible to the recipient immediately. Confirm the exact wording and the recipient with the user before calling. Only chats already in the archive can be messaged; resolve the person with telegram_find_chat first. Telegram accepts a business reply only within 24 hours of that person's last message — outside that window this fails, and nothing but their next message reopens it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesExactly the text to send.
chat_idYesRecipient, from telegram_find_chat.
reply_to_message_idNoQuote this message_id in the reply.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations declare destructive/non-idempotent/openWorld, but the description adds context annotations cannot capture: the action is irreversible and immediately visible to the recipient, only archived chats are eligible, and there is a hard 24-hour business-reply window that cannot be reopened except by the recipient messaging first. These are exactly the behavioral traits an agent needs before calling.

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

Conciseness4/5

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

Front-loaded with purpose and irreversibility, and every sentence contributes something (confirmation, archive constraint, 24-hour window). It is on the denser side, but no sentence is filler, so only minor trimming would be possible.

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 mutation tool with no output schema, the description covers the full picture: what it does, that it cannot be undone, what preconditions must hold, and the specific failure window. Nothing an agent needs before calling is missing.

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

Parameters3/5

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

Schema coverage is 100% and it documents all three parameters (text, chat_id, reply_to_message_id) with meaning, so the schema carries the load. The description only implicitly points at chat_id via the telegram_find_chat reference and adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb and resource ('Send a message to a real person from the user's own Telegram account') and immediately distinguishes itself from the bot-based siblings by scoping to the user's personal account. An agent can differentiate it from telegram_send_media and telegram_bot_direct_messages without opening any schema.

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?

Explicit when-prerequisites are given: confirm wording and recipient with the user, and resolve the person with telegram_find_chat first. It also names the failure condition (24-hour window) that governs whether the call can succeed at all. This is about as complete as usage guidance gets.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources