telegram-bot-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TELEGRAM_BOT_TOKEN | Yes | Telegram Bot API token from @BotFather | |
| TELEGRAM_DEFAULT_CHAT_ID | No | Default chat ID for tool calls | |
| TELEGRAM_DEFAULT_THREAD_ID | No | Default topic/thread ID for forum supergroups |
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_messageA | Send a text message to a Telegram chat. Supports Markdown and HTML formatting. If chat_id is omitted, sends to the default log group. |
| send_photoB | Send a photo to a Telegram chat. Can send from URL or local file path. If chat_id is omitted, sends to the default log group. |
| send_documentA | Send a file/document to a Telegram chat. Can send from URL, file_id or local file path. If chat_id is omitted, sends to the default log group. |
| send_videoB | Send a video to a Telegram chat. Can send from URL or local file path. If chat_id is omitted, sends to the default log group. |
| send_audioB | Send an audio file to a Telegram chat. Can send from URL or local file path. If chat_id is omitted, sends to the default log group. |
| send_voiceA | Send a voice message to a Telegram chat. Can send from URL or local file path. If chat_id is omitted, sends to the default log group. |
| send_animationA | Send an animation (GIF) to a Telegram chat. Can send from URL or local file path. If chat_id is omitted, sends to the default log group. |
| send_video_noteA | Send a video note (round video message) to a Telegram chat. Can send from URL or local file path. If chat_id is omitted, sends to the default log group. |
| send_media_groupA | Send a group of photos or videos as an album. If chat_id is omitted, sends to the default log group. |
| send_locationA | Send a location point to a Telegram chat. If chat_id is omitted, sends to the default log group. |
| send_venueB | Send a venue location to a Telegram chat. If chat_id is omitted, sends to the default log group. |
| send_contactB | Send a contact to a chat. If chat_id is omitted, sends to the default log group. |
| send_pollB | Send a poll to a Telegram chat. If chat_id is omitted, sends to the default log group. |
| send_diceB | Send a dice roll animation to a chat. If chat_id is omitted, sends to the default log group. |
| send_stickerA | Send a sticker to a Telegram chat. Can send from URL, file_id or local file path. If chat_id is omitted, sends to the default log group. |
| send_paid_mediaC | Send paid media to a chat. |
| send_checklistB | Send a checklist message to a chat. |
| send_message_draftC | Send a draft message that can be updated progressively. |
| send_chat_actionB | Send a chat action (typing, upload_photo, etc.) to show the bot is doing something. |
| send_business_messageA | Send a text message on behalf of a business account. Requires business_connection_id. |
| edit_messageB | Edit a previously sent text message. If chat_id is omitted, targets the default log group. |
| edit_message_captionA | Edit caption of a previously sent message with media. If chat_id is omitted, targets the default log group. |
| edit_message_mediaB | Edit media content of a previously sent message. Pass a JSON string as media parameter with InputMedia object. |
| edit_message_reply_markupA | Edit only the reply markup (inline keyboard) of a previously sent message. If chat_id is omitted, targets the default log group. |
| edit_message_live_locationA | Edit a live location message. The location must be live (sent with live_period). If chat_id is omitted, targets the default log group. |
| stop_message_live_locationA | Stop updating a live location message. If chat_id is omitted, targets the default log group. |
| edit_message_checklistC | Edit a checklist message. |
| edit_business_message_textB | Edit a text message sent on behalf of a business account. |
| edit_business_message_captionB | Edit caption of a media message sent on behalf of a business account. |
| edit_business_message_mediaB | Edit media content of a message sent on behalf of a business account. |
| forward_messageC | Forward a message from one chat to another. If chat_id is omitted, forwards to the default log group. |
| forward_messagesB | Forward multiple messages from one chat to another. |
| copy_messageB | Copy a message from one chat to another. Can copy any message type. If chat_id is omitted, copies to the default log group. |
| copy_messagesB | Copy multiple messages from one chat to another. |
| delete_messageA | Delete a message from a chat. Bot must have delete permissions. If chat_id is omitted, targets the default log group. |
| delete_messagesB | Delete multiple messages in a chat (up to 100 at once). |
| pin_messageA | Pin a message in a chat. Bot must have pin permissions. If chat_id is omitted, targets the default log group. |
| unpin_messageA | Unpin a message in a chat. If message_id is not specified, unpin the last pinned message. If chat_id is omitted, targets the default log group. |
| unpin_all_chat_messagesA | Unpin all messages in a chat. If chat_id is omitted, targets the default log group. |
| set_message_reactionB | Set a reaction on a message. |
| get_fileA | Get information about a file stored on Telegram servers. Returns file path for downloading. |
| stop_pollA | Stop a poll and mark it as closed. If chat_id is omitted, targets the default log group. |
| get_chat_infoA | Get info about a chat (title, type, members count, description, etc). If chat_id is omitted, returns info about the default log group. |
| get_chat_memberA | Get information about a member of a chat. If chat_id is omitted, targets the default log group. |
| get_chat_member_countA | Get the number of members in a chat. If chat_id is omitted, targets the default log group. |
| get_chat_administratorsB | Get a list of administrators in a chat. If chat_id is omitted, targets the default log group. |
| leave_chatA | Leave a chat. The bot will no longer receive updates from this chat. |
| set_chat_titleA | Set a new title for a chat. If chat_id is omitted, targets the default log group. |
| set_chat_descriptionA | Set a new description for a chat. If chat_id is omitted, targets the default log group. |
| set_chat_photoA | Set a new profile photo for a chat. If chat_id is omitted, targets the default log group. |
| delete_chat_photoA | Delete the chat profile photo. If chat_id is omitted, targets the default log group. |
| set_chat_permissionsB | Set default chat permissions for all members. If chat_id is omitted, targets the default log group. |
| set_chat_menu_buttonC | Set the menu button for a private chat or all chats. |
| get_chat_menu_buttonA | Get the current menu button for a private chat or default. |
| export_chat_invite_linkB | Export the primary invite link for a chat. If chat_id is omitted, targets the default log group. |
| create_chat_invite_linkA | Create a new invite link for a chat. If chat_id is omitted, targets the default log group. |
| edit_chat_invite_linkB | Edit an existing invite link for a chat. If chat_id is omitted, targets the default log group. |
| revoke_chat_invite_linkB | Revoke an invite link for a chat. If chat_id is omitted, targets the default log group. |
| create_chat_subscription_invite_linkB | Create a subscription invite link for a channel chat. |
| edit_chat_subscription_invite_linkC | Edit a subscription invite link. |
| ban_chat_memberB | Ban a user from a chat. If chat_id is omitted, targets the default log group. |
| unban_chat_memberC | Unban a previously banned user in a chat. If chat_id is omitted, targets the default log group. |
| restrict_chat_memberB | Restrict a user's permissions in a chat. If chat_id is omitted, targets the default log group. |
| promote_chat_memberA | Promote a user to admin in a chat. If chat_id is omitted, targets the default log group. |
| set_chat_administrator_custom_titleB | Set a custom title for an admin in a chat. If chat_id is omitted, targets the default log group. |
| set_chat_member_tagB | Set a tag for a chat member. |
| ban_chat_sender_chatA | Ban a channel chat in a supergroup or channel. The owner of the sender chat won't be able to send messages on behalf of their chat. |
| unban_chat_sender_chatC | Unban a previously banned channel chat in a supergroup or channel. |
| approve_chat_join_requestB | Approve a user's join request to a chat. |
| decline_chat_join_requestB | Decline a user's join request to a chat. |
| verify_userC | Verify a user on behalf of the bot. |
| verify_chatB | Verify a chat on behalf of the bot. |
| remove_user_verificationB | Remove verification from a user. |
| remove_chat_verificationB | Remove verification from a chat. |
| approve_suggested_postC | Approve a suggested post. |
| decline_suggested_postC | Decline a suggested post. |
| unpin_all_general_forum_topic_messagesB | Unpin all messages in the General forum topic. |
| get_meA | Get info about the bot (username, name, id). Use to verify the bot is working. |
| log_outB | Log out the bot from Telegram Bot API. |
| close_botA | Close the bot instance (can be restarted later). |
| get_updatesB | Get recent incoming messages and updates. Returns latest messages sent to the bot. |
| set_my_commandsB | Set the bot's commands for the given scope. |
| delete_my_commandsB | Delete the bot's commands for the given scope. |
| get_my_commandsC | Get the current list of bot commands. |
| get_my_nameB | Get the current bot name. |
| set_my_nameA | Set the bot name (max 64 chars). Empty string removes the name. |
| get_my_descriptionB | Get the current bot description. |
| set_my_descriptionB | Set the bot description (max 512 chars). |
| get_my_short_descriptionB | Get the current bot short description. |
| set_my_short_descriptionA | Set the bot short description (max 120 chars). |
| set_my_default_administrator_rightsB | Set the bot's default administrator rights. |
| get_my_default_administrator_rightsB | Get the bot's default administrator rights. |
| get_user_chat_boostsB | Get boosts added by a user to a chat. |
| get_business_connectionC | Get info about a business connection. |
| answer_callback_queryA | Answer a callback query from an inline button press. Must be called after receiving a callback_query update. |
| answer_inline_queryC | Answer an inline query with results. |
| answer_web_app_queryB | Answer a Web App query sent via a Web App integration. |
| set_passport_data_errorsB | Report errors in Telegram Passport data. |
| get_user_profile_photosB | Get a user's profile pictures. |
| get_user_profile_audiosB | Get audios added to a user's profile. |
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
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/FantomaSkaRus1/telegram-bot-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server