Chatroost — unofficial Telegram MCP server
io.github.mcp-telegram由 GitHub 账号 mcp-telegram 发布v1.45.1更新于 Nov 3, 2026
非官方 Telegram MCP 服务器——在你自己的 Telegram 账号中读取、搜索、回复和添加回应。
AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。
原文描述
Unofficial Telegram MCP server — read, search, reply and react in your own Telegram account.
概览
Chatroost — unofficial Telegram 的托管 MCP 服务(mcp.mcp-telegram.com);需要 OAuth 登录;Streamable HTTP。
暂无 AI 概览:以下信息来自注册中心条目和服务本身。
- 端点
- mcp.mcp-telegram.com
- 最近检查
安装
在 SourceWeft 中
- 打开 控制台中的 Chatroost — unofficial Telegram MCP server,将其添加到工作区。
- 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
- 为需要使用其工具的对话启用该服务。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
交给智能体安装
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.mcp-telegram%2Fmcp-telegram/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。其他 MCP 客户端
把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。
{
"mcpServers": {
"chatroost-unofficial-telegram": {
"type": "http",
"url": "https://mcp.mcp-telegram.com/mcp"
}
}
}README
Telegram MCP Server
[npm] [npm downloads] [Node.js] [TypeScript] [MCP SDK] [License: MIT] [mcp-telegram MCP server]
📖 Documentation · ☁️ Cloud version — connect Telegram to Claude.ai or ChatGPT in 30 seconds with QR code, no API keys needed.
[MCP Telegram demo — connect and summarize chats in Claude]
Telegram MCP Server — a Model Context Protocol server that connects AI assistants like Claude and ChatGPT to Telegram via the MTProto protocol. Unlike bots, this runs as a userbot -- it operates under your personal Telegram account using GramJS, giving full access to your chats, contacts, and message history.
Features
- Comprehensive tool coverage -- the most full-featured Telegram MCP server available
- MTProto protocol -- direct Telegram API access, not the limited Bot API
- Userbot -- operates as your personal account, not a bot
- Full-featured -- messaging, reactions, polls, scheduled messages, stickers, media, contacts, and more
- Forum Topics -- list topics, read per-topic messages, send to specific topics, per-topic unread counts
- Stickers -- search sticker sets, browse installed/recent stickers, send stickers to any chat
- Account & profile management -- update profile, set emoji status, birthday, personal channel, profile photo, manage privacy settings, sessions, auto-delete timers
- Chat folders -- create, edit, delete and reorder folders, toggle folder tags, read suggested folders (v1.33.0)
- Global privacy -- read and set account-wide privacy settings (v1.33.0)
- Global search -- search messages across all chats at once
- Real-time polling -- fetch updates via stateless cursors; agent owns
{pts, qts, date}state - Inline bots & buttons -- query inline bots, send results, press callback buttons
- Stories -- read stories from peers, get story view stats; publish/edit/delete stories, react, pin, stealth mode, archive, report (v1.30.0)
- Discussion -- get discussion-group info for channel posts with comments, list groups eligible for discussion (v1.30.0)
- Read Receipts -- who read a message in a small group, when your private message was read (v1.30.0)
- Admin controls -- toggle channel signatures, anti-spam, forum mode, prehistory; approve join requests
- Stats -- channel and supergroup analytics (GetBroadcastStats / GetMegagroupStats)
- Boosts & Business -- boost status, boosters list, Telegram Business chat links CRUD, work hours, location, greeting/away/intro messages
- Star gifts -- browse available and saved gifts, save/convert gifts, manage Stars balance and subscriptions (opt-in via
MCP_TELEGRAM_ENABLE_STARS=1, v1.34.0) - Shared daemon -- one background process serves multiple MCP clients over a single Telegram session; see the shared-daemon guide (v1.38.0)
- QR code login -- authenticate by scanning a QR code in the Telegram app
- Session persistence -- login once, stay connected across restarts
- Human-readable output -- sender names are resolved, not just numeric IDs
- Works with any MCP client -- Claude Code, Claude Desktop, ChatGPT, Cursor, VS Code, Mastra, etc.
Prerequisites
- Node.js 18 or later
- Telegram API credentials --
API_IDandAPI_HASHfrom my.telegram.org
Quick Start
1. Get Telegram API credentials
- Go to my.telegram.org and log in with your phone number.
- Navigate to API development tools.
- Create a new application (any name and platform).
- Copy the App api_id and App api_hash.
2. Login
A QR code will appear in the terminal. Open Telegram on your phone, go to Settings > Devices > Link Desktop Device, and scan the code. The session is saved to ~/.mcp-telegram/session and reused automatically.
Custom session path: set
TELEGRAM_SESSION_PATH=/path/to/sessionto store the session file elsewhere.
Two-step verification (2FA): if your account has a cloud password enabled, scanning the QR code is not enough — Telegram also requires the password. Provide it via
TELEGRAM_2FA_PASSWORDso the login can complete:The password is only used locally to answer Telegram's SRP challenge and is never persisted.
Local files: tools that upload a file (
telegram-send-file,telegram-send-voice,telegram-send-album, stories, profile and group photos) read files under your home folder and temp folders, and downloads are saved toDownloads,Desktop,Documentsor temp folders. Hidden files and folders (~/.ssh,~/.mcp-telegram, ...),~/Library,~/AppDataand the session file are always refused, and an existing file is never overwritten (name (1).extis used). To use other folders, list them inMCP_TELEGRAM_FILE_DIRS(separated by:, or;on Windows); this replaces the defaults.
3. Add to Claude
That's it! Ask Claude to run telegram-status to verify.
Multiple Accounts
Use TELEGRAM_SESSION_PATH to run separate Telegram accounts side by side:
Then add each as a separate MCP server:
Each account gets its own session file — no conflicts.
Multiple agents / concurrent clients (shared daemon)
The opposite of multiple accounts: one account driven by many clients at once — several Claude Code windows, parallel sub-agents, or multiple IDEs. Normally each process opens the same session and they evict one another with AUTH_KEY_DUPLICATED. Serve mode fixes this.
Run a single persistent daemon that owns the one Telegram connection. Every other process auto-detects the daemon (via a PID lock) and becomes a thin client that proxies tool calls to it over a local Unix socket:
Then point each MCP client at the same install with the same TELEGRAM_SESSION_PATH — no serve argument. They connect to the daemon automatically; closing any client never drops the shared connection. Credentials are only required by the daemon (the owner), so client commands can omit TELEGRAM_API_ID/TELEGRAM_API_HASH and keep them where the daemon runs.
See the shared daemon guide for a systemd unit and SSH usage.
Proxy Support
If Telegram is blocked or you're running in a containerized environment (Docker, K3s), use a SOCKS5 or MTProxy:
Connecting via WSS (port 443)
If your VPS or hosting IP is reachable on outbound port 443 but not the default MTProto port 80 (some cloud providers ban port 80 on Telegram DC IP ranges as anti-abuse policy), set:
Installation Options
npx (recommended, zero install)
No need to clone or install anything. Just use npx @overpod/mcp-telegram.
Global install
Pre-built binary (no runtime needed)
Download from Releases — standalone single-file binaries, zero dependencies:
From source
Docker
Login (interactive terminal required):
Run the MCP server:
Note: Login must be done once via terminal. After that, the session is persisted in
~/.mcp-telegramand reused automatically.
Usage with MCP Clients
Claude Code (CLI)
Claude Desktop
-
Open your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the Telegram server:
-
Restart Claude Desktop.
-
Ask Claude: "Run telegram-login" -- a QR code will appear. If the image is not visible, it's also saved to
~/.mcp-telegram/qr-login.png. Scan it in Telegram (Settings > Devices > Link Desktop Device). -
Ask Claude: "Run telegram-status" to verify the connection.
Note: No terminal required! Login works entirely through Claude Desktop.
Claude Desktop (Binary)
Same setup, but using the pre-built binary instead of npx:
Claude Desktop (Docker)
-
Login via terminal first (see Docker section above).
-
Add to your config file:
- Restart Claude Desktop. Ask Claude: "Run telegram-status" to verify.
Cursor / VS Code
Add the same JSON config above to your MCP settings (Cursor Settings > MCP, or VS Code MCP config).
Mastra
Tools
All tools are auto-discoverable via MCP — your AI client will see the full list with parameters and descriptions when connected.
Tip: Ask your AI assistant "What Telegram tools are available?" to get the full list with parameters and descriptions.
Optional Features
Some tools are disabled by default and must be opted in via environment variables:
Add these to your .env file or MCP client config to enable them.
Development
Project Structure
Tech Stack
- TypeScript -- ES2022, ESM modules
- GramJS (
telegram) -- Telegram MTProto client - @modelcontextprotocol/sdk -- MCP server framework
- Zod -- Runtime schema validation for tool parameters
- Biome -- Linter and formatter
- tsx -- TypeScript execution without a build step
- dotenv -- Environment variable management
Troubleshooting
AUTH_KEY_DUPLICATED
A Telegram session can only be used by one process at a time. If you get AUTH_KEY_DUPLICATED, it means another process is already using the same session file.
Solution: Create separate sessions for each environment:
Then set TELEGRAM_SESSION_PATH in each environment's MCP config accordingly.
Security
- API credentials are stored in
.env(gitignored) - Session is stored in
~/.mcp-telegram/sessionwith0600permissions (owner-only access) - Session directory is created with
0700permissions - Phone number is not required -- QR-only authentication
- No data is sent to third-party services -- all communication goes directly to Telegram servers via MTProto
- QR login codes are generated locally and never leave your machine
- One session per process -- using the same session in multiple processes simultaneously causes
AUTH_KEY_DUPLICATEDerrors (see Troubleshooting) - This is a userbot (personal account), not a bot -- respect the Telegram Terms of Service
License
MIT
来源:README.md,提交 0fde882
工具
0版本历史
11- v1.45.1最新Nov 3, 2026
- v1.44.2Nov 1, 2026
- v1.44.1Oct 26, 2026
- v1.43.7Oct 26, 2026
- v1.43.6Oct 13, 2026
- v1.43.5Oct 13, 2026
- v1.43.4Oct 5, 2026
- v1.43.2Oct 3, 2026
- v1.43.1Sep 29, 2026
- v1.43.0Sep 21, 2026
- v1.42.0Sep 16, 2026
评分
已满足适用检查项的 85%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通必需25 分
- 已声明认证方式必需10 分
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分