Telegram-bot

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

Community: Submitted by a user or imported; check the owner before granting accessOnlineAPI key requiredRU / CISFreeCan modify data

What it can do

  • Tg Get Me: Get basic information about the bot: id, username, first_name, can_join_groups, can_read_all_group_messages, supports_inline_queries.
  • 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, 0-9, _) and a "description" (1-256 chars). Max 100 commands.
  • Tg Send Message: Send a text message to a chat. Supports Markdown, MarkdownV2, and HTML formatting. Can include inline keyboards via reply_markup.

What data it sees

Do you need an account

An API key from the service settings is required

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

Features

  • Send text, photo, video, audio, document, location, poll, contact messages
  • Edit and delete messages
  • Chat management (info, members, ban/unban)
  • Webhook setup and management
  • Callback query handling
  • Pin/unpin messages, invite links

27 Tools

Bot Info: get bot info, set commands Send Messages: text, photo, document, video, audio, location, poll, contact Edit/Delete: edit text, edit caption, delete message Chat: get info, member count, member details, ban, unban Webhooks: set, delete, get webhook info Callbacks: answer callback, get file, get profile photos Pins: pin, unpin, create invite link

Configuration

  • TELEGRAM_BOT_TOKEN — Get one from @BotFather on Telegram

How to connect

How to connect Telegram-bot to Claude

The server address to paste into Claude settings:

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

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect Telegram-bot to ChatGPT

The server address to paste into ChatGPT settings:

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

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect Telegram-bot to Cursor

The server address to paste into Cursor settings:

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

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (27)

Raw names from tools/list. Only developers need these.

tg_get_meGet basic information about the bot: id, username, first_name, can_join_groups, can_read_all_group_messages, supports_inline_queries.
tg_set_my_commandsSet the list of bot commands shown in the Telegram chat menu. Each command has a "command" (1-32 chars, lowercase a-z, 0-9, _) and a "description" (1-256 chars). Max 100 commands.
tg_send_messageSend a text message to a chat. Supports Markdown, MarkdownV2, and HTML formatting. Can include inline keyboards via reply_markup.
tg_send_photoSend a photo to a chat. Provide a URL or file_id from a previously uploaded photo.
tg_send_documentSend a document/file to a chat. Provide a URL or file_id. Max 50MB for bots.
tg_send_videoSend a video to a chat. Provide a URL or file_id. Supports MPEG4 format, max 50MB.
tg_send_audioSend an audio file to a chat. Displayed as a music player. Provide a URL or file_id. Max 50MB, MP3/M4A format.
tg_send_locationSend a geographic location point to a chat.
tg_send_pollSend a poll to a chat. Supports regular polls and quiz mode. For quiz mode, set type to "quiz" and provide correct_option_id.
tg_send_contactSend a phone contact card to a chat.
tg_edit_message_textEdit the text of a previously sent message. The bot must be the author of the message.
tg_edit_message_captionEdit the caption of a previously sent media message (photo, video, document, audio).
tg_delete_messageDelete a message. Bot must have delete permission in group chats. Messages older than 48 hours cannot be deleted.
tg_get_chatGet detailed information about a chat: title, description, type, member count, permissions, pinned message, etc.
tg_get_chat_member_countGet the number of members in a chat.
tg_get_chat_memberGet information about a specific member: status (creator, administrator, member, restricted, left, kicked), permissions, and custom title.
tg_ban_chat_memberBan a user from a group, supergroup, or channel. The user will be unable to return unless unbanned. Bot must be admin with ban permission.
tg_unban_chat_memberUnban a previously banned user. The user is NOT added back automatically and must rejoin via invite link.
tg_set_webhookSet a webhook URL for receiving Telegram updates. Telegram sends POST requests with JSON Update objects to this URL. Supported ports: 443, 80, 88, 8443.
tg_delete_webhookRemove the webhook integration. After this, you can use getUpdates for polling.
tg_get_webhook_infoGet current webhook status: URL, pending update count, last error date/message, max connections, and allowed update types.
tg_answer_callback_queryAnswer a callback query from an inline keyboard button press. Must be called to stop the loading indicator on the button.
tg_get_fileGet file info and download URL. Returns file_id, file_size, file_path, and a ready-to-use download_url. Files up to 20MB.
tg_get_user_profile_photosGet a list of profile photos for a user.
tg_pin_chat_messagePin a message in a chat. Bot must have pin_messages admin permission in groups/supergroups.
tg_unpin_chat_messageUnpin a message in a chat. If message_id is not provided, unpins the most recent pinned message.
tg_create_chat_invite_linkCreate an additional invite link for a chat. Bot must be admin with invite_users permission.