chat-mcp
Connects to your Slack workspaces using user tokens to list and read channels and DMs, search messages, read threads, view unread summaries, and optionally send messages as you.
Connects to your personal Telegram account to read chats, DMs, groups, and channels, search messages, view unread summaries, and optionally send messages as you.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@chat-mcpwhat's unread on my Telegram from actual people?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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.
claude mcp add telegram -- npx -y telegram-slack-mcp telegram
claude mcp add slack -- npx -y telegram-slack-mcp slackThen 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"
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.
Related MCP server: google-chat-mcp
Install
Pick whichever runtime you already have. Both ship the same tools.
Node
claude mcp add telegram -- npx -y telegram-slack-mcp telegram
claude mcp add slack -- npx -y telegram-slack-mcp slackPython
claude mcp add telegram -- uvx telegram-slack-mcp telegram
claude mcp add slack -- uvx telegram-slack-mcp slackClaude Code plugin
/plugin marketplace add nileshpatil6/telegram-slack-mcp
/plugin install telegram@telegram-slack-mcp
/plugin install slack@telegram-slack-mcp{
"mcpServers": {
"telegram": {
"command": "npx",
"args": ["-y", "telegram-slack-mcp", "telegram"],
"env": { "TELEGRAM_API_ID": "1234567", "TELEGRAM_API_HASH": "your_hash" }
},
"slack": {
"command": "npx",
"args": ["-y", "telegram-slack-mcp", "slack"],
"env": { "SLACK_USER_TOKENS": "xoxp-one,xoxp-two" }
}
}
}Setup
Telegram — 2 minutes
Go to https://my.telegram.org → API development tools → create an app.
Copy the
api_idandapi_hash, and set them:claude mcp add telegram \ -e TELEGRAM_API_ID=1234567 \ -e TELEGRAM_API_HASH=your_hash \ -- npx -y telegram-slack-mcp telegramAsk Claude: "log into telegram, my number is +91…" It calls
login_start, Telegram texts you a code, you paste it, it callslogin_complete. That's the only time — the session is saved to~/.chat-mcpand persists forever.
Got 2FA? Give Claude your cloud password along with the code.
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.
Set them all at once, comma separated:
claude mcp add slack -e SLACK_USER_TOKENS=xoxp-aaa,xoxp-bbb -- npx -y telegram-slack-mcp slack
Tools
Telegram
tool | what it does |
| send yourself a login code |
| finish login, save the session |
| which account is connected |
| recent chats; |
| messages of one chat — |
| full-text search, one chat or all |
| catch-up view; |
| reply as you — off unless |
Slack
tool | what it does |
| every connected workspace and who you are in each |
| channels across workspaces |
| 1:1 and group DMs |
| one channel or DM |
| replies inside a thread |
| supports |
| what's unread everywhere |
| post as you — off unless |
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
variable | default | meaning |
| — | from my.telegram.org |
| — | from my.telegram.org |
|
|
|
| — | one |
|
|
|
|
| where the Telegram session is stored |
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 machine <--> Telegram / Slack APIs (your credentials, your account)
your machine <--> Claude (only what you ask Claude to read)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
git clone https://github.com/nileshpatil6/telegram-slack-mcp
cd telegram-slack-mcp
npm install && npm run build
node dist/cli.js telegram # run the server on stdio
cd python && python -m build # build the Python distributionLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables Claude to interact with your Telegram account, including reading messages, searching conversations, and sending messages.
- AlicenseNot gradedqualityDmaintenanceConnects Claude to Google Chat for searching messages, spaces, and DMs, automatically resolving user IDs to real display names.MIT
- FlicenseNot gradedqualityDmaintenanceEnables Claude to interact with Telegram, including listing chats, reading messages, sending messages, searching, and managing contacts.1
- AlicenseNot gradedqualityCmaintenanceConnect Claude to your personal Telegram account via MTProto to read messages, search chats, send replies, forward files, and more using your real account.133MIT
Related MCP Connectors
Drive your real WhatsApp inbox from Claude — send, reply, label, assign, and triage via TimelinesAI.
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nileshpatil6/telegram-slack-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server