telegram-api-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TELEGRAM_BOT_TOKEN | Yes | Bot token from @BotFather | |
| TELEGRAM_META_MODE | No | Use 2 meta-tools instead of 169 (default: false) | |
| TELEGRAM_CB_COOLDOWN | No | Circuit breaker cooldown in ms (default: 30000) | |
| TELEGRAM_MAX_RETRIES | No | Retry attempts on transient errors (default: 3) | |
| TELEGRAM_CB_THRESHOLD | No | Failures before circuit opens (default: 5) | |
| TELEGRAM_MAX_FILE_SIZE | No | Max upload file size in bytes (default: 52428800) | |
| TELEGRAM_DEFAULT_CHAT_ID | No | Default chat ID for all tools | |
| TELEGRAM_DEFAULT_THREAD_ID | No | Default forum topic thread ID | |
| TELEGRAM_GLOBAL_RATE_LIMIT | No | Max requests/sec (default: 30) | |
| TELEGRAM_ALLOWED_UPLOAD_DIRS | No | Comma-separated allowed upload paths | |
| TELEGRAM_PER_CHAT_RATE_LIMIT | No | Max messages/min per group (default: 20) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| send_messageB | Send a text message to a chat. Supports HTML, Markdown, MarkdownV2 formatting. |
| send_photoB | Send a photo. Pass file_id, HTTP URL, or absolute file path. |
| send_audioB | Send an audio file. Telegram clients display it in the music player. |
| send_documentC | Send a general file (document). |
| send_videoC | Send a video file. Telegram clients support MPEG4 videos. |
| send_animationA | Send an animation (GIF or H.264/MPEG-4 AVC video without sound). |
| send_voiceB | Send a voice message (.OGG encoded with OPUS). |
| send_video_noteA | Send a video note (round video message, max 1 minute). |
| send_paid_mediaB | Send paid media that requires Stars payment to view. |
| send_media_groupA | Send a group of photos, videos, documents, or audios as an album (2-10 items). |
| send_locationC | Send a point on the map. |
| send_venueC | Send information about a venue. |
| send_contactC | Send a phone contact. |
| send_pollB | Send a poll or quiz. Supports v9.6 features: revoting, shuffle, user-added options, descriptions, multiple correct answers. |
| send_diceC | Send an animated emoji that displays a random value. |
| send_chat_actionB | Tell the user that the bot is performing an action (typing, uploading, etc). |
| set_message_reactionA | Set a reaction on a message. Use emoji or custom emoji. |
| send_checklistC | Send an interactive checklist (v9.1). |
| forward_messageC | Forward a message from one chat to another. |
| forward_messagesA | Forward multiple messages at once (maintains album grouping). |
| copy_messageA | Copy a message (sends without 'Forwarded from' header). Can change caption. |
| copy_messagesC | Copy multiple messages at once. |
| edit_message_textA | Edit the text of a message sent by the bot or via inline mode. |
| edit_message_captionA | Edit the caption of a media message. |
| edit_message_mediaA | Edit the media content of a message (photo, video, animation, document, audio). |
| edit_message_reply_markupC | Edit the inline keyboard of a message. |
| edit_message_live_locationC | Edit a live location message. |
| stop_message_live_locationB | Stop updating a live location message. |
| edit_message_checklistC | Edit a checklist message (v9.1). |
| delete_messageA | Delete a message. Bot must have delete rights in the chat. |
| delete_messagesA | Delete multiple messages at once. Max 100 messages. |
| stop_pollB | Stop a poll in a chat. |
| get_chatA | Get full information about a chat (title, description, photo, member count, permissions, etc). |
| get_chat_administratorsA | Get a list of administrators in a chat. |
| get_chat_member_countA | Get the number of members in a chat. |
| get_chat_memberB | Get information about a member in a chat. |
| ban_chat_memberA | Ban a user from a chat. In supergroups/channels, the user cannot return without being unbanned. |
| unban_chat_memberB | Unban a previously banned user. |
| restrict_chat_memberB | Restrict a user's permissions in a supergroup. |
| promote_chat_memberB | Promote or demote a user in a supergroup or channel. |
| set_chat_administrator_custom_titleC | Set a custom title for an administrator. |
| set_chat_member_tagA | Set or remove a tag for a chat member (v9.5). |
| ban_chat_sender_chatA | Ban a channel chat from sending messages in a supergroup. |
| unban_chat_sender_chatA | Unban a previously banned channel chat. |
| set_chat_permissionsA | Set default permissions for all members in a group/supergroup. |
| set_chat_photoB | Set a new chat photo. |
| delete_chat_photoA | Delete a chat photo. |
| set_chat_titleB | Change the title of a chat. |
| set_chat_descriptionB | Change the description of a chat. |
| set_chat_sticker_setB | Set the sticker set for a supergroup. |
| delete_chat_sticker_setA | Delete the sticker set from a supergroup. |
| leave_chatA | Bot leaves a group, supergroup, or channel. |
| pin_chat_messageC | Pin a message in a chat. |
| unpin_chat_messageA | Unpin a message in a chat. |
| unpin_all_chat_messagesB | Unpin all messages in a chat. |
| export_chat_invite_linkA | Generate a new primary invite link (revokes previous one). |
| create_chat_invite_linkC | Create an additional invite link. |
| edit_chat_invite_linkB | Edit a non-primary invite link. |
| revoke_chat_invite_linkC | Revoke an invite link. |
| approve_chat_join_requestA | Approve a chat join request. |
| decline_chat_join_requestB | Decline a chat join request. |
| get_user_chat_boostsA | Get a user's boosts in a chat. |
| get_meA | Get basic information about the bot (id, name, username, etc). |
| log_outA | Log out from the cloud Bot API server. Use before moving to a local server. |
| closeA | Close the bot instance. Use before moving between local servers. |
| set_my_commandsC | Set the bot's command list shown in the menu. |
| delete_my_commandsB | Delete the bot's command list for a given scope and language. |
| get_my_commandsA | Get the bot's current command list. |
| set_my_nameC | Set the bot's name. |
| get_my_nameA | Get the bot's name for a given language. |
| set_my_descriptionA | Set the bot's description (shown in empty chat). |
| get_my_descriptionB | Get the bot's description. |
| set_my_short_descriptionA | Set the bot's short description (shown on profile page). |
| get_my_short_descriptionB | Get the bot's short description. |
| set_my_default_administrator_rightsA | Set default admin rights requested when adding bot to groups/channels. |
| get_my_default_administrator_rightsB | Get default admin rights. |
| set_my_profile_photoC | Set the bot's profile photo (v9.4). |
| remove_my_profile_photoC | Remove the bot's profile photo (v9.4). |
| get_user_profile_photosC | Get a user's profile photos. |
| get_user_profile_audiosB | Get a user's profile audio tracks (v9.4). |
| get_fileA | Get file info for downloading. Returns file_path — use https://api.telegram.org/file/bot/ to download. |
| get_forum_topic_icon_stickersA | Get custom emoji stickers that can be used as forum topic icons. |
| create_forum_topicA | Create a topic in a forum supergroup or private chat (v9.4+). |
| edit_forum_topicA | Edit name and icon of a forum topic. |
| close_forum_topicA | Close an open topic in a forum supergroup. |
| reopen_forum_topicB | Reopen a closed topic. |
| delete_forum_topicA | Delete a forum topic along with all its messages. |
| unpin_all_forum_topic_messagesC | Unpin all messages in a forum topic. |
| edit_general_forum_topicA | Edit the name of the 'General' forum topic. |
| close_general_forum_topicC | Close the 'General' topic. |
| reopen_general_forum_topicA | Reopen the 'General' topic. |
| hide_general_forum_topicB | Hide the 'General' topic. |
| unhide_general_forum_topicB | Unhide the 'General' topic. |
| unpin_all_general_forum_topic_messagesA | Unpin all messages in the 'General' topic. |
| send_stickerC | Send a sticker. |
| get_sticker_setA | Get a sticker set by name. |
| get_custom_emoji_stickersA | Get information about custom emoji stickers by their identifiers. |
| upload_sticker_fileA | Upload a sticker file to Telegram for later use in createNewStickerSet. |
| create_new_sticker_setC | Create a new sticker set owned by a user. |
| add_sticker_to_setC | Add a sticker to an existing set. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/timoncool/telegram-api-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server