local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Handles configuration management through environment variables, specifically for storing Telegram API credentials including API ID, API hash, and phone number.
Enables interaction with Telegram messaging platform, providing tools to search channels by keywords, list available channels, retrieve messages from channels, and filter messages by regex patterns.
Telegram クライアントライブラリと MCP サーバー
このプロジェクトは、AI アシスタントが Telegram と対話するための Telegram クライアント ライブラリと MCP (Model Context Protocol) サーバーの両方を提供します。
特徴
Telegram クライアントライブラリ
- Telegramによる認証(2FAサポートを含む)
- セッション管理(既存セッションの自動再利用)
- チャット/ダイアログの取得
- 特定のチャットからメッセージを取得する
- パターン(例:正規表現)によるメッセージのフィルタリング
MCPサーバー
- キーワードでチャンネルを検索- 名前にキーワードを入力してTelegramチャンネルを検索
- 利用可能なチャンネルの一覧- アクセス可能なすべてのチャンネルを表示
- チャネルからメッセージを取得する- アクセス可能な任意のチャネルからメッセージを取得します
- パターンでメッセージをフィルタリング- 正規表現パターンを適用してメッセージをフィルタリングします
設定
- Telegram API 資格情報を使用して
.env
ファイルを作成します。
- 依存関係をインストールします:
使用法
Telegramクライアントライブラリの使用
サンプルクライアントを実行します。
MCPサーバーの使用
- MCP サーバーを起動します。
- MCP サーバーは次の場所で利用できます:
- 付属のクライアントを使用して MCP サーバーをテストできます。
MCP サーバーの詳細については、 MCP-README.md を参照してください。
コード アーキテクチャの詳細については、 CODE_STRUCTURE.md を参照してください。
APIリファレンス
Telegramクライアント
コンストラクタ
apiId
: Telegram API IDapiHash
: Telegram APIハッシュphoneNumber
: 国際電話番号sessionPath
: (オプション) セッションファイルを保存するパス (デフォルト: './data/session.json')
方法
login()
: Telegram で認証します (新しいログインとセッションの再利用の両方を処理します)getDialogs(limit, offset)
: ダイアログ(チャット)のリストを取得します。getChatMessages(chat, limit)
: 特定のチャットからメッセージを取得しますfilterMessagesByPattern(messages, pattern)
: メッセージの配列を正規表現パターンでフィルタリングします。hasSession()
: 有効なセッションが存在するかどうかを確認します
このリポジトリ内のファイル
telegram-client.js
: メインクライアントライブラリclient.js
: 追加のヘルパー関数を備えたサンプルクライアントindex.js
: クライアントライブラリを使用したオリジナルの例mcp-server.js
: MCP サーバーのメインエントリポイントtelegram-mcp.js
: Telegramツールを使用したMCPサーバーの実装http-server.js
: HTTP/SSE サーバートランスポート層mcp-client-example.js
: MCPサーバーをテストするためのシンプルなクライアント
Claude や他の MCP 互換アシスタントと併用する
MCPサーバーは、Claudeやその他のMCP対応アシスタントと連携して使用できます。接続すると、アシスタントはサーバーが提供するツールを通じてTelegramのチャンネルやメッセージにアクセスできるようになります。
ワークフローの例:
- MCPサーバーを起動する
- MCP URLを使用してClaudeをMCPサーバーに接続します
- クロードにチャンネルの検索、メッセージの取得、パターンによるメッセージのフィルタリングを依頼する
ライセンス
マサチューセッツ工科大学
This server cannot be installed
AI アシスタントが Telegram と対話して、チャンネルの検索、利用可能なチャンネルの一覧表示、メッセージの取得、正規表現パターンによるメッセージのフィルタリングを行えるようにするモデル コンテキスト プロトコル サーバー。
- Features
- Setup
- Usage
- API Reference
- Files in this Repository
- Using with Claude or other MCP-compatible Assistants
- License