100+ integrations are ready to connect to your AI.Connect your first MCP

Telegram MCP server for your AI

Post announcements to your channel, read and answer what people send your bot, share files, albums and polls, and look after members, admins and invite links, all through one bot you create in a minute.

PopMCPTelegram

Post this week's product update to our channel as a formatted announcement with a link to the full post

Supported Telegram tools

Every Telegram Bot API method is here, with a few everyday tools for posting, reading incoming messages, handling files and running a chat, and the rest one search away.

186 tools in the full catalog: 34 read and 152 write. 28 load by default, and the rest are found with tool search.

telegram_copy_message

Copy messages of any kind.

telegram_forward_message

Forward messages of any kind.

telegram_send_document

Send general files.

telegram_send_file

Send any file to a chat in one step.

telegram_send_media_group

Send a group of photos, live photos, videos, documents or audios as an album.

telegram_send_message

Send text messages.

telegram_send_photo

Send photos.

telegram_send_poll

Send a native poll.

telegram_send_rich_message

Send rich messages.

telegram_delete_message

Delete a message, including service messages, with the following limitations: - A message can only be deleted if it was sent less than 48 hours ago.

telegram_edit_message_text

Edit text, rich and game messages.

telegram_get_me

A simple method for testing your bot's authentication token.

telegram_get_my_commands

Get the current list of the bot's commands for the given scope and user language.

telegram_set_my_commands

Change the list of the bot's commands.

telegram_set_my_description

Change the bot's description, which is shown in the chat with the bot if the chat is empty.

telegram_chat_overview

Everything about one chat in one call: title, type, @username and link, description, member count, the administrators with their rights, and what this bot may do there (post, delete, pin, invite, ban).

telegram_get_chat

Get up-to-date information about the chat.

telegram_list_chats

Find chat ids: the chats the bot can see now (from recent updates, the connection's default chat, and any chats you name in lookup), each with its id, type, title, @username, and the bot's status and rights there.

telegram_pin_chat_message

Add a message to the list of pinned messages in a chat.

telegram_unpin_chat_message

Remove a message from the list of pinned messages in a chat.

telegram_ban_chat_member

Ban an user in a group, a supergroup or a channel.

telegram_get_chat_administrators

Get a list of administrators in a chat.

telegram_get_chat_member

Get information about a member of a chat.

telegram_unban_chat_member

Unban a previously banned user in a supergroup or channel.

telegram_create_chat_invite_link

Create an additional invite link for a chat.

telegram_get_webhook_info

Get current webhook status.

telegram_read_updates

Read what people recently sent the bot or did with it: messages, channel posts, button presses, joins and leaves, join requests, reactions, poll answers.

telegram_download_file

Read a file someone sent the bot, by its file_id: text files (CSV, TXT, JSON, code, ...) come back as text, and photos and images (up to 5 MB) as an image you can look at.

telegram_copy_messages

Copy messages of any kind.

telegram_forward_messages

Forward multiple messages of any kind.

telegram_send_animation

Send animation files (GIF or H.264/MPEG-4 AVC video without sound).

telegram_send_audio

Send audio files, if you want Telegram clients to display them in the music player.

telegram_send_chat_action

Use this method when you need to tell the user that something is happening on the bot's side.

telegram_send_checklist

Send a checklist on behalf of a connected business account.

telegram_send_contact

Send phone contacts.

telegram_send_dice

Send an animated emoji that will display a random value.

telegram_send_live_photo

Send live photos.

telegram_send_location

Send point on the map.

telegram_send_message_draft

Stream a partial message to an user while the message is being generated.

telegram_send_paid_media

Send paid media.

telegram_send_rich_message_draft

Stream a partial rich message to an user while the message is being generated.

telegram_send_venue

Send information about a venue.

telegram_send_video

Send video files, Telegram clients support MPEG4 videos (other formats may be sent as Document).

telegram_send_video_note

Send a rounded square MPEG4 video of up to 1 minute long.

telegram_send_voice

Send audio files, if you want Telegram clients to display the file as a playable voice message.

telegram_set_message_reaction

Change the chosen reactions on a message.

telegram_add_sticker_to_set

Add a new sticker to a set created by the bot.

telegram_approve_suggested_post

Approve a suggested post in a direct messages chat.

telegram_create_new_sticker_set

Create a new sticker set owned by an user.

telegram_decline_suggested_post

Decline a suggested post in a direct messages chat.

telegram_delete_all_message_reactions

Remove up to 10000 recent reactions in a group or a supergroup chat added by a given user or chat.

telegram_delete_chat_sticker_set

Delete a group sticker set from a supergroup.

telegram_delete_ephemeral_message

Delete an ephemeral message.

telegram_delete_message_reaction

Remove a reaction from a message in a group or a supergroup chat.

telegram_delete_messages

Delete multiple messages simultaneously.

telegram_delete_my_commands

Delete the list of the bot's commands for the given scope and user language.

telegram_delete_sticker_from_set

Delete a sticker from a set created by the bot.

telegram_delete_sticker_set

Delete a sticker set that was created by the bot.

telegram_edit_ephemeral_message_caption

Edit the caption of an ephemeral message.

telegram_edit_ephemeral_message_media

Edit the media of an ephemeral message.

telegram_edit_ephemeral_message_reply_markup

Edit only the reply markup of an ephemeral message.

telegram_edit_ephemeral_message_text

Edit an ephemeral text or rich message.

telegram_edit_message_caption

Edit captions of messages.

telegram_edit_message_checklist

Edit a checklist on behalf of a connected business account.

telegram_edit_message_live_location

Edit live location messages.

telegram_edit_message_media

Edit animation, audio, document, live photo, photo, or video messages, or to replace a text or a rich message with a media.

telegram_edit_message_reply_markup

Edit only the reply markup of messages.

telegram_get_chat_menu_button

Get the current value of the bot's menu button in a private chat, or the default menu button.

telegram_get_custom_emoji_stickers

Get information about custom emoji stickers by their identifiers.

telegram_get_forum_topic_icon_stickers

Get custom emoji stickers, which can be used as a forum topic icon by any user.

telegram_get_managed_bot_access_settings

Get the access settings of a managed bot.

telegram_get_my_default_administrator_rights

Get the current default administrator rights of the bot.

telegram_get_my_description

Get the current bot description for the given user language.

telegram_get_my_name

Get the current bot name for the given user language.

telegram_get_my_short_description

Get the current bot short description for the given user language.

telegram_get_my_star_balance

A method to get the current Telegram Stars balance of the bot.

telegram_get_sticker_set

Get a sticker set.

telegram_remove_my_profile_photo

Removes the profile photo of the bot.

telegram_replace_sticker_in_set

Replace an existing sticker in a sticker set with a new one.

telegram_send_sticker

Send static .WEBP, animated .TGS, or video .WEBM stickers.

telegram_set_chat_menu_button

Change the bot's menu button in a private chat, or the default menu button.

telegram_set_chat_sticker_set

Set a new group sticker set for a supergroup.

telegram_set_custom_emoji_sticker_set_thumbnail

Set the thumbnail of a custom emoji sticker set.

telegram_set_managed_bot_access_settings

Change the access settings of a managed bot.

telegram_set_my_default_administrator_rights

Change the default administrator rights requested by the bot when it's added as an administrator to groups or channels.

telegram_set_my_name

Change the bot's name.

telegram_set_my_profile_photo

Changes the profile photo of the bot.

telegram_set_my_short_description

Change the bot's short description, which is shown on the bot's profile page and is sent together with the link when users share the bot.

telegram_set_sticker_emoji_list

Change the list of emoji assigned to a regular or custom emoji sticker.

telegram_set_sticker_keywords

Change search keywords assigned to a regular or custom emoji sticker.

telegram_set_sticker_mask_position

Change the mask position of a mask sticker.

telegram_set_sticker_position_in_set

Move a sticker in a set created by the bot to a specific position.

telegram_set_sticker_set_thumbnail

Set the thumbnail of a regular or mask sticker set.

telegram_set_sticker_set_title

Set the title of a created sticker set.

telegram_stop_message_live_location

Stop updating a live location message before live_period expires.

telegram_stop_poll

Stop a poll which was sent by the bot.

telegram_upload_sticker_file

Upload a file with a sticker for later use in the createNewStickerSet, addStickerToSet, or replaceStickerInSet methods (the file can be used multiple times).

telegram_close_forum_topic

Close an open topic in a forum supergroup chat.

telegram_close_general_forum_topic

Close an open 'General' topic in a forum supergroup chat.

telegram_create_forum_topic

Create a topic in a forum supergroup chat or a private chat with an user.

telegram_delete_business_messages

Delete messages on behalf of a business account.

telegram_delete_chat_photo

Delete a chat photo.

telegram_delete_forum_topic

Delete a forum topic along with all its messages in a forum supergroup chat or a private chat with an user.

telegram_edit_forum_topic

Edit name and icon of a topic in a forum supergroup chat or a private chat with an user.

telegram_edit_general_forum_topic

Edit the name of the 'General' topic in a forum supergroup chat.

telegram_get_business_account_gifts

Returns the gifts received and owned by a managed business account.

telegram_get_business_account_star_balance

Returns the amount of Telegram Stars owned by a managed business account.

telegram_get_business_connection

Get information about the connection of the bot with a business account.

telegram_hide_general_forum_topic

Hide the 'General' topic in a forum supergroup chat.

telegram_leave_chat

Use this method for your bot to leave a group, supergroup or channel.

telegram_read_business_message

Marks incoming message as read on behalf of a business account.

telegram_remove_business_account_profile_photo

Removes the current profile photo of a managed business account.

telegram_reopen_forum_topic

Reopen a closed topic in a forum supergroup chat.

telegram_reopen_general_forum_topic

Reopen a closed 'General' topic in a forum supergroup chat.

telegram_set_business_account_bio

Changes the bio of a managed business account.

telegram_set_business_account_gift_settings

Changes the privacy settings pertaining to incoming gifts in a managed business account.

telegram_set_business_account_name

Changes the first and last name of a managed business account.

telegram_set_business_account_profile_photo

Changes the profile photo of a managed business account.

telegram_set_business_account_username

Changes the username of a managed business account.

telegram_set_chat_description

Change the description of a group, a supergroup or a channel.

telegram_set_chat_permissions

Set default chat permissions for all members.

telegram_set_chat_photo

Set a new profile photo for the chat.

telegram_set_chat_title

Change the title of a chat.

telegram_transfer_business_account_stars

Transfers Telegram Stars from the business account balance to the bot's balance.

telegram_unhide_general_forum_topic

Unhide the 'General' topic in a forum supergroup chat.

telegram_unpin_all_chat_messages

Clear the list of pinned messages in a chat.

telegram_unpin_all_forum_topic_messages

Clear the list of pinned messages in a forum topic in a forum supergroup chat or a private chat with an user.

telegram_unpin_all_general_forum_topic_messages

Clear the list of pinned messages in a General forum topic.

telegram_ban_chat_sender_chat

Ban a channel chat in a supergroup or a channel.

telegram_get_chat_member_count

Get the number of members in a chat.

telegram_promote_chat_member

Promote or demote an user in a supergroup or a channel.

telegram_restrict_chat_member

Restrict an user in a supergroup.

telegram_set_chat_administrator_custom_title

Set a custom title for an administrator in a supergroup promoted by the bot.

telegram_set_chat_member_tag

Set a tag for a regular member in a group or a supergroup.

telegram_unban_chat_sender_chat

Unban a previously banned channel chat in a supergroup or channel.

telegram_answer_chat_join_request_query

Process a received chat join request query.

telegram_approve_chat_join_request

Approve a chat join request.

telegram_create_chat_subscription_invite_link

Create a subscription invite link for a channel chat.

telegram_decline_chat_join_request

Decline a chat join request.

telegram_edit_chat_invite_link

Edit a non-primary invite link created by the bot.

telegram_edit_chat_subscription_invite_link

Edit a subscription invite link created by the bot.

telegram_export_chat_invite_link

Generate a new primary invite link for a chat; any previously generated primary link is revoked.

telegram_revoke_chat_invite_link

Revoke an invite link created by the bot.

telegram_send_chat_join_request_web_app

Process a received chat join request query by showing a Mini App to the user before deciding the outcome.

telegram_convert_gift_to_stars

Converts a given regular gift to Telegram Stars.

telegram_get_available_gifts

Returns the list of gifts that can be sent by the bot to users and channel chats.

telegram_get_chat_gifts

Returns the gifts owned by a chat.

telegram_get_user_gifts

Returns the gifts owned and hosted by an user.

telegram_gift_premium_subscription

Gifts a Telegram Premium subscription to the given user.

telegram_send_gift

Sends a gift to the given user or channel chat.

telegram_transfer_gift

Transfers an owned unique gift to another user.

telegram_upgrade_gift

Upgrades a given regular gift to an unique gift.

telegram_answer_pre_checkout_query

Once the user has confirmed their payment and shipping details, the Bot API sends the final confirmation in the form of an Update with the field pre_checkout_query.

telegram_answer_shipping_query

If you sent an invoice requesting a shipping address and the parameter is_flexible was specified, the Bot API will send an Update with a shipping_query field to the bot.

telegram_create_invoice_link

Create a link for an invoice.

telegram_edit_user_star_subscription

Allows the bot to cancel or re-enable extension of a subscription paid in Telegram Stars.

telegram_get_star_transactions

Returns the bot's Telegram Star transactions in chronological order.

telegram_refund_star_payment

Refunds a successful payment in Telegram Stars.

telegram_send_invoice

Send invoices.

telegram_answer_callback_query

Send answers to callback queries sent from inline keyboards.

telegram_answer_guest_query

Reply to a received guest message.

telegram_answer_inline_query

Send answers to an inline query.

telegram_answer_web_app_query

Set the result of an interaction with a Web App and send a corresponding message on behalf of the user to the chat from which the query originated.

telegram_save_prepared_inline_message

Stores a message that can be sent by an user of a Mini App.

telegram_save_prepared_keyboard_button

Stores a keyboard button that can be used by an user within a Mini App.

telegram_delete_webhook

Remove webhook integration if you decide to switch back to getUpdates.

telegram_get_updates

Receive incoming updates using long polling (wiki).

telegram_get_user_chat_boosts

Get the list of boosts added to a chat by an user.

telegram_get_user_personal_chat_messages

Get the last messages from the personal chat (i.e., the chat currently added to their profile) of a given user.

telegram_get_user_profile_audios

Get a list of profile audios for an user.

telegram_get_user_profile_photos

Get a list of profile pictures for an user.

telegram_set_user_emoji_status

Changes the emoji status for a given user that previously allowed the bot to manage their emoji status via the Mini App method requestEmojiStatusAccess.

telegram_set_webhook

Specify a URL and receive incoming updates via an outgoing webhook.

telegram_delete_story

Deletes a story previously posted by the bot on behalf of a managed business account.

telegram_edit_story

Edits a story previously posted by the bot on behalf of a managed business account.

telegram_post_story

Posts a story on behalf of a managed business account.

telegram_remove_chat_verification

Removes verification from a chat that is currently verified on behalf of the organization represented by the bot.

telegram_remove_user_verification

Removes verification from an user who is currently verified on behalf of the organization represented by the bot.

telegram_repost_story

Reposts a story on behalf of a business account from another business account.

telegram_verify_chat

Verifies a chat on behalf of the organization which is represented by the bot.

telegram_verify_user

Verifies an user on behalf of the organization which is represented by the bot.

telegram_get_game_high_scores

Get data for high score tables.

telegram_send_game

Send a game.

telegram_set_game_score

Set the score of the specified user in a game message.

telegram_get_file

Get basic information about a file and prepare it for downloading.

telegram_set_passport_data_errors

Informs an user that some of the Telegram Passport elements they provided contains errors.

Connect Telegram to Claude, ChatGPT and Claude Code

Credentials off one Telegram screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

In Telegram, message @BotFather, send /newbot, pick a name and a username ending in bot, and paste the token it replies with. It is free and needs no approval. Optionally add a default chat such as @yourchannel so posts go there when you name none.

Bot token••••••••••••3f7a
Default chat@yourchannel
ConnectionVerified

Then just ask for the work

  • “Post this week's product update to our channel as a formatted announcement with a link to the full post”

    • send_rich_message
  • “What did people message the bot today, and which chats did it come from?”

    • read_updates
  • “Send the team group this sales summary as a CSV file and pin it”

    • send_file
    • pin_chat_message
  • “Who are the admins of our group, and can the bot delete messages there?”

    • chat_overview
  • “Make an invite link for our channel that expires on Friday and lets in up to 50 people”

    • create_chat_invite_link

Use Telegram from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

Telegram MCP server questions

What teams ask before putting Telegram behind an AI client.

What does the Telegram MCP server need to connect?

One bot token. In Telegram, open @BotFather, send /newbot, choose a display name and a username that ends in bot, and BotFather replies with a token such as 123456789:AAH... Paste it into PopMCP. Creating a bot is free, takes about a minute and needs no review. For a bot you already have, send /mybots, pick it and tap API Token. PopMCP checks the token with getMe and stores it encrypted.

Can it read my Telegram chats and message history?

No. A bot never sees your personal chats, and Telegram gives bots no message history. The bot receives what happens after it is added: messages sent to it, posts in channels where it is an administrator and, in groups, commands, replies and mentions while privacy mode is on. Turn privacy mode off in @BotFather (/setprivacy) or make the bot an admin to see every group message. read_updates shows what arrived in the last 24 hours.

How do I let the bot post in my channel?

Add the bot to the channel as an administrator with permission to post messages. Then use the channel's @username, or its numeric id that starts with -100, as the chat. Put that channel in the Default chat field when you connect and the AI posts there whenever you do not name another chat. list_chats shows every chat the bot can currently see, with what it is allowed to do in each.

Will connecting PopMCP break a bot I already run?

No. Telegram delivers a bot's updates to one place, either its webhook or a program polling for them. PopMCP reads updates without confirming them and never changes the webhook on its own, and set_webhook and delete_webhook warn the AI that they would take updates away from your program. Sending messages works alongside your existing bot. Triggers need a bot whose updates only PopMCP receives.

How does message formatting work?

send_message takes plain text or Telegram's HTML (bold, italic, links, code and quotes) up to 4096 characters. For headings, lists, tables and longer text, send_rich_message takes ordinary Markdown, the way AI clients already write, up to 32768 characters. Files of any type go through send_file, from text, base64, a public link or an existing file_id.

Which Telegram events can PopMCP watch?

New messages to the bot, edited messages, channel posts, button presses, the bot being added or removed, members joining or leaving, join requests, reactions, poll answers, payment confirmations, business chat messages and boosts. They arrive through the bot's webhook, so they need a bot whose updates only PopMCP receives.

Do I have to run or host the Telegram MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

How do I connect Telegram to Claude Code?

Connect Telegram in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Telegram on the consent screen. The Telegram tools are then available in that session, and no Telegram credential is stored on your machine.

Why do only 28 of the 186 tools load by default?

Loading 186 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 28-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.

What is the difference between a tool and a trigger?

A tool is something your AI calls, and there are 186 here. A trigger is something PopMCP watches for you: 12 Telegram events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Telegram.

Connect Telegram to your AI in minutes

Launch a hosted MCP endpoint for Telegram, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP