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 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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
- 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/FantomaSkaRus1/telegram-bot-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server