# Telegram-bot

MCP server for Telegram Bot API — send messages, photos, videos, polls, manage chats, webhooks, and callbacks.

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add node2flow/telegram-bot

# Browse available tools
npx -y @smithery/cli@latest tool list node2flow/telegram-bot

# Get full schema for a tool
npx -y @smithery/cli@latest tool get node2flow/telegram-bot tg_get_me

# Call a tool
npx -y @smithery/cli@latest tool call node2flow/telegram-bot tg_get_me '{}'
```

## Direct MCP Connection

Endpoint: `https://telegram-bot--node2flow.run.tools`

**Required config:**
- `TELEGRAM_BOT_TOKEN` (query) — Get your token from Telegram: @BotFather

## Tools (27)

- `tg_get_me` — Get basic information about the bot: id, username, first_name, can_join_groups, can_read_all_group_messages, supports_i…
- `tg_set_my_commands` — Set the list of bot commands shown in the Telegram chat menu. Each command has a "command" (1-32 chars, lowercase a-z, …
- `tg_send_message` — Send a text message to a chat. Supports Markdown, MarkdownV2, and HTML formatting. Can include inline keyboards via rep…
- `tg_send_photo` — Send a photo to a chat. Provide a URL or file_id from a previously uploaded photo.
- `tg_send_document` — Send a document/file to a chat. Provide a URL or file_id. Max 50MB for bots.
- `tg_send_video` — Send a video to a chat. Provide a URL or file_id. Supports MPEG4 format, max 50MB.
- `tg_send_audio` — Send an audio file to a chat. Displayed as a music player. Provide a URL or file_id. Max 50MB, MP3/M4A format.
- `tg_send_location` — Send a geographic location point to a chat.
- `tg_send_poll` — Send a poll to a chat. Supports regular polls and quiz mode. For quiz mode, set type to "quiz" and provide correct_opti…
- `tg_send_contact` — Send a phone contact card to a chat.
- `tg_edit_message_text` — Edit the text of a previously sent message. The bot must be the author of the message.
- `tg_edit_message_caption` — Edit the caption of a previously sent media message (photo, video, document, audio).
- `tg_delete_message` — Delete a message. Bot must have delete permission in group chats. Messages older than 48 hours cannot be deleted.
- `tg_get_chat` — Get detailed information about a chat: title, description, type, member count, permissions, pinned message, etc.
- `tg_get_chat_member_count` — Get the number of members in a chat.
- `tg_get_chat_member` — Get information about a specific member: status (creator, administrator, member, restricted, left, kicked), permissions…
- `tg_ban_chat_member` — Ban a user from a group, supergroup, or channel. The user will be unable to return unless unbanned. Bot must be admin w…
- `tg_unban_chat_member` — Unban a previously banned user. The user is NOT added back automatically and must rejoin via invite link.
- `tg_set_webhook` — Set a webhook URL for receiving Telegram updates. Telegram sends POST requests with JSON Update objects to this URL. Su…
- `tg_delete_webhook` — Remove the webhook integration. After this, you can use getUpdates for polling.
- `tg_get_webhook_info` — Get current webhook status: URL, pending update count, last error date/message, max connections, and allowed update typ…
- `tg_answer_callback_query` — Answer a callback query from an inline keyboard button press. Must be called to stop the loading indicator on the butto…
- `tg_get_file` — Get file info and download URL. Returns file_id, file_size, file_path, and a ready-to-use download_url. Files up to 20M…
- `tg_get_user_profile_photos` — Get a list of profile photos for a user.
- `tg_pin_chat_message` — Pin a message in a chat. Bot must have pin_messages admin permission in groups/supergroups.
- `tg_unpin_chat_message` — Unpin a message in a chat. If message_id is not provided, unpins the most recent pinned message.
- `tg_create_chat_invite_link` — Create an additional invite link for a chat. Bot must be admin with invite_users permission.

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get node2flow/telegram-bot <tool-name>
```

## Resources

- `telegram://server-info` — Connection status and available tools for this Telegram MCP server

## Prompts (2)

- `send-messages` — Guide for sending different types of messages via Telegram bot
- `manage-chat` — Guide for managing Telegram chats, members, and webhooks

---

License: MIT
