Skip to main content
Glama

Telegram MCP サーバー

これは、Claude が Telegram アカウントにアクセスしてメッセージを読んだり送信したりできるようにするシンプルな MCP サーバーです。

機能

  1. get_chats : Telegramチャットのリストを取得する

  2. send_message : チャットにメッセージを送信する

  3. get_message : チャットからメッセージを取得し、未読メッセージを出力します。

  4. mark_messages_read : メッセージを既読にする

  5. get_conversation_context : 20件を超えるメッセージを取得し、 convostyle.txtを読み取って適切な返信を決定します。

Related MCP server: Twitter MCP Server

設定

推奨セットアップ

ステップ1:Telegram API認証情報を取得する

  1. https://my.telegram.org/appsにアクセスしてください。

  2. ログインしてアプリケーションを作成します (または既存のアプリケーションを使用します) 注: アプリケーションの種類は問いません。何でも作成してください。タイプでは必ず「Web」を選択してください。

  3. API IDAPIハッシュを書き留めてください

ステップ2: Python環境の設定

必要なパッケージをインストールします(ターミナルを開いてください。Macの場合はコマンド+スペースキーを押して「ターミナル」と入力し、Windowsの場合はWindowsキーを押して「ターミナル」と入力します。コードを1行ずつコピーしてターミナルに貼り付けます)。事前にGitがインストールされていることを確認してください。

# Clone the repository within your desired directory (if you haven't already) git clone https://github.com/alexandertsai/mcp-telegram cd mcp-telegram

仮想環境を設定します。該当する場合は、代わりにpip3を使用してください。

# Set up virtual environment pip install uv uv venv source .venv/bin/activate # .venv\Scripts\activate for windows uv add mcp-sdk telethon python-dotenv nest_asyncio

ステップ3: IDを追加する

Macの場合(bash):

仮想環境で、以下を実行します。

export TELEGRAM_PHONE=phone number with country code and no spaces export TELEGRAM_API_ID=api_id export TELEGRAM_API_HASH=api_hash

ターミナルでprintenvを使用してエクスポートされているかどうかを確認します。

Windows (Powershell) の場合:

仮想環境で以下を実行します。引用符を含めてください。引用符がないとPowerShellがうまく動作しない可能性があります。

$env:TELEGRAM_PHONE="phone number with country code and no spaces" $env:TELEGRAM_API_ID="api_id" $env:TELEGRAM_API_HASH="api_hash"

PowerShell でgci env:を使用してエクスポートされているかどうかを確認します。

ステップ4: 認証を実行する

認証するには、これを実行します。2FAを設定している場合、パスワードを入力してもターミナルにテキストは表示されません。これは正常な動作です。2FA中に入力ミスをしないようにしてください。入力ミスをすると、プロセス全体が最初からやり直しになります。インストールされているpythonまたはpython3を使用してください。

cd src/mcp_telegram python3 telethon_auth.py

以下のことが求められます:

  • 電話番号(+付きの国際電話番号)(スペースを入れないでください)

  • Telegramがあなたのアカウントに送信するコード

  • 2FAパスワード(有効な場合)

これにより、ホームディレクトリにセッション ファイルが作成され、再度認証する必要がなくなります。

ステップ5:Claudeデスクトップに追加

Claude Desktop の設定を編集します。

Claudeデスクトップを開き、設定(cmd+,)に移動し、「開発」をクリックして「設定を編集」をクリックします。claude)desktop_config.jsonファイルを編集します。開発者モードが有効になっていることを確認してください。

macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
Windows : %APPDATA%\Claude\claude_desktop_config.json

これを設定に追加してください(実際の認証情報に置き換えてください)。保存するには、command+s を押してください。

"mcpServers": { "telegram": { "command": "/your/path/to/python3", "args": ["/full/path/to/mcp-telegram/main.py"], "env": { "TELEGRAM_API_ID": "your_api_id_here", "TELEGRAM_API_HASH": "your_api_hash_here", "TELEGRAM_PHONE": "+65945678900" } } }

**main.py:**完全なパスを取得するには、IDE またはデスクトップに移動し、ファイルを見つけて右クリックし、「COPY PATH」をクリックします。

**python:**ターミナルでwhere.exe python (Windows) またはwhere python (Mac) を実行すると、フルパスが表示されます(必要に応じてpython3に置き換えてください)。Windows の場合、JSON フォーマットのため、パス内のバックスラッシュをスラッシュに置き換える必要がある場合があります(Ctrl + F で "\"、Ctrl + H ですべて "/" に置き換えてください)。

非常に重要:

  1. Pythonとmain.pyスクリプトの両方への完全な絶対パスを使用します

  2. API認証情報をステップ1の実際の値に置き換えます

  3. 電話番号を国際形式で設定する

ステップ6(オプション):

チャットボットがあなたのように応答し、あなたのように聞こえるようにしたい場合は、 src/mcp_telegramconvostyle.txt自由に設定してください。

それでおしまい!

Claude Desktop を再起動 (終了して再度開く) すると、Claude に次の操作を依頼できるようになります。

  • 最近のTelegramチャットを表示する

  • 特定のチャットからのメッセージを読む

  • 特定のメッセージを「既読」としてマークする

  • 自然な音声で連絡先やグループにメッセージを送信できます

クロードにプロンプトを尋ねる際は、必ず「Telegram」という言葉を含めてください。そうしないと、クロードは理解しない可能性があります。例えば、「クロード、未読のTelegramメッセージはありますか?」のように尋ねます。

カスタマイズ

Claude Desktop にアクセスし、ユーザーをクリックして左下の設定を開き、個人設定を調整することで、よりカスタマイズされた応答を得ることができます。例えば、「MCP を使用して Telegram をチェックする際は、チャンネルを無視する」などです。

厄介なトラブルシューティング

仮想環境内で、次のコマンドを実行してみてください。

ls -la ~/.mcp_telegram_*

次に、セッションファイルを終了します(ファイルのパスをコピーして、先頭にrmを付けて貼り付けるだけです)。

rm /Users/username/.mcp_telegram_numberininternationalformat*

手順 3 をもう一度試してください。

-
security - not tested
A
license - permissive license
-
quality - not tested

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/alexandertsai/mcp-telegram'

If you have feedback or need assistance with the MCP directory API, please join our Discord server