Skip to main content
Glama
Telegram MCP Server

Telegram MCP Server

by kamalbuilds

Telegram MCP Server for Claude Code

Read and search Telegram channel/group/DM messages directly from Claude Code.

Uses MTProto (user account API) via GramJS, so it can read full message history, not just new messages like Bot API.

Setup

1. Get Telegram API credentials

  1. Go to https://my.telegram.org/apps

  2. Log in with your phone number

  3. Create an application

  4. Note down your API ID and API Hash

2. Install and authenticate

cd telegram-mcp-server
npm install
npm run build

# Generate session (interactive, one-time)
TELEGRAM_API_ID=12345 TELEGRAM_API_HASH=abc123def456 npm run auth

This will ask for your phone number, send you a code on Telegram, and output a session string. Save it.

3. Add to Claude Code

claude mcp add telegram-mcp \
  -e TELEGRAM_API_ID=12345 \
  -e TELEGRAM_API_HASH=abc123def456 \
  -e TELEGRAM_SESSION=your_session_string_here \
  -- node /Users/kamal/Desktop/telegram-mcp-server/build/index.js

Or add manually to ~/.claude.json:

{
  "mcpServers": {
    "telegram-mcp": {
      "type": "stdio",
      "command": "node",
      "args": ["/Users/kamal/Desktop/telegram-mcp-server/build/index.js"],
      "env": {
        "TELEGRAM_API_ID": "12345",
        "TELEGRAM_API_HASH": "abc123def456",
        "TELEGRAM_SESSION": "your_session_string_here"
      }
    }
  }
}

Related MCP server: Telegram MCP Server

Tools

Tool

Description

list_chats

List your chats, channels, groups with IDs and unread counts

read_messages

Read messages from a specific chat/channel/group

search_messages

Search messages globally or within a specific chat

get_chat_info

Get detailed info about a chat/channel/group

send_message

Send a message to any chat

Usage in Claude Code

Once configured, just ask Claude:

  • "List my Telegram channels"

  • "Read the last 50 messages from @channelname"

  • "Search for 'meeting notes' across all my Telegram chats"

  • "What are the recent messages in the dev group?"

Environment Variables

Variable

Required

Description

TELEGRAM_API_ID

Yes

From my.telegram.org

TELEGRAM_API_HASH

Yes

From my.telegram.org

TELEGRAM_SESSION

Yes

Generated via npm run auth

Available Tools

5 tools
get_chat_infoC

Get detailed information about a Telegram chat, channel, or group.

Inputs: chat (required).

list_chatsA

List your Telegram chats, channels, and groups. Returns chat name, ID, type, and unread count.

Inputs: limit, filter.

read_messagesB

Read messages from a Telegram chat, channel, or group. Use a chat ID (from list_chats) or @username.

Inputs: chat (required), limit, search, offset_id.

search_messagesB

Search for messages across all Telegram chats or within a specific chat.

Inputs: query (required), chat, limit.

send_messageB

Send a message to a Telegram chat, channel, or group.

Inputs: chat (required), text (required), reply_to.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool has a clear, non-overlapping purpose: listing chats, reading messages, searching, getting chat info, and sending messages. No ambiguity in tool selection.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern (e.g., list_chats, read_messages, send_message), making them predictable and easy to understand.

    Tool Count5/5

    With five tools, the server covers the core messaging actions without being too sparse or too heavy. Each tool serves a distinct and necessary function.

    Completeness3/5

    The tool set supports basic reading, searching, and sending text messages, but lacks critical operations like sending media, editing or deleting messages, and managing chats. This is a notable gap for a full-featured messaging server.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      Enables Claude to interact with Telegram channels and groups through API or web scraping for reading posts and searching.
      15
      38 npm
      MIT
    • F
      license
      Not graded
      quality
      F
      maintenance
      Enables Claude to interact with your Telegram account, including reading messages, searching conversations, and sending messages.
      -
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables Claude to interact with Telegram, including listing chats, reading messages, sending messages, searching, and managing contacts.
      1
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      Connect Claude to your personal Telegram account via MTProto to read messages, search chats, send replies, forward files, and more using your real account.
      6 npm
      3
      MIT