io.github.daedalus/mcp-telegram-bot
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TELEGRAM_BOT_TOKEN | Yes | Your Telegram bot token from BotFather |
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
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| send_messageB | Send a message to a specified Telegram chat. |
| get_meA | Get bot information. Returns: JSON response containing bot information (id, username, first_name, etc.). |
| get_updatesB | Get recent updates from Telegram. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| bot_status | Get bot status including running state and information. Returns: JSON containing: is_running, bot_info, last_update_time |
TDQS
Scored across 3 tools
Each tool serves a distinct purpose: get_me retrieves bot info, get_updates fetches recent messages, and send_message sends messages. No overlap or ambiguity.
All tools use consistent snake_case and verb_noun pattern (get_me, get_updates, send_message), making them predictable.
With only 3 tools, the server is minimal but not unreasonable for a simple polling bot. However, for typical Telegram bot usage, more tools are expected.
The tool set covers basic functionality (get info, get updates, send messages) but misses essential operations like sending media, handling inline queries, or managing webhooks.