Telegram MCP Server & Channel Monitor
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SESSION_NAME | No | Name of the session file for Telethon login. | telegram_session |
| TELEGRAM_PHONE | No | Login phone number (e.g., +821012345678). Required for the channel monitor authentication. | |
| TELEGRAM_API_ID | No | Telegram User API App ID from my.telegram.org. Required for the channel monitor functionality. | |
| TELEGRAM_API_HASH | No | Telegram User API App Hash from my.telegram.org. Required for the channel monitor functionality. | |
| TELEGRAM_BOT_TOKEN | Yes | Telegram Bot API token issued by @BotFather. Required for the MCP server tools. |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| telegram_get_updatesA | 텔레그램 봇으로 수신된 새 메시지를 가져옵니다. 스케줄 태스크에서 주기적으로 호출하여 새 메시지를 확인합니다. offset을 사용하면 이미 처리한 메시지를 다시 가져오지 않습니다. Args: params (GetUpdatesInput): - offset (int): 마지막으로 처리한 update_id + 1 (선택사항) - limit (int): 가져올 메시지 수 (기본 20) Returns: str: 메시지 목록 JSON. 각 항목에 update_id, chat_id, sender, text 포함. 메시지 없으면 "새 메시지 없음" 반환. |
| telegram_send_messageB | 텔레그램 채팅에 메시지를 전송합니다. Args: params (SendMessageInput): - chat_id (int): 대상 채팅 ID - text (str): 전송할 메시지 (Markdown 지원) - parse_mode (str): 'Markdown' 또는 'HTML' (기본값: Markdown) Returns: str: 전송 성공 메시지 또는 에러 |
| telegram_edit_messageA | 이미 전송된 텔레그램 메시지의 내용을 수정합니다. Args: params (EditMessageInput): - chat_id (int): 채팅 ID - message_id (int): 수정할 메시지 ID - text (str): 새 메시지 내용 - parse_mode (str): 'Markdown' 또는 'HTML' (기본값: Markdown) Returns: str: 수정 성공 메시지 또는 에러 |
| telegram_delete_messageA | 텔레그램 채팅에서 특정 메시지를 삭제합니다. Args: params (DeleteMessageInput): - chat_id (int): 채팅 ID - message_id (int): 삭제할 메시지 ID Returns: str: 삭제 성공 메시지 또는 에러 |
| telegram_delete_messagesB | 텔레그램 채팅에서 여러 메시지를 한 번에 삭제합니다. |
| telegram_forward_messageB | 한 채팅에서 다른 채팅으로 메시지를 포워드(전달)합니다. 출처 표시 포함. Args: params (ForwardMessageInput): - from_chat_id (int): 원본 채팅 ID - to_chat_id (int): 전달 대상 채팅 ID - message_id (int): 전달할 메시지 ID Returns: str: 포워드 성공 메시지 또는 에러 |
| telegram_forward_messagesB | 한 채팅에서 다른 채팅으로 여러 메시지를 한 번에 포워드합니다. |
| telegram_copy_messageA | 메시지 내용을 포워드 마크 없이 복사하여 다른 채팅에 전송합니다. Args: params (CopyMessageInput): - from_chat_id (int): 원본 채팅 ID - to_chat_id (int): 복사 대상 채팅 ID - message_id (int): 복사할 메시지 ID - caption (str): 미디어 메시지에 추가할 캡션 (선택) Returns: str: 복사 성공 메시지 또는 에러 |
| telegram_copy_messagesB | 여러 메시지를 포워드 마크 없이 복사하여 다른 채팅에 전송합니다. |
| telegram_send_photoA | 텔레그램 채팅에 사진을 전송합니다. URL 또는 file_id 사용 가능. Args: params (SendPhotoInput): - chat_id (int): 채팅 ID - photo (str): 이미지 URL 또는 Telegram file_id - caption (str): 이미지 설명 (선택, 최대 1024자) - parse_mode (str): 'Markdown' 또는 'HTML' (기본값: Markdown) Returns: str: 전송 성공 메시지 또는 에러 |
| telegram_send_documentA | 텔레그램 채팅에 파일(문서)을 전송합니다. URL 또는 file_id 사용 가능. Args: params (SendDocumentInput): - chat_id (int): 채팅 ID - document (str): 파일 URL 또는 Telegram file_id - caption (str): 파일 설명 (선택, 최대 1024자) - parse_mode (str): 'Markdown' 또는 'HTML' (기본값: Markdown) Returns: str: 전송 성공 메시지 또는 에러 |
| telegram_send_videoC | 텔레그램 채팅에 동영상을 전송합니다. URL 또는 file_id 사용 가능. |
| telegram_send_audioB | 텔레그램 채팅에 오디오 파일을 전송합니다. URL 또는 file_id 사용 가능. |
| telegram_send_voiceB | 텔레그램 채팅에 음성 메시지를 전송합니다. .ogg OPUS 형식. |
| telegram_send_animationB | 텔레그램 채팅에 GIF 또는 무음 MP4 애니메이션을 전송합니다. |
| telegram_send_video_noteC | 텔레그램 채팅에 둥근 비디오 메시지를 전송합니다. |
| telegram_send_media_groupA | 텔레그램 채팅에 사진/동영상 앨범(미디어 그룹)을 전송합니다. 2~10개. |
| telegram_send_stickerB | 텔레그램 채팅에 스티커를 전송합니다. file_id 또는 URL 사용 가능. |
| telegram_get_chatA | 채팅 ID로 채팅/그룹/채널의 상세 정보를 조회합니다. Args: params (GetChatInput): - chat_id (int): 조회할 채팅 ID Returns: str: 채팅 이름, 타입, 멤버 수, 설명 등의 JSON 정보 |
| telegram_get_chat_members_countB | 채팅/그룹/채널의 총 멤버(구독자) 수를 조회합니다. Args: params (GetChatInput): - chat_id (int): 조회할 채팅 ID Returns: str: 멤버 수 또는 에러 |
| telegram_get_meA | 현재 봇의 기본 정보(이름, username, id 등)를 조회합니다. Returns: str: 봇 정보 JSON 또는 에러 |
| telegram_pin_messageA | 채팅에서 특정 메시지를 고정합니다. (봇이 관리자 권한 필요) Args: params (PinMessageInput): - chat_id (int): 채팅 ID - message_id (int): 고정할 메시지 ID - disable_notification (bool): 알림 없이 고정 여부 (기본 False) Returns: str: 고정 성공 메시지 또는 에러 |
| telegram_unpin_messageA | 채팅에서 고정된 메시지를 해제합니다. (봇이 관리자 권한 필요) Args: params (UnpinMessageInput): - chat_id (int): 채팅 ID - message_id (int): 고정 해제할 메시지 ID (None이면 가장 최근 고정 메시지) Returns: str: 고정 해제 성공 메시지 또는 에러 |
| telegram_ban_userA | 그룹/채널에서 특정 사용자를 차단합니다. (봇이 관리자 권한 필요) Args: params (BanUserInput): - chat_id (int): 그룹/채널 ID - user_id (int): 차단할 사용자 ID - until_date (int): 차단 해제 Unix 타임스탬프 (None=영구 차단) Returns: str: 차단 성공 메시지 또는 에러 |
| telegram_unban_userA | 그룹/채널에서 차단된 사용자를 해제합니다. (봇이 관리자 권한 필요) Args: params (UnbanUserInput): - chat_id (int): 그룹/채널 ID - user_id (int): 차단 해제할 사용자 ID - only_if_banned (bool): 차단된 경우에만 해제 (기본 True) Returns: str: 차단 해제 성공 메시지 또는 에러 |
| telegram_send_chat_actionB | 채팅에 '입력 중...', '파일 업로드 중...' 등 상태 표시를 전송합니다. |
| telegram_send_pollA | 텔레그램 채팅에 투표를 생성합니다. Args: params (SendPollInput): - chat_id (int): 채팅 ID - question (str): 투표 질문 (최대 300자) - options (list[str]): 선택지 목록 (2~10개) - is_anonymous (bool): 익명 투표 여부 (기본 True) - allows_multiple_answers (bool): 복수 선택 허용 (기본 False) Returns: str: 투표 생성 성공 메시지 또는 에러 |
| telegram_send_with_buttonsA | URL 링크 또는 콜백 버튼이 붙은 텔레그램 메시지를 전송합니다. 버튼 예시 (buttons 파라미터): [[{"text": "공식 사이트", "url": "https://example.com"}], [{"text": "확인", "callback_data": "ok"}, {"text": "취소", "callback_data": "cancel"}]] Args: params (SendInlineKeyboardInput): - chat_id (int): 채팅 ID - text (str): 메시지 내용 - buttons (list[list[dict]]): 버튼 2차원 배열 - parse_mode (str): 'Markdown' 또는 'HTML' (기본값: Markdown) Returns: str: 전송 성공 메시지 또는 에러 |
| telegram_answer_callback_queryB | 인라인 버튼 클릭(콜백 쿼리)에 대한 응답을 보냅니다. |
| telegram_send_locationB | 텔레그램 채팅에 지도 핀(위치 정보)을 전송합니다. Args: params (SendLocationInput): - chat_id (int): 채팅 ID - latitude (float): 위도 (예: 37.5665) - longitude (float): 경도 (예: 126.9780) Returns: str: 전송 성공 메시지 또는 에러 |
| telegram_send_venueB | 텔레그램 채팅에 장소(위치+이름+주소)를 전송합니다. |
| telegram_send_contactC | 텔레그램 채팅에 연락처(전화번호+이름)를 전송합니다. |
| telegram_send_diceB | 텔레그램 채팅에 주사위/슬롯 등 랜덤 애니메이션을 전송합니다. |
| telegram_set_message_reactionB | 메시지에 이모지 리액션을 설정하거나 제거합니다. |
| telegram_get_fileB | file_id로 파일 정보와 다운로드 URL을 조회합니다. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/ruchiayeon/telegram-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server