Skip to main content
Glama
qrak

telegram-commandcode

by qrak

telegram_send_message

Send text messages to Telegram chats using MarkdownV2 or HTML formatting; split messages over 4096 characters before sending.

Instructions

Send a text message to a Telegram chat. Supports MarkdownV2 and HTML parse modes. Messages longer than 4096 characters are rejected by Telegram — split them first.

Input Schema

NameRequiredDescriptionDefault
textYesMessage text to send.
chat_idNoTarget chat ID (user, group, or channel). Omit to use TELEGRAM_DEFAULT_CHAT_ID.
parse_modeNoFormatting mode. MarkdownV2 requires escaping _ * [ ] ( ) ~ ` > # + - = | { } . !

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.2.0

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description usefully adds the 4096-character rejection limit and the supported parse modes, but says nothing about rate limits, error behavior, or what the call returns.

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?

Three short sentences, front-loaded with purpose, then capabilities, then a hard constraint that prevents a failure mode. No filler.

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

Completeness4/5

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

For a simple three-parameter send tool with annotations and a full-coverage schema, the description plus structured fields give an agent everything needed to invoke it correctly. Only rate-limit/error and return-value expectations are absent, which is minor for a mutation with no output schema.

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 description coverage is 100%, so all three parameters are already documented, including the escape rules for MarkdownV2 and the default chat_id fallback. The description reinforces the length constraint on text but adds no new per-parameter semantics; baseline 3 applies.

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?

States a clear verb and resource ("Send a text message to a Telegram chat") and the word "text" implicitly distinguishes it from telegram_send_photo and telegram_send_file. It never names those siblings explicitly, so differentiation is inferential rather than stated.

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

Usage Guidelines3/5

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

Sending a text message is the obvious implied use case, and the 4096-character note implies "split instead of calling this." But there is no explicit routing to alternatives (send_photo/send_file) or statement of prerequisites such as needing a valid chat_id or bot permissions.

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