telegram-mcp-kit
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | Bind host (default 127.0.0.1) | |
| MCP_PORT | No | Bind port (default 8000) | |
| HTTP_TIMEOUT | No | Telegram API timeout in seconds (default 30) | |
| MCP_TRANSPORT | No | stdio (default) or sse | |
| TELEGRAM_CHAT_ID | No | Default chat ID (if set, chat_id can be omitted in tool calls) | |
| TELEGRAM_BOT_TOKEN | Yes | Token from BotFather |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_bot_infoA | Get information about the bot (name, username, etc.). |
| get_chat_infoA | Get information about a chat (group, channel, or private chat). Args: chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| get_chat_member_countA | Get the number of members in a chat. Args: chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| get_chat_adminsB | Get list of administrators in a chat. Args: chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| ban_memberA | Ban a user from a chat. Args: user_id: User ID to ban chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| unban_memberA | Unban a user from a chat. Args: user_id: User ID to unban chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| set_chat_titleA | Change the title of a chat (group/channel). Args: title: New chat title (1-128 characters) chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| set_chat_descriptionA | Change the description of a chat (group/channel). Args: description: New description (0-255 characters) chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| pin_messageA | Pin a message in a chat. Args: message_id: ID of the message to pin chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) silent: Pin without notification (default False) |
| unpin_messageB | Unpin a message in a chat. Args: chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) message_id: ID of message to unpin (optional, unpins most recent if not specified) |
| send_photoA | Send a photo to a chat. Args: photo: Photo URL or file_id chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) caption: Photo caption (optional) parse_mode: "Markdown", "MarkdownV2", or "HTML" for caption (optional) |
| send_photo_fileA | Send a local photo file to a chat. Args: file_path: Absolute path to the photo file on disk chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) caption: Photo caption (optional) parse_mode: "Markdown", "MarkdownV2", or "HTML" for caption (optional) |
| send_documentA | Send a document/file to a chat. Args: document: Document URL or file_id chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) caption: Document caption (optional) parse_mode: "Markdown", "MarkdownV2", or "HTML" for caption (optional) |
| send_document_fileA | Send a local file as a document to a chat. Args: file_path: Absolute path to the file on disk chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) caption: Document caption (optional) parse_mode: "Markdown", "MarkdownV2", or "HTML" for caption (optional) |
| get_file_infoA | Get file info and download link from Telegram. Args: file_id: Telegram file ID (from received messages) |
| send_messageA | Send a text message to a Telegram chat. Args: text: Message text (supports Markdown/HTML based on parse_mode) chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) parse_mode: "Markdown", "MarkdownV2", or "HTML" (optional) reply_to_message_id: ID of message to reply to (optional) |
| edit_messageA | Edit an existing message. Args: message_id: ID of the message to edit text: New text for the message chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) parse_mode: "Markdown", "MarkdownV2", or "HTML" (optional) |
| delete_messageB | Delete a message from a chat. Args: message_id: ID of the message to delete chat_id: Chat ID or @channel_username (uses TELEGRAM_CHAT_ID if omitted) |
| forward_messageB | Forward a message from one chat to another. Args: from_chat_id: Source chat ID message_id: ID of the message to forward chat_id: Target chat ID (uses TELEGRAM_CHAT_ID if omitted) |
| get_updatesA | Get recent messages/updates received by the bot. Args: offset: Update ID offset (to get updates after a specific ID) limit: Maximum number of updates to return (1-100, default 100) |
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/QuocTang/telegram-mcp-kit'
If you have feedback or need assistance with the MCP directory API, please join our Discord server