Skip to main content
Glama
telegram-api-mcp

telegram-api-mcp

by EngDawood

copy_message

Copies a Telegram message to another chat without a 'Forwarded from' header and lets you set a new caption.

Instructions

Copy a message (sends without 'Forwarded from' header). Can change caption.

Input Schema

NameRequiredDescriptionDefault
captionNoCaption (0-1024 visible chars; HTML tags/URLs excluded)
chat_idYesChat ID or @username
message_idYes
parse_modeNo
from_chat_idYes
reply_markupNo
protect_contentNo
caption_entitiesNo
reply_parametersNo
message_effect_idNo
message_thread_idNo
allow_paid_broadcastNo
disable_notificationNo
video_start_timestampNo
direct_messages_topic_idNo
show_caption_above_mediaNo
suggested_post_parametersNoSuggestedPostParameters object (price, send_date) — direct messages chats only

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already disclose a non-read-only, non-idempotent, open-world write with no destructive hint, and "sends without 'Forwarded from' header" is consistent with that. The description adds useful behavioral context (a new message is created rather than a forward being recorded) but says nothing about required read access to the source chat, whether the source message is altered, or rate/paid-broadcast behavior despite allow_paid_broadcast being a parameter.

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?

Two short clauses, front-loaded with the action and the defining distinction, with no filler. It is efficient, though its brevity is a symptom of under-specification rather than disciplined selection of the most important details.

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

Completeness2/5

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

For a 17-parameter Telegram write operation with no output schema and thin schema descriptions, this definition is far too sparse. An agent gets no information on required chat/from_chat_id/message_id semantics, threading, notification suppression, or what the call returns (presumably the new message id).

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

Parameters2/5

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

Schema description coverage is only 18% across 17 parameters, so the description must compensate and does not. It mentions only the caption override, leaving message_thread_id, protect_content, message_effect_id, allow_paid_broadcast, suggested_post_parameters, and the reply/markup family entirely unexplained in both the schema and the prose.

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 description names a specific verb and resource ("Copy a message") and adds the key behavioral distinction from forward_message: the copy is sent without a "Forwarded from" header. It does not explicitly contrast itself with the very similar siblings forward_message and copy_messages (plural), so the differentiation is implied 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?

The parenthetical about lacking a forwarded header implicitly tells an agent when to prefer this over forward_message, and the caption note hints at the edit-at-copy-time use case. However, there is no explicit when-to-use statement, no mention of when to use copy_messages instead, and no prerequisite or permission guidance.

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

Deploy Server

Other Tools