MCP Telegram
mcp-telegram
Telegram用MCPサーバー — AIアシスタントがあなたのTelegramアカウントと連携できるようにします
機能
チャット管理: チャットの一覧表示、検索、ミュート/ミュート解除
メッセージ: メッセージの読み取り、検索、コンテキストの確認、送信、下書き、予約送信、リンク解決、バックアップ
AI要約: 複数のLLMプロバイダーを使用してチャットの会話を要約
セキュリティ: セッションはmacOSキーチェーンに保存(Linux/Windowsではファイルベースのストレージ)
インストール
go install github.com/tolmachov/mcp-telegram@latestまたはソースからビルドする場合:
git clone https://github.com/tolmachov/mcp-telegram.git
cd mcp-telegram
makeセットアップ
1. Telegram API認証情報を取得する
my.telegram.org/apps にアクセスします
アプリケーションを作成します
api_idとapi_hashをコピーします
2. 環境設定
認証情報を保存します(macOSキーチェーン、Linux/Windowsでは ~/.local/state/mcp-telegram/config.json に 0600 パーミッションでプレーンテキストJSONとして保存):
mcp-telegram config set TELEGRAM_API_ID 123456789
mcp-telegram config set TELEGRAM_API_HASH abcd1234efgh5678または .env ファイルを使用します:
cp .env.example .env
# Edit .env with your credentials3. Telegramにログイン
mcp-telegram login --phone +1234567890Telegramに送信された確認コードの入力を求められます。
4. MCPクライアントの設定
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) または %APPDATA%\Claude\claude_desktop_config.json (Windows) に追加します:
{
"mcpServers": {
"telegram": {
"command": "mcp-telegram",
"args": ["run"],
"env": {
"TELEGRAM_API_ID": "your_api_id",
"TELEGRAM_API_HASH": "your_api_hash"
}
}
}
}Claude Code
claude mcp add telegram -- /path/to/mcp-telegram run.env ファイルに環境変数を設定するか、--env を介して渡します。
利用可能なツール
MCPクライアントに19個のツールが公開されています。メッセージは不透明な文字列ハンドル(通常は "42"、予約済みは "s:42")で識別されます。ツール出力からそのままコピーして後続の呼び出しに使用してください。手動で解析や構築はしないでください。
ツール | 説明 |
| 現在のユーザー情報を取得 |
| すべてのチャット、グループ、チャンネルを一覧表示 |
| 名前でチャットをあいまい検索 |
| チャットの詳細情報を取得 |
| チャットからメッセージを取得( |
| チャット内で部分一致検索(日付/送信者/メディア/スレッドのフィルタリングオプションあり) |
| 不透明なカーソルベースのページネーションを使用して、すべてのチャットを横断して部分一致検索 |
| 特定のアンカーメッセージ周辺のメッセージを時系列順に取得 |
| メッセージの送信、返信、予約、下書き。 |
| メッセージの編集。予約済みハンドルの場合、 |
| メッセージの削除。 |
| 送信済みメッセージの転送(予約済みハンドルは拒否されます) |
|
|
| 1つ以上のチャットを既読にする |
| メッセージをテキストファイルにエクスポート(べき等、ターゲットを上書き) |
| @username をユーザー/チャット情報に解決 |
| チャット通知のミュート/ミュート解除( |
| サンプリング / Gemini / Ollama / Anthropic を介したAIチャット要約 |
| メッセージリソースURIから写真メディアをダウンロード。MCP画像コンテンツを返します |
利用可能なリソース
URI | 説明 |
| 現在のユーザー情報 |
| すべてのチャットリスト |
| リソーステンプレートを介した任意のチャットIDの詳細情報 |
| ピン留めされたチャットの最新100件のメッセージ(動的リソース、現在ピン留めされているチャットのみ) |
ピン留めされたチャットリソースは、ピン留めされるたびに動的に作成され、バックグラウンドで更新されます。セットが変更されると、クライアントは resources/list_changed を受け取ります。
利用可能なプロンプト
MCPクライアントがスラッシュコマンドやクイックアクションとして公開する3つのパラメータ化されたプロンプト。
プロンプト | 引数 | 説明 |
|
| アクティブなチャットを巡回し、チャットごとの主要な更新とアクションアイテムのダイジェストを作成します。読み取り専用。 |
|
| 特定のチャットを要約し、返信が必要と思われるメッセージを一覧表示します。読み取り専用。 |
|
| メッセージを検索し、返信の下書きを表示します。ユーザーの明示的な確認後にのみ送信されます。 |
プロンプトの例
AIアシスタントで使用できるプロンプトの例をいくつか紹介します。
メッセージ管理
"Telegramの未読の重要メッセージを確認して"
"Telegramの未読メッセージをすべて要約して"
"未読メッセージを読み取って分析し、必要に応じて返信の下書きを作成して"
"重要ではない未読メッセージを確認して、概要を教えて"
"先週の仕事用チャットで 'invoice' に言及しているメッセージを探して"
"このTelegramリンクのコンテキストを開いて: https://t.me/example/123"
整理
"Telegramの対話を分析して、フォルダ構造を提案して"
"Telegramのチャットを重要度別に分類するのを手伝って"
"仕事関連の会話をすべて見つけて、整理方法を提案して"
コミュニケーション
"特定のチャットで [topic] に関する更新を監視して"
"[chat] の最後のメッセージに対する丁寧な返信を下書きして"
"チャットに未回答の質問がないか確認して"
"このTelegramメッセージリンクを解決して、スレッドのコンテキストを見せて"
バックアップとエクスポート
"[contact] との会話をファイルにバックアップして"
"[group] の先週のメッセージをエクスポートして"
"メディアのみの更新もバックアップして、何も見落とさないようにして"
チャット要約
SummarizeChat ツールは複数のLLMプロバイダーをサポートしています:
sampling (実験的): MCP Sampling を介してMCPクライアントのLLMを使用します。サンプリングをサポートするクライアント(VS Code, fast-agent, Continue)でのみ動作します。Claude DesktopやClaude Codeでは動作しません。
ollama: Ollama を介したローカルLLM - APIキー不要
gemini: Google Gemini API
anthropic: Anthropic Claude API
環境変数を介して設定します:
SUMMARIZE_PROVIDER=ollama # or: sampling, gemini, anthropic
SUMMARIZE_MODEL= # provider-specific model nameコマンド
# Run MCP server (used by MCP clients)
mcp-telegram run
# Login to Telegram
mcp-telegram login --phone +1234567890
# Logout and delete session
mcp-telegram logout
# Securely store config values (macOS Keychain / file on Linux)
mcp-telegram config set TELEGRAM_API_ID 123456789
mcp-telegram config set TELEGRAM_API_HASH abcd1234
# List stored keys
mcp-telegram config list
# Delete a stored value
mcp-telegram config delete TELEGRAM_API_ID許可されるキー: TELEGRAM_API_ID, TELEGRAM_API_HASH, ANTHROPIC_API_KEY, GEMINI_API_KEY。
設定オプション
環境変数 | 説明 | デフォルト |
| Telegram API ID | 必須 |
| Telegram API Hash | 必須 |
| バックアップ用の許可ディレクトリ | OSアプリデータディレクトリ |
| 要約用LLMプロバイダー |
|
| モデル名 | プロバイダーのデフォルト |
| 要約バッチごとのトークン数 |
|
| Ollama API URL |
|
| Google Gemini APIキー | - |
| Anthropic APIキー | - |
|
|
|
| Telegramへの履歴取得呼び出しのRPS上限。Telegramの FLOOD_WAIT しきい値を超えると、すべてのツールが一時停止されます。 |
|
| ピン留めチャットリソース監視のポーリング間隔(秒)。 |
|
破壊的アクション
DeleteMessage のようなツールは、実行前に MCP elicitation を介してユーザーの確認を求めます。MCPクライアントがelicitationをサポートしていない場合、サーバーは破壊的操作を実行する前に、LLMの指示に従って口頭で確認を求めます。
セッションストレージ
macOS: キーチェーンに安全に保存されます。
Linux/Windows:
~/.local/state/mcp-telegram/session.jsonに0600ファイルパーミッションで保存されます。ファイルは プレーンテキスト です。含まれるユーザーアカウントを信頼し、機密性の高いアカウントを扱う場合はmacOSでの実行を推奨します。
mcp-telegram config set を介して設定された設定値(APIキー、Telegram認証情報)は、同じバックエンド(macOSではキーチェーン、Linux/WindowsではプレーンテキストJSON)に従います。
ライセンス
Latest Blog Posts
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/tolmachov/mcp-telegram'
If you have feedback or need assistance with the MCP directory API, please join our Discord server