telegram-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TELEGRAM_API_ID | Yes | Your Telegram API ID from my.telegram.org | |
| TELEGRAM_SESSION | Yes | Your session string for user authentication | |
| TELEGRAM_API_HASH | Yes | Your Telegram API hash from my.telegram.org |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_recent_messagesC | Get recent messages from a Telegram channel, group, or private chat |
| get_channel_infoC | Get information about a Telegram channel, group, or private chat |
| search_messagesC | Search for messages in a Telegram channel, group, or private chat |
| get_available_channelsB | Get list of available channels and groups that the user has access to |
| mark_messages_readB | Mark messages as read in a Telegram chat, group, or private conversation (not supported for broadcast channels) |
| check_unread_messagesC | Check for unread messages in private chats and groups |
| get_private_messagesC | Get messages from a private chat conversation |
| get_chat_statusC | Get detailed status information about a chat including unread count and read status |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
get_recent_messages overlaps with get_private_messages for private chats, and check_unread_messages overlaps with get_chat_status since both expose unread/read information. get_channel_info and get_chat_status also both provide chat metadata, so boundaries are somewhat blurred despite helpful descriptions.
Names are consistently snake_case and mostly follow a verb_noun pattern, such as get_recent_messages, search_messages, and mark_messages_read. Minor deviations like mark_messages_read and check_unread_messages are still readable and predictable.
Eight tools is well-scoped for a Telegram chat client and falls within the ideal 3-15 range. The set is not bloated, and each tool covers a reasonable operation even with some overlapping read/status use cases.
The surface covers reading, searching, listing channels, marking read, checking unread, and chat status. However, core Telegram actions like sending, editing, deleting, forwarding, or replying to messages are missing, which is a notable gap for a messaging server.