[!WARNING] This server signs in as a real Telegram user (not a bot). Sessions live in ~/.telegram-agent/. Treat that directory like a password.
MCP Telegram is an MCP project maintained in the tacticlaunch/mcp-telegram repository. The maintainer describes its purpose as “[!WARNING] This server signs in as a real Telegram user (not a bot). Sessions live in ~/.telegram-agent/. Treat that directory like a password”. Read the project documentation for the complete scope.
The documented npm package is mcp-telegram. The configuration below comes from the maintainer’s example; adapt its paths and account values to your environment.
The example declares TELEGRAM_API_ID, TELEGRAM_API_HASH. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| login | Browser-based sign-in. Adds an account. |
| list_accounts | List signed-in accounts. |
| list_dialogs | List dialogs. Filters: unread, archived, ignorePinned, folder, limit. |
| list_messages | List messages in a dialog. |
| search_messages | Search inside one dialog (text, type filter, sender, date range). |
| search_global | Search across every chat. |
| search_dialogs | Find dialogs by name/title/username substring. |
| send_message | Send text. |
| send_file | Send a file (path or URL). Albums via array. |
| download_media | Save a message's media to disk. |
| transcribe_message | Transcribe voice/video (Premium). |
| invoke_mtproto | Call any MTProto method by qualified name (e.g. messages.SendMessage, stories.GetAllStories). String values for peer/channel/user/fromPeer/toPeer/bot/chat… |
| logout | Drop a local session and revoke it on Telegram. |
| open_settings | Open the local settings page (tool surface + read-only). |
| get_me | Return the profile of the authenticated user. |
| update_profile | Change own first/last name and bio. |
| update_my_username | Set or clear own @username. |
| set_birthday | Set the account birthday. |
| set_profile_photo | Upload a new avatar (local path or URL). |
| resolve_username | Resolve @username to a user/channel/chat entity. |
| list_folders | List custom dialog folders (chat filters). |
| list_contacts | All contacts. |
| get_message | Fetch one or more messages by id. |
| get_message_reactions | Read reactions. |
| mark_as_read | Mark messages read up to an id. |
| edit_message | Edit a previously sent message. |
| delete_messages | Delete by id (optionally revoke for all). |
| forward_messages | Forward messages between dialogs. |
| send_reaction | Set emoji reactions on a message. |
| send_message_to_phone | Send to a phone number, auto-creates a temporary contact. |
| download_profile_photo | Save a peer's avatar to disk. |
| send_poll | Send a poll. Supports quiz, multiple-choice, anonymous, close period. |
| vote_poll | Cast a vote. |
| close_poll | Finalize a poll. |
| get_poll_results | Fetch tally. |
| set_default_reaction | Set account-wide default. |
| list_stories | Feed of contacts' stories. |
| get_peer_stories | One peer's stories. |
| send_story | Post a story (photo or video). |
| delete_story | Delete own stories. |
| view_story | Mark stories viewed. |
| get_story_viewers | List who viewed your story. |
| ban_user | Full ban (optional untilDate). |
| unban_user | Lift restrictions. |
| restrict_user | Apply a custom rights mask. |
| promote_admin | Grant admin rights (with rank). |
| demote_admin | Strip admin rights. |
| invite_user | Add users to a channel/supergroup. |
| kick_participant | Kick from chat/channel. |
| get_participant | Single participant info. |
| list_participants | Members with filter (admins/banned/bots/...) and substring search. |
| delete_user_history | Remove every message by a user. |
| get_admin_log | Recent admin events with event-type filter. |
| edit_title | Change title (works for channels, supergroups, and basic groups). |
| edit_about | Change description. |
| edit_photo | Change avatar (path or URL). |
| update_username | Set/clear public @username. |
| check_username | Check availability. |
| set_slow_mode | Set slow-mode seconds. |
| toggle_signatures | Author signatures on channel posts. |
| toggle_pre_history_hidden | Hide history from new members. |
| toggle_join_request | Require admin approval to join. |
| leave_channel | Leave a channel/supergroup. |
| get_channel_info | Extended info (about, counts, linked chat, slow-mode). |
| get_user_info | Extended user info (bio, common chats). |
| create_channel | New broadcast channel or supergroup (optional forum mode). |
| delete_channel | Permanently delete. |
| migrate_chat | Basic group → supergroup. |
| transfer_ownership | Hand over creator rights (requires 2FA password). |
| create_invite_link | New link with optional expiry, usage cap, join-request gate. |
| list_invite_links | List active or revoked links. |
| revoke_invite_link | Revoke a specific link. |
| list_invite_joiners | List users that joined via a link. |
| list_topics | List forum topics. |
| create_topic | Create a new topic. |
| edit_topic | Rename, re-icon, close, hide. |
| save_draft | Save a draft for a dialog. |
| clear_draft | Drop the draft for a dialog. |
| list_drafts | List all dialog drafts. |
| mute_peer | Mute a chat (optional untilDate). |
| unmute_peer | Unmute. |
| get_notify_settings | Read settings. |
| set_notify_settings | Update mute, previews, sound, story-mute. |
| create_folder | New folder with include/exclude rules. |
| edit_folder | Replace folder rules. |
| delete_folder | Remove a folder. |
| reorder_folders | Set display order. |
| add_contact | Add a user to contacts. |
| delete_contact | Remove users from contacts. |
| search_contacts | Search contacts + global directory. |
| list_blocked | Block list. |
| get_privacy | Read a privacy key. |
| set_privacy | Update a privacy key (mode + allow/disallow lists). |
| get_my_stickers | Installed sticker sets. |
| install_sticker_set | Install by short name. |
| add_recent_sticker | Pin a sticker to recent. |
| get_my_boosts | List your boost slots. |
| apply_boost | Apply slots to a channel. |
| get_inline_bot_results | Run an inline bot query. |
| Variable | Effect |
{
"mcpServers": {
"telegram": {
"command": "npx",
"args": [
"-y",
"mcp-telegram"
],
"env": {
"TELEGRAM_API_ID": "123456",
"TELEGRAM_API_HASH": "abc..."
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| TELEGRAM_API_ID | Declared in the maintainer’s client configuration. | Yes |
| TELEGRAM_API_HASH | Declared in the maintainer’s client configuration. | Yes |
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Build a programmable telecommunications stack for connecting telephony services with the Internet via a cloud-based utility.
Webinar analytics for Zoom Meeting-based webinars: Funnels, transcripts, email engagement
Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a searchable Graphlit project.
MCP server for FundzWatch.ai — real-time business-event intelligence for AI agents: 14 tools (7 key-less) covering AI-scored leads, funding & exec
Board, ladder and journal for AI trading agents. Free desk key; a verified email comps a Seat.