Your authorized Telegram account,
inside Claude
Add tg.mctl.ai as a custom connector in Claude — on the web, in the desktop and mobile apps, or in Claude Code — and ask Claude to summarise chats, search messages, and draft replies in the Telegram account you own. ChatGPT can add it by URL too; other MCP clients are not yet tested. New accounts start read-only unless you choose Read + send when you connect.
Privacy policy · Security model · [email protected] · Want the session on your own machine? Local Bridge
What you can do
Summarise unread chats
Ask Claude what you missed while you were away. Get a digest of any chat, group, or channel without opening Telegram.
Draft and review messages
Let Claude write or check a reply before it goes out. Review tone, catch errors, or translate — nothing is sent until you allow sending.
Search across conversations
Find anything you said or received, instantly. Search by topic, person, or date across your full history.
Triage your inbox
List every chat and surface what still needs a reply, so you can clear a backlog of unread conversations in one pass.
Translate on the fly
Read foreign-language chats in your own language, or draft a reply in theirs — without leaving the conversation.
Pin what matters
Ask Claude to pin a key message so it stays at the top for everyone in the chat. It asks you to confirm first, needs sending turned on, and needs admin rights in groups.
How it works
- You sign in with Telegram and, once, give MCTL message access. MCTL stores an encrypted MTProto session on your behalf.
- When you ask Claude about your chats, it calls the MCP tools on this server over an OAuth-authenticated connection.
- MCTL makes MTProto calls to Telegram, formats the result, and returns it to Claude.
Connect in Claude
- On claude.ai or in the Claude desktop app, open Customize → Connectors and choose Add custom connector.
- Name it
MCTL Assistantand set the MCP server URL tohttps://tg.mctl.ai/mcp. Keep the default sign-in settings: Claude registers itself with this server, so there is no client ID or secret to enter. Click Add. - Click Connect and sign in with Telegram in the browser window that opens. The first time, MCTL asks for message access: choose Read only (the default) or Read + send, then enter your phone number, the login code Telegram sends to your Telegram app, and your two-step verification password if you use one.
- In a chat, open the + menu → Connectors and make sure MCTL Assistant is switched on. Try: “What did I miss in my unread Telegram chats today?”
- Team and Enterprise: an Owner adds the connector once in Organization settings → Connectors (Add → Custom → Web, same URL). Members then find it under Customize → Connectors and click Connect; each member signs in with their own Telegram account.
- Mobile: a connector added on the web or in the desktop app is available in the Claude iOS and Android apps once you are signed in.
- Free plan: Claude allows one custom connector on the Free plan.
- Claude Code: add it from your terminal, then run
/mcpinside Claude Code to sign in:claude mcp add --transport http --scope user mctl https://tg.mctl.ai/mcp
Anthropic's guide: Get started with custom connectors using remote MCP.
Other MCP clients
MCTL is a standard remote MCP server with OAuth: add https://tg.mctl.ai/mcp, sign in with Telegram once, and pick read-only or read and send. Claude is the client we test against; the clients marked not yet tested below have no verified sign-in against tg.mctl.ai, so treat their snippets as a starting point.
- ChatGPT: on the web, open Plugins → Personal, then Add → Add custom MCP server. Name it
MCTL Assistant, keep Server URL and set it tohttps://tg.mctl.ai/mcp, keep OAuth as the authentication with the discovered settings (there is no client ID or secret to enter), tick I understand and want to continue and click Create as a plugin. Sign in with Telegram when ChatGPT opens the browser window. Which plans can add custom MCP servers is set by OpenAI. MCTL is not listed in the public plugin directory; adding it as your own plugin is the supported path. - Cursor (not yet tested): add to
~/.cursor/mcp.json, then sign in when Cursor prompts. Acursor://redirect is refused today (onlyhttpsand loopback redirects are accepted), so sign-in may fail:{ "mcpServers": { "mctl": { "url": "https://tg.mctl.ai/mcp" } } } - VS Code (not yet tested): run MCP: Add Server → HTTP, or add to
.vscode/mcp.json:{ "servers": { "mctl": { "type": "http", "url": "https://tg.mctl.ai/mcp" } } } - Windsurf and others (not yet tested): paste the MCP URL into the client's remote MCP server settings. OAuth discovery URLs and a smoke-test command are in /docs.
Data at a glance
- Stored on this server: an AES-256-GCM encrypted Telegram session blob per account and audit metadata without message text. When Communication Agent is enabled, relevant incoming message/event content and proposed action payloads are also stored encrypted at rest.
- Not stored in logs or audit history: message bodies, phone numbers, 2FA passwords, or OAuth tokens.
- Through your AI assistant: your prompts, tool arguments, and tool results pass through the assistant to reach this server. The assistant's provider (Anthropic for Claude, OpenAI for ChatGPT) handles that traffic under its own policies.
- Your controls: disconnect or delete your account at any time via MCP tools or the HTTP API, or on the manage page. Full inventory in our privacy policy.
Our trust model
MCTL holds a server-side Telegram session on your behalf. Here is exactly what that means:
- Sessions are AES-256-GCM encrypted at rest with per-user keys derived via HKDF-SHA256.
- Message text is never written to logs or audit history. Communication Agent message and action content is encrypted at rest and retained according to the policy in /privacy.
- You can disconnect (soft revoke) or delete (hard delete) your session at any time using the MCP tools or the API.
MCP endpoint: https://tg.mctl.ai/mcp
OAuth protected resource document: https://tg.mctl.ai/.well-known/oauth-protected-resource
Keep the session on your machine
Local Bridge (beta) is the self-service path where the Telegram session stays on a machine you control and tg.mctl.ai acts only as a relay. It is not the standard connector install path. You need a machine that stays on. Activation is self-service.
init, thenlogin --phone +…activate --server https://tg.mctl.aiand approve the device in a browser. Afterlogin,--telegram-idis optional.daemon— first credential is read-only. Turn sending on yourself withset_send_consentor the manage page.
Common questions
- Which AI assistants does this work with?
- Claude first — claude.ai, the desktop and mobile apps, and Claude Code — and ChatGPT by URL. It is a standard remote MCP server with OAuth, so other clients such as Cursor, VS Code and Windsurf may work, but they are not yet tested against tg.mctl.ai.
- Is this an official Telegram app?
- No. MCTL Assistant is an unofficial third-party connector using the Telegram API. It is an independent project, not affiliated with or endorsed by Telegram, Anthropic or OpenAI. It operates only on the Telegram account you explicitly connect, and you remain responsible for following Telegram's terms.
- Can it send messages on my behalf?
- Only if you allow it. When you connect, MCTL asks whether to give Read only (the default) or Read + send access. With sending off (
send_enabled=false),send_messageandsend_mediareturn a preview (sent=false) instead of delivering, and the other write tools (edit, delete, forward, react, pin) refuse with an error. You can change your choice later withset_send_consentor the manage page. A real send also needs thetelegram:messages:sendscope and the operator-levelALLOW_SENDflag (on for tg.mctl.ai). There is no mode argument to bypass the gate. - What does my AI assistant see?
- Your prompts, the tool arguments the assistant sends (for example a chat name, or the text of a draft), and the tool results this server returns. That traffic is handled by the assistant's provider under its own policies. For ordinary MCP calls, this server stores an encrypted session blob and audit metadata. Listener-enabled Communication Agent accounts additionally store encrypted message and action content as described in /privacy.
- What data does MCTL store?
- An encrypted session blob and metadata are stored per account. When Communication Agent is enabled, relevant incoming messages/events and proposed action payloads are stored encrypted at rest; logs and audit history still exclude message bodies. See /privacy for retention details.
- How do I revoke access?
- Remove the connector in Claude (Customize → Connectors) or your other client to stop it calling this server. To end the Telegram session itself, call
disconnect_telegram_account(soft revoke, keeps the row) ordelete_telegram_account(hard delete: removes the encrypted session and stored data, keeps only your Telegram id, tier and deletion time — see /privacy) from a connection grantedaccount:manage, or disconnect on the manage page after signing in with Telegram. You can also revoke from Telegram's side: Settings → Devices. - Is this open source?
- Yes. The full source is at github.com/mctlhq/mctl-telegram. You can audit the code, run your own deployment, or contribute.
- What is the Local Bridge?
- An optional self-hosted mode (beta) where the Telegram session stays on your own machine and tg.mctl.ai acts only as a relay. It is not part of the standard hosted connect path, and it needs a machine that stays on, but turning it on is self-service:
init,login,activate,daemon. Migrating an existing hosted account into this mode still usesset_account_mode(an operator step, not onboarding). Start at the quick start.
Support and publisher
- Product: MCTL Assistant, an unofficial third-party connector using the Telegram API
- Publisher: mctl
- Support: [email protected]
- Privacy policy: https://tg.mctl.ai/privacy
- Security reports: [email protected] (see /security)
- Source code: github.com/mctlhq/mctl-telegram (open source — audit, self-host, or contribute)