
Telegram
PluginAnthropic 官方的 Telegram 频道插件(研究预览):把 Telegram 机器人接入正在运行的 Claude Code 会话,在手机上给 agent 发消息、收回复,内置配对与白名单访问控制。需要 Bun 和 BotFather 机器人 Token,启动时要加 --channels 参数。
Telegram
Connect a Telegram bot to your Claude Code with an MCP server.
The MCP server logs into Telegram as a bot and provides tools to Claude to reply, react, or edit messages. When you message the bot, the server forwards the message to your Claude Code session.
Prerequisites
- Bun — the MCP server runs on Bun. Install with
curl -fsSL https://bun.sh/install | bash.
Quick Setup
Default pairing flow for a single-user DM bot. See ACCESS.md for groups and multi-user setups.
1. Create a bot with BotFather.
Open a chat with @BotFather on Telegram and send /newbot. BotFather asks for two things:
- Name — the display name shown in chat headers (anything, can contain spaces)
- Username — a unique handle ending in
bot(e.g.my_assistant_bot). This becomes your bot's link:t.me/my_assistant_bot.
BotFather replies with a token that looks like 123456789:AAHfiqksKZ8... — that's the whole token, copy it including the leading number and colon.
2. Install the plugin.
These are Claude Code commands — run claude to start a session first.
Install the plugin:
/plugin install telegram@claude-plugins-official
3. Give the server the token.
/telegram:configure 123456789:AAHfiqksKZ8...
Writes TELEGRAM_BOT_TOKEN=... to ~/.claude/channels/telegram/.env. You can also write that file by hand, or set the variable in your shell environment — shell takes precedence.
To run multiple bots on one machine (different tokens, separate allowlists), point
TELEGRAM_STATE_DIRat a different directory per instance.
4. Relaunch with the channel flag.
The server won't connect without this — exit your session and start a new one:
claude --channels plugin:telegram@claude-plugins-official
5. Pair.
With Claude Code running from the previous step, DM your bot on Telegram — it replies with a 6-character pairing code. If the bot doesn't respond, make sure your session is running with --channels. In your Claude Code session:
/telegram:access pair <code>
Your next DM reaches the assistant.
Unlike Discord, there's no server invite step — Telegram bots accept DMs immediately. Pairing handles the user-ID lookup so you never touch numeric IDs.
6. Lock it down.
Pairing is for capturing IDs. Once you're in, switch to allowlist so strangers don't get pairing-code replies. Ask Claude to do it, or /telegram:access policy allowlist directly.
Access control
See ACCESS.md for DM policies, groups, mention detection, delivery config, skill commands, and the access.json schema.
Quick reference: IDs are numeric user IDs (get yours from @userinfobot). Default policy is pairing. ackReaction only accepts Telegram's fixed emoji whitelist.
Tools exposed to the assistant
| Tool | Purpose |
|---|---|
reply | Send to a chat. Takes chat_id + text, optionally reply_to (message ID) for native threading and files (absolute paths) for attachments. Images (.jpg/.png/.gif/.webp) send as photos with inline preview; other types send as documents. Max 50MB each. Auto-chunks text; files send as separate messages after the text. Returns the sent message ID(s). |
react | Add an emoji reaction to a message by ID. Only Telegram's fixed whitelist is accepted (👍 👎 ❤ 🔥 👀 etc). |
edit_message | Edit a message the bot previously sent. Useful for "working…" → result progress updates. Only works on the bot's own messages. |
Inbound messages trigger a typing indicator automatically — Telegram shows "botname is typing…" while the assistant works on a response.
Photos
Inbound photos are downloaded to ~/.claude/channels/telegram/inbox/ and the
local path is included in the <channel> notification so the assistant can
Read it. Telegram compresses photos — if you need the original file, send it
as a document instead (long-press → Send as File).
No history or search
Telegram's Bot API exposes neither message history nor search. The bot
only sees messages as they arrive — no fetch_messages tool exists. If the
assistant needs earlier context, it will ask you to paste or summarize.
This also means there's no download_attachment tool for historical messages
— photos are downloaded eagerly on arrival since there's no way to fetch them
later.
相关资源

Discord
PluginAnthropic 官方的 Discord 频道插件:把 Discord 机器人接入正在运行的 Claude Code 会话,在私信或指定频道里给 agent 发消息、收回复与附件,内置配对与白名单访问控制。需要 Bun 和机器人 Token,启动时加 --channels 参数。
anthropics/claude-plugins-official40.5k
Enterprise Search
PluginAnthropic 官方知识工作插件:一次提问同时检索已接入的聊天、邮件、云盘文档、Wiki 与项目管理工具,汇总成带出处的答案,并能生成每日或每周动态摘要。预置 Slack、Notion、Atlassian、Asana 等 MCP 连接,需逐个授权。
anthropics/knowledge-work-plugins29.9k
Telegram MCP
MCP基于 Telethon 以个人账号操作 Telegram:搜索与收发消息、定时发送、管理联系人、群组与频道,提供 80 多个工具,可限制为只读。需申请 API ID 并在本地运行服务。
chigwell/telegram-mcp1.8k
Slack MCP and Skills Plugin
PluginSlack 官方插件:接入 Slack 托管 MCP,可搜索消息与文件、发送或定时发送消息、读写 canvas;附带频道总结、站会汇报等命令和 Slack 应用开发技能。需要工作区管理员批准。
slackapi/slack-skills-plugin149
OpenClaw
CLI开源的个人 AI 助手,运行在自己的电脑上,经 Telegram、Slack、iMessage 等 20 多个聊天渠道与你对话;openclaw 命令负责网关、渠道配对与插件管理,模型可在 Claude、Codex 与本地模型间切换。
openclaw/openclaw392k
document-skills
PluginAnthropic 官方文档技能包,也是 Claude 文件能力背后的实现:创建、编辑和分析 Word、Excel、PowerPoint 与 PDF,支持修订批注、公式和表单填写。源码公开,但不是开源许可。
anthropics/skills182k