Skip to main content
Glama
pyro17ai
by pyro17ai

Telegram для ChatGPT

Личный Telegram как плагин ChatGPT. Модель читает навыки, пишет JavaScript/TypeScript и исполняет его через один MCP-инструмент с полным SDK mtcute. Можно читать папки и переписку, готовить черновики и выполнять порученные действия. Проект рассчитан на один Telegram-аккаунт и одного владельца на установку.

После развёртывания откройте страницу сервера, введите API ID/API Hash с my.telegram.org/apps, номер телефона и код Telegram. Если включена 2FA, форма попросит облачный пароль. Код и пароль не сохраняются. Сессия шифруется ключом вашей установки.

Быстрый запуск на сервере

Покупать домен и регистрировать аккаунт для адреса не нужно. Передайте агенту ссылку на этот репозиторий и SSH-доступ к серверу:

Разверни https://github.com/pyro17ai/telegram-sdk-plugin на моём сервере. Выполни AGENTS.md и docs/deploy-server.md: установи зависимости, получи бесплатный постоянный адрес и проверь HTTPS с OAuth. Верни персональную ссылку для входа и инструкцию добавления плагина в веб-версию ChatGPT. Telegram-реквизиты я введу сам на странице.

Агент выполнит настройку. Вам останется открыть персональную ссылку, войти в Telegram и добавить плагин в ChatGPT.

Для самостоятельного запуска нужны Git и Docker с Compose на сервере с публичным IPv4. Node.js на сервер устанавливать не нужно. Входящие TCP-порты 80 и 443 должны быть доступны:

git clone https://github.com/pyro17ai/telegram-sdk-plugin.git && cd telegram-sdk-plugin
bash scripts/deploy.sh

Установщик определит публичный IP и создаст адрес вида https://telegram.<IP-через-дефисы>.sslip.io. Бесплатный DNS уже направляет его на сервер; Caddy получает и продлевает HTTPS-сертификат. Адрес сохраняется после перезапуска, пока не меняется IP сервера. Аккаунты в Cloudflare или сервисе туннелей не нужны.

После проверки HTTPS установщик напечатает персональную ссылку владельца. Она сразу открывает форму Telegram. Сохраните её в менеджере паролей и не публикуйте: ссылка содержит ключ доступа. Браузер убирает ключ из адресной строки при входе. Файл .env создаётся с правами 600 и исключён из Git. Повторный bash scripts/deploy.sh сохраняет адрес и ключи.

Откройте персональную ссылку и пройдите вход в Telegram. На готовой странице нажмите Скачать плагин. Прикрепите Telegram.zip в ChatGPT с установленным Plugin Creator и отправьте:

@Plugin Creator создай и установи мне приватный плагин Telegram из этого ZIP. Сохрани оба навыка и подключение MCP. Пройди OAuth-подключение.

Во время OAuth откроется ваша панель: в том же браузере вход владельца уже сохранён, остаётся нажать Подключить. Client ID и Client Secret вручную создавать не требуется. Затем проверьте: @Telegram покажи мои папки. Подробности подключения и ограничения аккаунтов.

Если IP не определился автоматически, агент укажет его через bash scripts/deploy.sh --ip ПУБЛИЧНЫЙ_IP. Собственный домен остаётся необязательным вариантом: bash scripts/deploy.sh --domain telegram.example.com. Эти параметры нужны только для первой установки. Проверка сети и восстановление установки.

Related MCP server: LocalPilot

ChatGPT Sites

Установите Sites и Plugin Creator, затем дайте агенту эту инструкцию:

Разверни для меня https://github.com/pyro17ai/telegram-sdk-plugin как новый приватный ChatGPT Site. Выполни docs/deploy-sites.md. Создай новую установку с собственным ключом шифрования и привяжи оба навыка к каноническому плагину Sites. Telegram-реквизиты я введу сам через страницу после публикации. Существующие сайты не изменяй.

Агент создаст личный Site и плагин. После публикации откройте страницу, войдите в Telegram и установите плагин из Plugins → Personal → Created by you. Полная инструкция для агента. Публичного терминального CLI Sites этот проект не предполагает.

Устройство и границы

Один код работает в Node.js и Cloudflare Workers на Sites. Произвольный JavaScript/TypeScript исполняется в QuickJS WASM. withTelegram предоставляет SDK; tg.call даёт доступ к низкоуровневому MTProto. Оболочка ОС и установка произвольных npm-пакетов в исполняемом коде не поддерживаются. Обычный запуск ограничен 45 секундами, вывод ограничен 240 КБ, файл через files.write ограничен 1 000 000 символов. Большие выборки разбивайте на несколько запусков.

Объёмные зашифрованные данные хранятся в R2 на Sites или в каталоге данных на сервере. D1/SQLite хранит указатели и атомарные блокировки. Кеш SDK не упирается в предел строки D1. request_id предотвращает повторное выполнение одного запроса; при неопределённом результате используйте тот же ID.

Серверный MCP использует OAuth с PKCE и одноразовыми кодами. На Sites доступ проверяет платформа и серверное ограничение по владельцу. Доступ ChatGPT к вашему плагину даёт возможность действовать от вашего имени в Telegram: разрешайте его только своему аккаунту. Автоматизации и расписания задавайте в ChatGPT отдельно; этот проект не добавляет собственный планировщик.

Разработка и проверка

npm ci
npm run build:server
npm test
npm run scan

Для разработки нужен Node.js 24. Для локальной проверки: node scripts/configure.mjs --domain http://localhost:3000, затем npm start. Внешний ChatGPT не подключится к localhost: ему нужен публичный HTTPS-адрес, который серверный установщик создаёт без покупки домена.

Работающий локальный сервер проверяется командой node --env-file=.env scripts/smoke-server.mjs http://localhost:3000. Она проходит вход владельца и OAuth, затем исполняет TypeScript через MCP без обращения к Telegram. GitHub Actions повторяет эту проверку внутри собранного Docker-контейнера.

Тесты проверяют OAuth целиком, запрет поддельной личности, CSRF, идемпотентность и сохранение больших данных. Вход Telegram с кодом и 2FA проверяется с подменой ответа SDK; автоматические тесты не отправляют реальные коды и не подключают чужие аккаунты. Последняя проверка не заменяет вход владельца после развёртывания.

Обновление и резервное копирование · Безопасность и проверка секретов · Лицензия MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Turns ChatGPT web into a local coding agent, enabling file edits, shell commands, Git operations, patches, and process management through 40+ MCP tools.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables ordinary ChatGPT web Chat to work directly on a local machine over a private MCP tunnel — reading and editing project files, running shell commands and tests, loading local skills, manipulating images, and driving Chrome — without spinning up a separate coding agent or additional model-generation API calls. It also supports multi-step task plans with persisted execution receipts and acceptance checks so results from real runs are returned to the conversation.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables ChatGPT and other MCP clients to browse, search, edit and upload files, run commands and interactive terminals, inspect Git history and worktrees, dispatch coding agents, and install composable plugins within locally registered workspaces. Requests execute under the user's own machine with per-request approval or auto-approval, keeping files, tasks and results local unless explicitly returned.
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables ChatGPT to inspect and manage approved local project folders, read files, propose edits, patches, and deletions, run shell commands subject to approval, and track jobs and tasks through MCP. It provides controlled access to local project files and execution results on macOS.
    MIT