
Telegram Slack Mcp
io.github.nileshpatil6由 GitHub 账号 nileshpatil6 发布v0.5.1更新于 Oct 24, 2026
Read and reply to your personal Telegram chats and all your Slack workspaces.
概览
让助手以你的身份读取、搜索并可选择回复你的个人 Telegram 聊天和 Slack 工作区。
- 可以做什么
- 包含两个本地 MCP 服务器,分别连接 Telegram 和 Slack,以你本人账号而非机器人身份工作。Telegram 工具可列出聊天、读取某个聊天、搜索消息、汇总未读内容并查看图片或文件;Slack 工具覆盖频道、私信、话题串、跨工作区搜索、未读汇总和文件查看。两者都提供登录和 whoami 工具,并在显式开启发送后可以你的身份发送消息。
- 适用场景
- 当你希望助手处理真实的个人对话时使用,例如查看未读私信、一次搜索多个 Slack 工作区,或起草回复,而不是只处理发给机器人的消息。若只需要机器人式集成或单一工作区连接器,则无需安装。
- 运行要求
- 通过 npx 或 uvx 以 stdio 在本地运行,仅支持桌面端。Telegram 需要 my.telegram.org 提供的 TELEGRAM_API_ID 和 TELEGRAM_API_HASH,并完成一次二维码登录;Slack 需要每个工作区一个用户令牌(xoxp-),放在 SLACK_USER_TOKENS 中。Telegram 会话保存在 CHAT_MCP_DATA_DIR,默认 ~/.chat-mcp。需要访问 Telegram 和 Slack API 的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Telegram Slack Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
telegram-slack-mcp
Give Claude your actual chats.
Two MCP servers that connect Claude to your personal Telegram and Slack accounts — your real DMs, groups, and channels, not a bot inbox.
Then just talk:
"what's unread on telegram from actual people?" "read my last 30 messages with Priya and draft a reply" "search all my slack workspaces for the deploy postmortem" "what's in the screenshot Priya sent me?"
Why this exists
Most Telegram integrations use the Bot API, which only sees messages sent to a bot
you created. It cannot read your existing conversations. telegram-slack-mcp uses MTProto,
the same protocol the official app uses, authenticating as you — so Claude sees the
chats you actually have.
For Slack, the usual connector is scoped to one workspace. telegram-slack-mcp takes one user
token per workspace and treats them as a single surface, so "search everywhere" means
everywhere.
Install
Pick whichever runtime you already have. Both ship the same tools.
Node
Python
Claude Code plugin
Other MCP clients (Claude Desktop, Cursor, …)
Setup
Telegram — 2 minutes
-
Go to https://my.telegram.org → API development tools → create an app.
-
Copy the
api_idandapi_hash, and set them: -
Link your account. Either ask Claude — "log into telegram" — or do it yourself in a terminal, which needs no MCP client at all:
Either way you scan a QR and the session is saved to
~/.chat-mcp.Through Claude:
It calls
login, which returns a link to a page showing a QR code (and the code as text, if your client renders it). Scan it from Telegram on your phone — Settings → Devices → Link Desktop Device — then it callslogin_statusto confirm. No phone number, no SMS code, no 2FA password typed anywhere. On the same machine you can click "open in Telegram Desktop" instead of scanning.The session is saved to
~/.chat-mcpand persists; you do this once.
Can't scan? Use the phone-number flow
login_start(phone) sends you a code, login_complete(code, password?) finishes.
Note that with this path your phone number and login code pass through the conversation
as tool arguments, so they land in the model's context. The QR flow keeps them out of it.
Slack — 5 minutes
-
Go to https://api.slack.com/apps → Create New App → From a manifest.
-
Paste
slack-app-manifest.yaml— it prefills every scope. -
Install to Workspace, then copy the User OAuth Token (
xoxp-…, notxoxb-). -
Repeat step 3 for each workspace you want. Same app, one token each.
-
Ask Claude: "connect my slack" — the
logintool prompts for the tokens, verifies each one against Slack, and saves them to~/.chat-mcp. Nothing to put in your config.Prefer environment variables? That still works:
Slack has no local OAuth flow, which is why you create the app yourself: Slack's OAuth requires a client secret and an HTTPS redirect URL, so a package distributed over npm cannot complete it without either shipping a secret publicly or running a callback server. This project has no server, so it asks for the token instead.
Tools
Telegram
Slack
Every Slack tool takes an optional workspace (any substring of the name). Leave it
blank to act across all of them; it's only required when a channel name exists in more
than one, and the error tells you which.
Configuration
Sending is off by default in both servers. Reading is the safe default; you opt into writing deliberately.
Privacy
Nothing is sent to any server belonging to this project. There is no such server.
telegram-slack-mcp runs entirely on your machine. The only network traffic it makes is directly
to Telegram's and Slack's own APIs, using your own credentials. There is no telemetry,
no analytics, no crash reporting, no license check, no "phone home" — grep the source,
there is no endpoint to find.
The data path is exactly this:
Your credentials never reach Claude. Your session file and xoxp- tokens stay in
~/.chat-mcp and in your environment; the servers use them locally to make API calls
and pass back only the messages themselves.
What does reach Claude is the chat content you ask about — because that is the point of the tool. If you ask Claude to read a conversation, that conversation goes into your Claude conversation and is handled under Anthropic's privacy policy, exactly like text you paste in yourself. Nothing else is read, and nothing is read in the background: the servers only act when Claude calls a tool.
The author of this project cannot see any of it.
Security
Read this part.
- These act as you, not as a bot. Anything sent shows as sent by your account, and people in those chats cannot tell the difference.
- The stored session is a full credential.
~/.chat-mcp/telegram.sessionand yourxoxp-tokens are equivalent to being logged in as you. Anyone who copies them has your account. They never leave your machine, and nothing here phones home. - Everything Claude reads enters the model's context. Don't point this at accounts holding data you would not send to a model.
- Telegram calls this a userbot. Automating a personal account is restricted by Telegram's ToS. Light personal read-and-reply use is common and low risk; bulk automation gets accounts banned. Your call, your account.
- Revoke any time: Telegram → Settings → Devices, or delete the token in Slack's app
settings. Deleting
~/.chat-mcpdrops the local session.
Troubleshooting
"Telegram not logged in yet" — run the login flow: ask Claude to log in with your
phone number. It persists after that; if it keeps reappearing, check that
CHAT_MCP_DATA_DIR is writable.
"Missing Telegram credentials" — TELEGRAM_API_ID / TELEGRAM_API_HASH aren't
reaching the server. With claude mcp add, pass them with -e.
Slack returns nothing at all — you're almost certainly authorized against an empty
or wrong workspace. Run whoami to see which workspaces are actually connected.
"#general" exists in several workspaces — pass workspace to disambiguate; the
error lists your options.
Slack search returns not_allowed_token_type — the token is a bot token (xoxb-).
You need the User OAuth token (xoxp-).
Development
License
MIT
来源:README.md,提交 e032a88
工具
0版本历史
1- v0.5.1最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分