telegram-mcp
Telegram MCP Server
Локальный сервер Model Context Protocol, который предоставляет ИИ-агенту (Claude Code, Claude Desktop или любому MCP-клиенту) контролируемый доступ к вашему собственному аккаунту Telegram: список чатов, чтение истории, поиск и отправка сообщений через MTProto API Telegram.
Создан на Python + Telethon. Полностью работает на вашем компьютере; ваша сессия входа никогда его не покидает.
Why
Telegram Bot API не может видеть ваши существующие чаты; бот — это отдельная личность и получает только сообщения, явно отправленные ему. Чтобы агент мог работать с вашими реальными разговорами, вам нужен MTProto client API, аутентифицированный как ваша учётная запись. Этот проект оборачивает это в небольшой специализированный MCP-сервер, чтобы любой MCP-совместимый агент мог читать и действовать в вашем Telegram; без необходимости каждый раз писать связующий код.
Related MCP server: telegram-mcp
How it fits together
Telegram бот — это отдельная личность и видит только сообщения, отправленные ему. Чтобы агент мог работать с вашими разговорами, сервер аутентифицируется как ваша учётная запись через MTProto, вот почему строка сессии так важна.
flowchart LR
AGENT["<b>MCP client</b><br/>Claude Code · Claude Desktop<br/>or any MCP-capable agent"]
subgraph LOCAL ["Your machine — nothing leaves it but Telegram traffic"]
direction TB
SRV["<b>server.py</b> · FastMCP stdio server<br/>connects lazily on first tool call<br/>verifies the session is authorized"]
TOOLS["<b>6 tools</b><br/>get_me · list_chats · get_history<br/>search_messages · search_all · send_message"]
ENV[("<b>.env</b> · git-ignored<br/>api_id · api_hash<br/><b>SESSION_STRING</b><br/><i>equivalent to being logged in as you</i>")]
LOGIN["<b>login.py</b> · run once<br/>phone + code + 2FA → StringSession"]
SRV --> TOOLS
LOGIN -->|"writes"| ENV
ENV -->|"reads"| SRV
end
subgraph TL ["Telethon → MTProto"]
direction TB
M1["iter_dialogs"]
M2["iter_messages"]
M3["SearchGlobalRequest"]
M4["send_message"]
end
TG[("<b>Telegram</b><br/>your real account,<br/>your existing chats")]
BOT(["Bot API<br/><i>cannot see your chats —<br/>this is why MTProto</i>"])
AGENT <-->|"MCP over stdio"| SRV
TOOLS --> M1
TOOLS --> M2
TOOLS --> M3
TOOLS --> M4
TL <--> TG
BOT -.->|"✗"| TG
classDef secret fill:#7f1d1d,stroke:#f87171,stroke-width:2px,color:#fee2e2
classDef no fill:#0f172a,stroke:#475569,stroke-width:1.5px,color:#94a3b8
classDef core fill:#312e81,stroke:#818cf8,stroke-width:2px,color:#e2e8f0
class ENV secret
class BOT no
class SRV,TOOLS coreРезультаты возвращаются в виде простых JSON-сериализуемых словарей, поэтому агент обобщает структурированные данные, а не извлечённый текст.
Features
6 инструментов, покрывающих основные операции чтения/записи (см. ниже)
Только локально — учётные данные и сессия хранятся в git-ignored
.env; ничего не отправляется никуда, кроме TelegramСтандартный MCP stdio-сервер — работает с Claude Code, Claude Desktop или любым MCP-клиентом
Одноразовый вход — интерактивный скрипт сохраняет переиспользуемую строку сессии; не нужно повторно аутентифицироваться при каждом запуске
Маленький и читаемый — ~150 строк Python, легко проверять и расширять
Tools
Tool | Description |
| Возвращает подключённый аккаунт (проверка) |
| Ваши последние разговоры |
| Последние сообщения из одного чата |
| Поиск в одном чате |
| Поиск по всем вашим чатам сразу |
| Отправить сообщение от вашего имени |
chat принимает имя пользователя (@name), числовой id, номер телефона, ссылку t.me или отображаемое имя чата.
Quickstart
1. Install
git clone https://github.com/<you>/telegram-mcp.git
cd telegram-mcp
python -m venv .venv
# Windows
.venv\Scripts\pip install -r requirements.txt
# macOS / Linux
.venv/bin/pip install -r requirements.txt2. Get API credentials
Перейдите на my.telegram.org → API development tools → создайте приложение → скопируйте api_id и api_hash.
3. Log in (one time)
# Windows
.venv\Scripts\python login.py
# macOS / Linux
.venv/bin/python login.pyВведите ваш api_id/api_hash, номер телефона (с кодом страны) и код входа, который Telegram отправит вам (плюс пароль 2FA, если он установлен). Это записывает переиспользуемую сессию в .env.
4. Register with your MCP client
Claude Code:
claude mcp add telegram --scope user -- "/abs/path/.venv/bin/python" "/abs/path/server.py"Claude Desktop; добавьте в claude_desktop_config.json:
{
"mcpServers": {
"telegram": {
"command": "/abs/path/.venv/bin/python",
"args": ["/abs/path/server.py"]
}
}
}Перезапустите клиент, и инструменты telegram станут доступны.
Example
Вы: Найдите во всех моих Telegram-чатах "invoice" и обобщите, что ещё не оплачено.
Агент вызывает search_all("invoice"), который возвращает:
[
{
"id": 84213,
"date": "2026-07-02T09:14:00+00:00",
"chat": "Acme Billing",
"from": "Acme Billing",
"text": "Invoice #204 is due on the 10th."
}
]…и агент обобщает на основе этого.
How it works
login.py аутентифицируется один раз через Telethon и сохраняет StringSession в .env. server.py создаёт FastMCP stdio-сервер, подключается лениво при первом вызове инструмента, проверяет, что сессия авторизована, и сопоставляет каждый инструмент с вызовом Telethon (iter_dialogs, iter_messages, SearchGlobalRequest, send_message). Результаты возвращаются в виде простых JSON-сериализуемых словарей.
Security
Храните
.envв тайне.SESSION_STRINGэквивалентен входу в систему от вашего имени. Он игнорируется git, никогда не коммитьте его.Всё работает локально; сервер общается только с серверами Telegram.
Автоматизация пользовательского аккаунта — серая зона в условиях использования Telegram. Чтение собственного аккаунта обычно допустимо; поддерживайте человеческий темп отправки и избегайте массовых/спам-действий, чтобы не превысить лимиты аккаунта.
Limitations
Пока нет автоматического набора тестов; проверено вручную на живом аккаунте.
search_messagesищет в одном чате; используйтеsearch_allдля глобального поиска.Разрешение отображаемого имени сводится к сканированию списка диалогов, поэтому точные имена пользователей/идентификаторы быстрее и надёжнее.
License
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
- FlicenseAqualityBmaintenanceEnables AI agents to interact with Telegram via MTProto, supporting high-performance communication and seamless integration.1
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to read, send, and organize Telegram messages and chats. Supports tools for listing chats, fetching messages, sending/reply, archiving, muting, and folder management.1MIT
- FlicenseNot gradedqualityCmaintenanceConnects AI agents to Telegram via the official TDLib library, enabling tools like getting user info, listing dialogs, and searching messages.
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to control a real Telegram user account via MTProto, allowing message sending, chat reading/searching, and message management through MCP tools.17
Related MCP Connectors
Multi-tenant Telegram gateway for AI agents — HTTP+stdio, 8 tools, MTProto User API
Telegram bridge for your MCP-compatible agent. Bidirectional, no LLM in our stack.
Telegram channel analytics and statistics for AI agents, pay-per-call in USDC via x402.
Appeared in Searches
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/Shaan-alpha/telegram-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server