Telegram Automation via Rube MCP
Selective Reading Rule
Start with:
references/senior-master-standard.md
references/usage-routing.md
references/quality-checklist.md
Then load only the inherited docs, scripts, assets, or examples that match the user's actual task.
Automate Telegram operations through Composio's Telegram toolkit via Rube MCP.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Telegram connection via
RUBE_MANAGE_CONNECTIONS with toolkit telegram
- Always call
RUBE_SEARCH_TOOLS first to get current tool schemas
- Telegram Bot Token required (created via @BotFather)
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLS responds
- Call
RUBE_MANAGE_CONNECTIONS with toolkit telegram
- If connection is not ACTIVE, follow the returned auth link to configure the Telegram bot
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Send Messages
When to use: User wants to send text messages to a Telegram chat
Tool sequence:
TELEGRAM_GET_ME - Verify bot identity and connection [Prerequisite]
TELEGRAM_GET_CHAT - Get chat details and verify access [Optional]
TELEGRAM_SEND_MESSAGE - Send a text message [Required]
Key parameters:
chat_id: Numeric chat ID or channel username (e.g., '@channelname')
text: Message text content
parse_mode: 'HTML' or 'MarkdownV2' for formatting
disable_notification: Send silently without notification sound
reply_to_message_id: Message ID to reply to
Pitfalls:
- Bot must be a member of the chat/group to send messages
- MarkdownV2 requires escaping special characters:
_*[]()~>#+-=|{}.!
- HTML mode supports limited tags:
<b>, <i>, <code>, <pre>, <a>
- Messages have a 4096 character limit; split longer content
2. Send Photos and Documents
When to use: User wants to share images or files in a Telegram chat
Tool sequence:
TELEGRAM_SEND_PHOTO - Send an image [Optional]
TELEGRAM_SEND_DOCUMENT - Send a file/document [Optional]
Key parameters:
chat_id: Target chat ID
photo: Photo URL or file_id (for SEND_PHOTO)
document: Document URL or file_id (for SEND_DOCUMENT)
caption: Optional caption for the media
Pitfalls:
- Photo captions have a 1024 character limit
- Document captions also have a 1024 character limit
- Files up to 50MB can be sent via bot API
- Photos are compressed by Telegram; use SEND_DOCUMENT for uncompressed images
3. Manage Chats
When to use: User wants to get chat information or manage chat settings
Tool sequence:
TELEGRAM_GET_CHAT - Get detailed chat information [Required]
TELEGRAM_GET_CHAT_ADMINISTRATORS - List chat admins [Optional]
TELEGRAM_GET_CHAT_MEMBERS_COUNT - Get member count [Optional]
TELEGRAM_EXPORT_CHAT_INVITE_LINK - Generate invite link [Optional]
Key parameters:
chat_id: Target chat ID or username
Pitfalls:
- Bot must be an administrator to export invite links
- GET_CHAT returns different fields for private chats vs groups vs channels
- Member count may be approximate for very large groups
- Admin list does not include regular members
4. Edit and Delete Messages
When to use: User wants to modify or remove previously sent messages
Tool sequence:
TELEGRAM_EDIT_MESSAGE - Edit a sent message [Optional]
TELEGRAM_DELETE_MESSAGE - Delete a message [Optional]
Key parameters:
chat_id: Chat where the message is located
message_id: ID of the message to edit or delete
text: New text content (for edit)
Pitfalls:
- Bots can only edit their own messages
- Messages can only be deleted within 48 hours of sending
- In groups, bots with delete permissions can delete any message
- Editing a message removes its 'edited' timestamp history
5. Forward Messages and Get Updates
When to use: User wants to forward messages or retrieve recent updates
Tool sequence:
TELEGRAM_FORWARD_MESSAGE - Forward a message to another chat [Optional]
TELEGRAM_GET_UPDATES - Get recent bot updates/messages [Optional]
TELEGRAM_GET_CHAT_HISTORY - Get chat message history [Optional]
Key parameters:
from_chat_id: Source chat for forwarding
chat_id: Destination chat for forwarding
message_id: Message to forward
offset: Update offset for GET_UPDATES
limit: Number of updates to retrieve
Pitfalls:
- Forwarded messages show the original sender attribution
- GET_UPDATES returns a limited window of recent updates
- Chat history access may be limited by bot permissions and chat type
- Use offset to avoid processing the same update twice
6. Manage Bot Commands
When to use: User wants to set or update bot command menu
Tool sequence:
TELEGRAM_SET_MY_COMMANDS - Set the bot's command list [Required]
TELEGRAM_ANSWER_CALLBACK_QUERY - Respond to inline button presses [Optional]
Key parameters:
commands: Array of command objects with command and description
callback_query_id: ID of the callback query to answer
Pitfalls:
- Commands must start with '/' and be lowercase
- Command descriptions have a 256 character limit
- Callback queries must be answered within 10 seconds or they expire
- Setting commands replaces the entire command list
Common Patterns
Chat ID Resolution
From username:
1. Use '@username' format as chat_id (for public channels/groups)
2. For private chats, numeric chat_id is required
3. Call GET_CHAT with username to retrieve numeric ID
From GET_UPDATES:
1. Call TELEGRAM_GET_UPDATES
2. Extract chat.id from message objects
3. Use numeric chat_id in subsequent calls
Message Formatting
- Use
parse_mode: 'HTML' for <b>bold</b>, <i>italic</i>, <code>code</code>
- Use
parse_mode: 'MarkdownV2' for *bold*, _italic_, `code`
- Escape special chars in MarkdownV2:
_ * [ ] ( ) ~ > # + - = | { } . !
- Omit parse_mode for plain text without formatting
Known Pitfalls
Bot Permissions:
- Bots must be added to groups/channels to interact
- Admin permissions needed for: deleting messages, exporting invite links, managing members
- Bots cannot initiate conversations; users must start them first
Rate Limits:
- 30 messages per second to the same group
- 20 messages per minute to the same user in groups
- Bulk operations should implement delays between calls
- API returns 429 Too Many Requests when limits are hit
Chat Types:
- Private chat: One-on-one with the bot
- Group: Multi-user chat (bot must be added)
- Supergroup: Enhanced group with admin features
- Channel: Broadcast-only (bot must be admin to post)
Message Limits:
- Text messages: 4096 characters max
- Captions: 1024 characters max
- File uploads: 50MB max via bot API
- Inline keyboard buttons: 8 per row
Quick Reference
| Task |
Tool Slug |
Key Params |
| Verify bot |
TELEGRAM_GET_ME |
(none) |
| Send message |
TELEGRAM_SEND_MESSAGE |
chat_id, text, parse_mode |
| Send photo |
TELEGRAM_SEND_PHOTO |
chat_id, photo, caption |
| Send document |
TELEGRAM_SEND_DOCUMENT |
chat_id, document, caption |
| Edit message |
TELEGRAM_EDIT_MESSAGE |
chat_id, message_id, text |
| Delete message |
TELEGRAM_DELETE_MESSAGE |
chat_id, message_id |
| Forward message |
TELEGRAM_FORWARD_MESSAGE |
chat_id, from_chat_id, message_id |
| Get chat info |
TELEGRAM_GET_CHAT |
chat_id |
| Get chat admins |
TELEGRAM_GET_CHAT_ADMINISTRATORS |
chat_id |
| Get member count |
TELEGRAM_GET_CHAT_MEMBERS_COUNT |
chat_id |
| Export invite link |
TELEGRAM_EXPORT_CHAT_INVITE_LINK |
chat_id |
| Get updates |
TELEGRAM_GET_UPDATES |
offset, limit |
| Get chat history |
TELEGRAM_GET_CHAT_HISTORY |
chat_id |
| Set bot commands |
TELEGRAM_SET_MY_COMMANDS |
commands |
| Answer callback |
TELEGRAM_ANSWER_CALLBACK_QUERY |
callback_query_id |
When to Use
This skill is applicable to execute the workflow or actions described in the overview.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
1---2name: telegram-automation3description: ALWAYS use this when the request matches Telegram Automation: Automate Telegram tasks via Rube MCP (Composio): send messages, manage chats, share photos/documents, and handle bot commands.4---56# Telegram Automation via Rube MCP78## Selective Reading Rule910Start with:1112- `references/senior-master-standard.md`13- `references/usage-routing.md`14- `references/quality-checklist.md`1516Then load only the inherited docs, scripts, assets, or examples that match the user's actual task.1718Automate Telegram operations through Composio's Telegram toolkit via Rube MCP.1920## Prerequisites2122- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)23- Active Telegram connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `telegram`24- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas25- Telegram Bot Token required (created via @BotFather)2627## Setup2829**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.3031321. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds332. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `telegram`343. If connection is not ACTIVE, follow the returned auth link to configure the Telegram bot354. Confirm connection status shows ACTIVE before running any workflows3637## Core Workflows3839### 1. Send Messages4041**When to use**: User wants to send text messages to a Telegram chat4243**Tool sequence**:441. `TELEGRAM_GET_ME` - Verify bot identity and connection [Prerequisite]452. `TELEGRAM_GET_CHAT` - Get chat details and verify access [Optional]463. `TELEGRAM_SEND_MESSAGE` - Send a text message [Required]4748**Key parameters**:49- `chat_id`: Numeric chat ID or channel username (e.g., '@channelname')50- `text`: Message text content51- `parse_mode`: 'HTML' or 'MarkdownV2' for formatting52- `disable_notification`: Send silently without notification sound53- `reply_to_message_id`: Message ID to reply to5455**Pitfalls**:56- Bot must be a member of the chat/group to send messages57- MarkdownV2 requires escaping special characters: `_*[]()~>#+-=|{}.!`58- HTML mode supports limited tags: `<b>`, `<i>`, `<code>`, `<pre>`, `<a>`59- Messages have a 4096 character limit; split longer content6061### 2. Send Photos and Documents6263**When to use**: User wants to share images or files in a Telegram chat6465**Tool sequence**:661. `TELEGRAM_SEND_PHOTO` - Send an image [Optional]672. `TELEGRAM_SEND_DOCUMENT` - Send a file/document [Optional]6869**Key parameters**:70- `chat_id`: Target chat ID71- `photo`: Photo URL or file_id (for SEND_PHOTO)72- `document`: Document URL or file_id (for SEND_DOCUMENT)73- `caption`: Optional caption for the media7475**Pitfalls**:76- Photo captions have a 1024 character limit77- Document captions also have a 1024 character limit78- Files up to 50MB can be sent via bot API79- Photos are compressed by Telegram; use SEND_DOCUMENT for uncompressed images8081### 3. Manage Chats8283**When to use**: User wants to get chat information or manage chat settings8485**Tool sequence**:861. `TELEGRAM_GET_CHAT` - Get detailed chat information [Required]872. `TELEGRAM_GET_CHAT_ADMINISTRATORS` - List chat admins [Optional]883. `TELEGRAM_GET_CHAT_MEMBERS_COUNT` - Get member count [Optional]894. `TELEGRAM_EXPORT_CHAT_INVITE_LINK` - Generate invite link [Optional]9091**Key parameters**:92- `chat_id`: Target chat ID or username9394**Pitfalls**:95- Bot must be an administrator to export invite links96- GET_CHAT returns different fields for private chats vs groups vs channels97- Member count may be approximate for very large groups98- Admin list does not include regular members99100### 4. Edit and Delete Messages101102**When to use**: User wants to modify or remove previously sent messages103104**Tool sequence**:1051. `TELEGRAM_EDIT_MESSAGE` - Edit a sent message [Optional]1062. `TELEGRAM_DELETE_MESSAGE` - Delete a message [Optional]107108**Key parameters**:109- `chat_id`: Chat where the message is located110- `message_id`: ID of the message to edit or delete111- `text`: New text content (for edit)112113**Pitfalls**:114- Bots can only edit their own messages115- Messages can only be deleted within 48 hours of sending116- In groups, bots with delete permissions can delete any message117- Editing a message removes its 'edited' timestamp history118119### 5. Forward Messages and Get Updates120121**When to use**: User wants to forward messages or retrieve recent updates122123**Tool sequence**:1241. `TELEGRAM_FORWARD_MESSAGE` - Forward a message to another chat [Optional]1252. `TELEGRAM_GET_UPDATES` - Get recent bot updates/messages [Optional]1263. `TELEGRAM_GET_CHAT_HISTORY` - Get chat message history [Optional]127128**Key parameters**:129- `from_chat_id`: Source chat for forwarding130- `chat_id`: Destination chat for forwarding131- `message_id`: Message to forward132- `offset`: Update offset for GET_UPDATES133- `limit`: Number of updates to retrieve134135**Pitfalls**:136- Forwarded messages show the original sender attribution137- GET_UPDATES returns a limited window of recent updates138- Chat history access may be limited by bot permissions and chat type139- Use offset to avoid processing the same update twice140141### 6. Manage Bot Commands142143**When to use**: User wants to set or update bot command menu144145**Tool sequence**:1461. `TELEGRAM_SET_MY_COMMANDS` - Set the bot's command list [Required]1472. `TELEGRAM_ANSWER_CALLBACK_QUERY` - Respond to inline button presses [Optional]148149**Key parameters**:150- `commands`: Array of command objects with `command` and `description`151- `callback_query_id`: ID of the callback query to answer152153**Pitfalls**:154- Commands must start with '/' and be lowercase155- Command descriptions have a 256 character limit156- Callback queries must be answered within 10 seconds or they expire157- Setting commands replaces the entire command list158159## Common Patterns160161### Chat ID Resolution162163**From username**:164```1651. Use '@username' format as chat_id (for public channels/groups)1662. For private chats, numeric chat_id is required1673. Call GET_CHAT with username to retrieve numeric ID168```169170**From GET_UPDATES**:171```1721. Call TELEGRAM_GET_UPDATES1732. Extract chat.id from message objects1743. Use numeric chat_id in subsequent calls175```176177### Message Formatting178179- Use `parse_mode: 'HTML'` for `<b>bold</b>`, `<i>italic</i>`, `<code>code</code>`180- Use `parse_mode: 'MarkdownV2'` for `*bold*`, `_italic_`, `` `code` ``181- Escape special chars in MarkdownV2: `_ * [ ] ( ) ~ > # + - = | { } . !`182- Omit parse_mode for plain text without formatting183184## Known Pitfalls185186**Bot Permissions**:187- Bots must be added to groups/channels to interact188- Admin permissions needed for: deleting messages, exporting invite links, managing members189- Bots cannot initiate conversations; users must start them first190191**Rate Limits**:192- 30 messages per second to the same group193- 20 messages per minute to the same user in groups194- Bulk operations should implement delays between calls195- API returns 429 Too Many Requests when limits are hit196197**Chat Types**:198- Private chat: One-on-one with the bot199- Group: Multi-user chat (bot must be added)200- Supergroup: Enhanced group with admin features201- Channel: Broadcast-only (bot must be admin to post)202203**Message Limits**:204- Text messages: 4096 characters max205- Captions: 1024 characters max206- File uploads: 50MB max via bot API207- Inline keyboard buttons: 8 per row208209## Quick Reference210211| Task | Tool Slug | Key Params |212|------|-----------|------------|213| Verify bot | TELEGRAM_GET_ME | (none) |214| Send message | TELEGRAM_SEND_MESSAGE | chat_id, text, parse_mode |215| Send photo | TELEGRAM_SEND_PHOTO | chat_id, photo, caption |216| Send document | TELEGRAM_SEND_DOCUMENT | chat_id, document, caption |217| Edit message | TELEGRAM_EDIT_MESSAGE | chat_id, message_id, text |218| Delete message | TELEGRAM_DELETE_MESSAGE | chat_id, message_id |219| Forward message | TELEGRAM_FORWARD_MESSAGE | chat_id, from_chat_id, message_id |220| Get chat info | TELEGRAM_GET_CHAT | chat_id |221| Get chat admins | TELEGRAM_GET_CHAT_ADMINISTRATORS | chat_id |222| Get member count | TELEGRAM_GET_CHAT_MEMBERS_COUNT | chat_id |223| Export invite link | TELEGRAM_EXPORT_CHAT_INVITE_LINK | chat_id |224| Get updates | TELEGRAM_GET_UPDATES | offset, limit |225| Get chat history | TELEGRAM_GET_CHAT_HISTORY | chat_id |226| Set bot commands | TELEGRAM_SET_MY_COMMANDS | commands |227| Answer callback | TELEGRAM_ANSWER_CALLBACK_QUERY | callback_query_id |228229## When to Use230This skill is applicable to execute the workflow or actions described in the overview.231232## Limitations233- Use this skill only when the task clearly matches the scope described above.234- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.235- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.