About Telegram MCP server
Telegram MCP server bridges the Telegram API and AI assistants, built on the Model Context Protocol. It is aimed at users who want an assistant to read and manage their Telegram dialogs and drafts. The README stresses reviewing the Telegram API Terms of Service before use.
Key features
- 01Get current account information (tg_me)
- 02List dialogs with optional unread filter
- 03Mark a dialog as read (tg_read)
- 04Retrieve messages from a specific dialog
- 05Send draft messages to any dialog
Use cases
- 01Summarize unread Telegram messages
- 02Prepare draft replies for pending messages
- 03Suggest a folder structure for existing chats
MCP support
The project runs as an MCP server that exposes Telegram tools to MCP clients such as Claude Desktop and Cursor.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMETelegram MCP server
The server is a bridge between the Telegram API and the AI assistants and is based on the Model Context Protocol.
Important
Ensure that you have read and understood the Telegram API Terms of Service before using this server. Any misuse of the Telegram API may result in the suspension of your account.
Table of Contents
What is MCP?
The Model Context Protocol (MCP) is a system that lets AI apps, like Claude Desktop or Cursor, connect to external tools and data sources. It gives a clear and safe way for AI assistants to work with local services and APIs while keeping the user in control.
What does this server do?
Capabilities
- Get current account information (
tool: tg_me) - List dialogs with optional unread filter (
tool: tg_dialogs) - Mark dialog as read (
tool: tg_read) - Retrieve messages from specific dialog (
tool: tg_dialog) - Send draft messages to any dialog (
tool: tg_send)
Prompt examples
Here are some example prompts you can use with AI assistants:
Message Management
- "Check for any unread important messages in my Telegram"
- "Summarize all my unread Telegram messages"
- "Read and analyze my unread messages, prepare draft responses where needed"
- "Check non-critical unread messages and give me a brief overview"
Organization
- "Analyze my Telegram dialogs and suggest a folder structure"
- "Help me categorize my Telegram chats by importance"
- "Find all work-related conversations and suggest how to organize them"
Communication
- "Monitor specific chat for updates about [topic]"
- "Draft a polite response to the last message in [chat]"
- "Check if there are any unanswered questions in my chats"
Installation
Homebrew
You can install a binary release on macOS/Linux using brew:
# Install
brew install chaindead/tap/telegram-mcp
# Update
brew upgrade chaindead/tap/telegram-mcp
NPX
You can run the latest version directly using npx (supports macOS, Linux, and Windows):
npx -y @chaindead/telegram-mcp
When using NPX, modify the standard commands and configuration as follows:
- Authentication command becomes:
npx -y @chaindead/telegram-mcp auth ...
- Claude MCP server configuration becomes:
{
"mcpServers": {
"telegram": {
"command": "npx",
"args": ["-y", "@chaindead/telegram-mcp"],
"env": {
"TG_APP_ID": "<your-api-id>",
"TG_API_HASH": "<your-api-hash>"
}
}
}
}
For complete setup instructions, see Authorization and Client Configuration.
From Releases
MacOS
Note: The commands below install to
/usr/local/bin. To install elsewhere, replace/usr/local/binwith your preferred directory in your PATH.
First, download the archive for your architecture:
# For Intel Mac (x86_64)
curl -L -o telegram-mcp.tar.gz https://github.com/chaindead/telegram-mcp/releases/latest/download/telegram-mcp_Darwin_x86_64.tar.gz
# For Apple Silicon (M1/M2)
curl -L -o telegram-mcp.tar.gz https://github.com/chaindead/telegram-mcp/releases/latest/download/telegram-mcp_Darwin_arm64.tar.gz
Then install the binary:
# Extract the binary
sudo tar xzf telegram-mcp.tar.gz -C /usr/local/bin
# Make it executable
sudo chmod +x /usr/local/bin/telegram-mcp
# Clean up
rm telegram-mcp.tar.gz
Linux
Note: The commands below install to
/usr/local/bin. To install elsewhere, replace/usr/local/binwith your preferred directory in your PATH.
First, download the archive for your architecture:
# For x86_64 (64-bit)
curl -L -o telegram-mcp.tar.gz https://github.com/chaindead/telegram-mcp/releases/latest/download/telegram-mcp_Linux_x86_64.tar.gz
# For ARM64
curl -L -o telegram-mcp.tar.gz https://github.com/chaindead/telegram-mcp/releases/latest/download/telegram-mcp_Linux_arm64.tar.gz
Then install the binary:
# Extract the binary
sudo tar xzf telegram-mcp.tar.gz -C /usr/local/bin
# Make it executable
sudo chmod +x /usr/local/bin/telegram-mcp
# Clean up
rm telegram-mcp.tar.gz
Windows
Windows
- Download the latest release for your architecture:
- Extract the
.zipfile - Add the extracted directory to your PATH or move
telegram-mcp.exeto a directory in your PATH
From Source
Requirements:
- Go 1.24 or later
- GOBIN in PATH
go install github.com/chaindead/telegram-mcp@latest
Configuration
Authorization
Before you can use the server, you need to connect to the Telegram API.
-
Get the API ID and hash from Telegram API
-
Run the following command:
Note: If you have 2FA enabled: add --password <2fa_password>
Note: If you want to override existing session: add --new
telegram-mcp auth --app-id <your-api-id> --api-hash <your-api-hash> --phone <your-phone-number>📩 Enter the code you received from Telegram to connect to the API.
-
Done! Please give this project a ⭐️ to support its development.
Client Configuration
Example of Configuring Claude Desktop to recognize the Telegram MCP server.
-
Open the Claude Desktop configuration file:
- in MacOS, the configuration file is located at
~/Library/Application Support/Claude/claude_desktop_config.json - in Windows, the configuration file is located at
%APPDATA%\Claude\claude_desktop_config.json
Note: You can also find claude_desktop_config.json inside the settings of Claude Desktop app
- in MacOS, the configuration file is located at
-
Add the server configuration
for Claude desktop:
{ "mcpServers": { "telegram": { "command": "telegram-mcp", "env": { "TG_APP_ID": "<your-app-id>", "TG_API_HASH": "<your-api-hash>", "PATH": "<path_to_telegram-mcp_binary_dir>", "HOME": "<path_to_your_home_directory" } } } }for Cursor:
{ "mcpServers": { "telegram-mcp": { "command": "telegram-mcp", "env": { "TG_APP_ID": "<your-app-id>", "TG_API_HASH": "<your-api-hash>" } } } }
JSON Schema Version
Some MCP clients (e.g. VS Code) do not support JSON Schema Draft 2020-12 and will reject tools that use it. You can override the JSON Schema version by setting the --schema-version flag or the TG_SCHEMA_VERSION environment variable.
Common values:
| Version | URL |
|---|---|
| Draft-07 (recommended for VS Code) | https://json-schema.org/draft-07/schema# |
| Draft 2020-12 (default) | https://json-schema.org/draft/2020-12/schema |
Star History
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.