Claudegram
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TG_2FA | No | Optional two-factor authentication password | |
| TG_PHONE | Yes | Your Telegram phone number (e.g., +1234567890) | |
| TG_API_ID | Yes | Your Telegram API ID from my.telegram.org | |
| TG_API_HASH | Yes | Your Telegram API hash from my.telegram.org |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"subscribe": false,
"listChanged": true
} |
| completions | {} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_meA | Информация о текущем авторизованном пользователе. |
| update_profileA | Изменить отображаемое имя/фамилию/био собственного профиля. None в поле = не менять. Пустая строка = очистить. |
| set_onlineA | Установить online/offline статус. Args: offline: True — пометить аккаунт как offline (не показывать "online" зелёный кружок). |
| update_usernameA | Сменить @username аккаунта (пустая строка — снять username). |
| get_full_userA | Расширенная инфа о пользователе (bio, общие чаты, premium, etc). Args: user: id/@username; None = я сам. |
| get_authorizationsA | Список активных сессий аккаунта (другие устройства/клиенты). Полезно для аудита: "кто сейчас залогинен в мой аккаунт". |
| terminate_authorizationA | Завершить чужую активную сессию по Свою (current=true) сессию через этот метод завершить нельзя. |
| get_privacyA | Получить текущие privacy-настройки для указанного ключа. Args:
key: один из |
| set_privacyA | Установить privacy для указанного ключа. Args: key: см. get_privacy. value: 'everyone', 'contacts', 'close_friends', 'nobody', 'nobody_contacts'. |
| get_password_infoA | Информация о настроенном 2FA-пароле (включён ли, hint, recovery email). НЕ возвращает сам пароль — только метаданные. |
| auth_request_codeA | Шаг 1: запросить SMS-код у Telegram. Очищает предыдущий auth-state. Возвращает: ok: True если код отправлен code_sent: True phone: куда отправлен (масковано последние 4 цифры) already_authorized: True если сессия уже валидна (код не нужен) |
| auth_submit_codeA | Шаг 2: отправить код (и опц. пароль 2FA). Args: code: 5-значный SMS-код из Telegram. password_2fa: пароль cloud-2FA если включён. Если опущен и 2FA требуется — вернётся ошибка с просьбой повторить. |
| auth_cancelA | Отменить незавершённый auth-flow (если запросил код, но не ввёл). |
| get_chat_infoA | Подробная инфа о любом entity: пользователе/чате/канале/боте. |
| resolve_usernameA | Найти entity по @username и вернуть инфу + id. |
| search_globalA | Глобальный поиск по юзерам/чатам/каналам по имени или @username. |
| get_top_peersB | Топ часто-используемых контактов в указанной категории. Args: category: 'correspondents' (личные чаты), 'bots_pm', 'bots_inline', 'phone_calls', 'forward_users', 'forward_chats', 'groups', 'channels', 'bots_app'. |
| get_input_peerA | Получить InputPeer для чата (нужен для raw API вызовов). Возвращает dict с _, который можно положить в kwargs_json для invoke_raw. |
| get_profile_photosA | Список фото профиля юзера/группы/канала (метаданные, без скачивания). Args: offset: пропустить N фото с начала. max_id: вернуть фото старше указанного id. |
| download_profile_photoA | Скачать аватарку юзера/чата на диск или inline (base64 в ответе). Args: download_big: True — большая (640x640); False — маленькая (160x160). inline: True — вернуть фото как ImageContent inline (≤ 1 MB), False — записать в файл и вернуть путь. |
| get_common_chatsC | Общие чаты с указанным юзером. |
| get_contactsA | Список всех контактов аккаунта. |
| add_contactB | Добавить пользователя в контакты. Args: user: id или @username существующего юзера. phone: опционально (можно пустое). add_phone_privacy_exception: разрешить юзеру видеть твой номер. |
| delete_contactC | Удалить пользователя из контактов. |
| import_contactsA | Массовый импорт контактов по номерам телефона (без знания Telegram-ID). Args:
contacts: список dict'ов с ключами |
| block_userA | Заблокировать пользователя — он не сможет писать. Args: my_stories_from: True — добавить только в story-blocklist. |
| unblock_userC | Разблокировать пользователя. |
| get_blockedA | Список заблокированных юзеров. Args: my_stories_from: True — story-blocklist; False — основной. |
| send_messageA | Отправить текстовое сообщение. Args: chat: id или @username получателя. text: текст сообщения. reply_to: id сообщения, на которое отвечаем. silent: без звука уведомления. parse_mode: 'markdown', 'html' или 'none' для plain-text. link_preview: показывать превью первой ссылки. schedule_unix: если задан — отправить отложенно на UNIX-таймстамп (UTC). comment_to: id поста в канале — отправить как комментарий (требует у канала включённой обсуждаемой группы). clear_draft: очистить draft чата после отправки. |
| edit_messageA | Отредактировать своё сообщение. |
| delete_messageA | Удалить сообщения. По умолчанию — только у себя. Args: revoke: True — у всех (необратимо). При revoke=True вызывает elicit для подтверждения и параллельно срабатывает PreToolUse hook. |
| forward_messageC | Переслать сообщения из одного чата в другой. |
| get_historyA | Сообщения чата (новые → старые по умолчанию). Args:
limit: 1-200.
offset_id: вернуть старше указанного id (пагинация).
min_id / max_id: границы id.
from_user: id/@username — фильтровать по отправителю.
reverse: True — от старых к новым.
ids: получить конкретные сообщения по id (без пагинации).
reply_to: показать сообщения треда/комментариев под этим id.
filter_type: media-фильтр: |
| get_history_with_linksA | Гибрид: компактные text-блоки + ResourceLink на каждое сообщение. Клиент видит дешёвый список и может догрузить полное сообщение
через |
| search_messagesA | Поиск сообщений по тексту глобально или в чате. |
| pin_messageA | Закрепить сообщение в чате. Args: notify: True — отправить уведомление участникам о новом pin. pm_oneside: только в PM — закрепить только у себя, не у собеседника. |
| unpin_messageA | Открепить одно сообщение или все pinned в чате. Args: message_id: если задан — открепить конкретное; None — открепить все. |
| react_messageA | Поставить реакцию-эмодзи на сообщение. Args: emoji: 1 эмодзи (👍, ❤️, 🔥). Пустая строка — снять все реакции. big: показать с анимацией "большой реакции". add_to_recent: добавить эмодзи в "недавно использованные". |
| save_draftA | Сохранить серверный draft в чате (синхронизируется на все устройства). Args: text: текст; пустая строка очищает draft. parse_mode: подсказка клиенту, как парсить при отправке (фактическое форматирование происходит в момент отправки сообщения). |
| clear_draftB | Очистить draft в чате (синхронизация на все устройства). |
| get_scheduled_messagesA | Список отложенных сообщений в чате (которые ещё не отправлены). |
| send_scheduled_nowC | Принудительно отправить отложенные сообщения сейчас. |
| delete_scheduledA | Удалить отложенные сообщения (до их отправки). |
| set_typingA | Послать сигнал активности в чат (печатает / записывает / отправляет). Args:
chat: id или @username чата.
action: тип активности — |
| list_chatsA | Список всех диалогов (юзеры/боты/группы/каналы — без фильтра). Args: compact: True — облегчённая форма (id/name/type/is_pinned/unread/...) ~85% меньше payload. Для типизированных списков см. |
| list_channelsA | Только broadcast-каналы (без supergroup'ов). Args: archived: 'main' — основной список, 'archive' — только архив, 'both' — всё. Default 'both' — включает архивные. limit: верхняя граница по сырому фетчу диалогов до фильтрации. only_unread: True — только с unread_count > 0. is_pinned: 'any' / 'pinned' / 'unpinned'. min_participants / max_participants: фильтр по подписчикам. compact: default True — payload в ~5x меньше. |
| list_groupsC | Группы и супергруппы. Args: include_supergroups: False — только old-style basic groups. is_pinned/min_participants/max_participants/compact — см. list_channels. |
| list_botsC | PM-боты в диалогах. |
| list_pm_usersB | Личные чаты с юзерами (без ботов). |
| dialog_statsA | Счётчики диалогов по типам — без payload, 1 запрос. Возвращает: total / pm_users / bots / channels / supergroups / basic_groups / archived / pinned / unread. |
| get_dialogs_by_idsA | Получить informация о N конкретных диалогах одним вызовом. Полезно для batch-проверки is_pinned/unread перед массовой операцией. |
| get_draftsA | Список несохранённых черновиков по всем чатам. |
| archive_dialogB | Переместить диалог в архив (folder=1). |
| unarchive_dialogA | Вернуть диалог из архива в основной список (folder=0). |
| pin_dialogB | Закрепить/открепить диалог в шапке списка. |
| get_dialog_filtersA | Список кастомных папок диалогов (Folders в UI Telegram). |
| create_dialog_filterA | Создать/обновить кастомную папку диалогов. Args: filter_id: уникальный id папки (2-255). 1 — резерв All. title: название (отображается в табе). emoticon: эмодзи иконки. included_chats: список id/@username включённых чатов. contacts/non_contacts/groups/broadcasts/bots: автоматически включать чаты этой категории. exclude_muted/read/archived: исключать соответствующие. |
| delete_dialog_filterB | Удалить кастомную папку диалогов. |
| mark_readA | Пометить сообщения чата прочитанными. Args: max_id: до какого id (0 — все). clear_mentions: ещё и сбросить @упоминания. |
| mute_dialogA | Замьютить уведомления чата. Args: mute_until_unix: до какого UNIX timestamp (UTC). None = навсегда (2^31). show_previews: показывать текст превью в notification. silent: без звука уведомлений. stories_muted: True — также замьютить stories этого источника. |
| unmute_dialogB | Снять mute с чата (вернуть дефолтные настройки). |
| delete_dialogA | Покинуть чат/канал или удалить личный диалог. Args: revoke: True — удалить переписку и у собеседника (только PM). |
| delete_dialogsA | Удалить N диалогов одним MCP-вызовом. Для supergroups = leave + delete dialog. Для PM = clear history (revoke=False) или revoke=True (PM only — у собеседника тоже). Args: chat_ids: список int/str id диалогов. revoke: только для PM — удалить и у собеседника. auto_floodwait_retry: при FloodWait sleep'ить и продолжать. max_total_wait_seconds: верхний предел total sleep. |
| leave_chatsB | Выйти из N каналов/супергрупп одним вызовом. |
| archive_dialogsC | Перенести N диалогов в архив. |
| create_groupC | Создать обычную группу с указанными участниками. |
| create_channelB | Создать канал (broadcast=True) или супергруппу (megagroup=True). Args: broadcast: True — broadcast-канал (только админы пишут). megagroup: True — супергруппа. |
| edit_chat_titleC | Переименовать чат/канал. |
| edit_chat_aboutB | Установить описание чата (about/bio). |
| edit_chat_photoC | Установить аватарку чата/канала из файла. |
| toggle_forum_modeA | Включить/выключить forum-режим (темы) в супергруппе. Требует ≥200 участников. После включения супергруппа становится "форумом". |
| get_participantsA | Список участников группы/канала. Args: limit: 1-200. filter_admin/kicked/banned/bots/recent: показать только эту категорию. aggressive: для каналов с >200 участников — итерировать через индексные search-страницы (медленнее, но даёт больше). |
| kick_participantA | Кикнуть участника из чата (он сможет вернуться). |
| ban_participantA | Забанить участника навсегда — он не сможет вернуться. |
| unban_participantC | Снять бан с участника. |
| restrict_participantA | Ограничить права участника супергруппы (read-only mute и т.п.). В ChatBannedRights каждый bool=True означает ЗАПРЕТ соответствующего действия. send_*=False → разрешено отправлять (стандартный участник). send_*=True → запрещено (mute). Args: until_unix: до какого UNIX timestamp; None = навсегда. |
| promote_adminB | Назначить участника администратором с заданными правами. |
| demote_adminA | Снять права админа (все флаги в False). |
| join_chatA | Войти в публичный канал/группу (по @username или ссылке-приглашению). |
| leave_chatC | Выйти из канала/супергруппы. |
| export_chat_inviteA | Создать invite-ссылку на чат/канал. Args: expire_unix: до когда действует. None = бессрочно. usage_limit: на сколько использований. request_needed: True — кандидаты ждут approval. title: метка ссылки (для аудита в админке). |
| get_admin_logC | Журнал действий админов в супергруппе/канале. |
| get_statsA | Статистика канала/супергруппы (только если ты админ). |
| send_fileA | Отправить файл. Telethon сам определит тип (фото/видео/документ). Args: file_path: путь к локальному файлу. caption: подпись (поддерживает форматирование, см. parse_mode). parse_mode: 'markdown', 'html' или 'none'. force_document: True — отправить как документ, не сжимать. voice_note: True — отправить голосовое (требует .ogg/.mp3). video_note: True — отправить video-кружок. ttl_seconds: self-destruct таймер (только для PM, 1-60 сек). clear_draft: очистить draft чата после отправки. supports_streaming: для видео — отметить как streamable. custom_filename: заменить имя файла при отправке. |
| send_albumA | Отправить альбом из 2-10 фото/видео одной группой. Caption ставится только на первое медиа альбома. |
| download_mediaA | Скачать медиа из сообщения. Args: download_dir: куда писать (если roots заявлены — путь валидируется). thumb_index: если задан — скачать только превью указанного индекса. inline: True — вернуть Image/Audio inline (≤1 MB) вместо файла. |
| get_media_infoB | Метаданные медиа в сообщении (тип, размер, mime, dimensions, duration). |
| send_locationB | Отправить геолокацию. Args: live_period: если задан (60-86400) — отправить как live-локацию. |
| send_contactC | Отправить визитку контакта. |
| send_diceA | Отправить интерактивный «кубик». Args: emoji: 🎲 (кубик), 🎯 (дартс), 🏀 (баскетбол), ⚽ (футбол), 🎰 (слот), 🎳 (боулинг). Telegram пришлёт случайный результат. |
| send_voiceA | Отправить голосовое сообщение (.ogg/.mp3 → opus voice note). |
| send_video_noteA | Отправить video-кружок (.mp4 → круглое видео ≤60s, диаметр 384px). |
| transcribe_audioA | Транскрибировать голосовое в текст (Telegram Premium фича). Возвращает текст или partial-транскрипцию + флаг pending. |
| get_installed_stickersA | Список установленных стикерсетов. |
| get_sticker_setA | Получить стикерсет по short_name (например 'AnimatedEmojies'). Возвращает метаданные сета + список первых 10 стикеров (id + emoji). |
| install_sticker_setB | Установить стикерсет аккаунту. Args: archived: True — добавить в архивированные (не показывать активно). |
| uninstall_sticker_setA | Удалить стикерсет из аккаунта. |
| search_sticker_setsB | Поиск стикерсетов по имени (Telegram-каталог). Args: exclude_featured: исключить из выдачи featured-наборы. |
| send_sticker_by_idB | Отправить стикер по document_id (получи через get_sticker_set). Args:
document_id: id стикер-документа.
access_hash: access_hash набора (поле |
| send_pollA | Создать и отправить опрос. Args: options: 2-10 вариантов ответа. anonymous: голоса без видимости кто как голосовал. multiple_choice: можно выбрать несколько вариантов. quiz: режим викторины (один правильный ответ + объяснение). correct_option_index: индекс правильного варианта (для quiz=True). explanation: пояснение, показываемое после голосования (quiz). close_period_seconds: автозакрытие через N секунд (5-600 на момент API layer 215). close_unix: автозакрытие на UNIX-таймстамп. revoting_disabled: True — нельзя сменить голос (для викторин). shuffle_answers: True — порядок вариантов рандомизируется на каждом устройстве. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| tg_digest | Сводка непрочитанных сообщений по всем чатам. |
| tg_search | Найти все упоминания темы во всех чатах или в одном. |
| tg_draft_reply | Составить ответ на конкретное сообщение, дождаться подтверждения. |
| tg_summarize_thread | Резюме треда сообщений в чате (опираясь на reply-цепочку). |
| tg_weekly_roundup | Сводка активности за последнюю неделю (по папке или всем диалогам). |
| tg_triage_inbox | Сортировка непрочитанных по срочности. |
| tg_moderate_chat | Аудит участников и активности группы (только для админов). |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| me_resource | Мой профиль (id, username, имя, premium-статус). |
| chats_resource | Топ 50 диалогов (без архива). |
| chats_archived_resource | Архивированные диалоги. |
| contacts_resource | Записная книжка контактов. |
| drafts_resource | Несохранённые черновики по всем чатам. |
| blocked_resource | Заблокированные юзеры (основной blocklist). |
| folders_resource | Кастомные папки диалогов (DialogFilters). |
| stories_feed_resource | Лента сторис от подписок. |
| recent_files_resource | Недавно отправленные/полученные файлы. |
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/sanjar-x/claudegram'
If you have feedback or need assistance with the MCP directory API, please join our Discord server