Skip to main content
Glama
NobufumiMurata

Telegram Notify MCP Server

telegram-copilot-bridge

GitHub Copilot CLI を Telegram からリモートで制御します。プロンプトの送信、セッションの管理、ツール呼び出しの承認をすべてスマートフォンから行えます。

アーキテクチャ

📱 Telegram
    ↕ (Bot API long-polling)
🐍 telegram-copilot-bridge
    ↕ (stdin/stdout NDJSON — ACP)
🤖 copilot --acp --stdio

Related MCP server: tsgram-mcp

機能

  • リモートプロンプト — Telegram から Copilot にプロンプトを送信し、結果をスマートフォンで受け取ります

  • マルチセッション — 複数の Copilot セッションを並行して実行し、切り替えることができます

  • ツール承認 — インラインボタンを使用して Copilot のツール呼び出しを承認または拒否します

  • オートパイロットモード — すべてのツール呼び出しを自動承認し、ハンズフリーで操作します

  • セッション履歴 — ワンタップで過去の Copilot セッションを再開します

  • フォルダピッカー/new でプロジェクトディレクトリのインラインボタンを表示します

インストール

git clone https://github.com/NobufumiMurata/telegram-copilot-bridge.git
cd telegram-copilot-bridge
pip install -e .

前提条件: Copilot CLI をインストールし、認証を行ってください:

winget install GitHub.Copilot   # or: npm install -g @github/copilot
copilot                         # then /login to authenticate

セットアップ

1. Telegram ボットの作成

  1. Telegram を開き、@BotFather にメッセージを送ります

  2. /newbot を送信し、指示に従います

  3. ボットトークンをコピーします

2. チャット ID とユーザー ID の取得

ボットに任意のメッセージを送信した後、以下を実行します:

curl "https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates"

レスポンスから以下を確認します:

  • "chat": {"id": ...}チャット ID

  • "from": {"id": ...}ユーザー ID (許可リスト用)

3. 設定

サンプルファイルをコピーし、値を入力します:

cp .env.example .env
# .env
TELEGRAM_BOT_TOKEN=1234567890:AAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
TELEGRAM_CHAT_ID=-100000000000
TELEGRAM_ALLOWED_USERS=123456789

# Default AI model
COPILOT_MODEL=claude-opus-4.6

# Root folder for /dirs and /new folder picker
COPILOT_DIRS_ROOT=/home/user/projects

.env ファイルは起動時に(現在のディレクトリから)自動的に読み込まれます。 別の場所を指定するには TELEGRAM_ENV_FILE=/path/to/.env を使用してください。 シェルで設定された環境変数は、常に .env よりも優先されます。

使用方法

# Start (reads .env automatically)
python -m telegram_copilot_bridge

# With options
python -m telegram_copilot_bridge \
  --cwd /path/to/project \
  --model claude-opus-4.6 \
  --timeout 120 \
  -v

CLI オプション:

フラグ

説明

デフォルト

--cwd <dir>

セッションのデフォルト作業ディレクトリ

現在のディレクトリ

--model <name>

AI モデル (例: claude-opus-4.6)

claude-opus-4.6

--timeout <min>

自動シャットダウンまでの時間(分、0は無効)

0

--autopilot

すべてのツール呼び出しを自動承認

オフ (Telegram 経由で手動承認)

-v, --verbose

デバッグログを有効にする

オフ

Telegram コマンド

コマンド

アクション

/new [dir]

新しい Copilot セッションを開始 (COPILOT_DIRS_ROOT が設定されている場合はフォルダピッカーを表示)

/history [n]

過去の CLI セッションを一覧表示 (デフォルト: 3)

/resume <id>

過去のセッションを再開

/dirs [dir]

ディレクトリをブラウズ

/model [name]

AI モデルを表示/設定

/mode

オートパイロット/手動承認を切り替え

/list

アクティブなセッションを一覧表示

/switch <id>

アクティブなセッションを切り替え

/status

セッションのステータス

/stop [id]

セッションを停止

/done

すべてのセッションを停止して終了

/help

コマンドを表示

(任意のテキスト)

アクティブなセッションにプロンプトとして送信

環境変数

すべての変数は .env またはシェルで設定可能です。シェルの値が優先されます。

Telegram:

変数

説明

デフォルト

TELEGRAM_BOT_TOKEN

ボット API トークン

(必須)

TELEGRAM_CHAT_ID

対象のチャット ID

(必須)

TELEGRAM_ALLOWED_USERS

許可するユーザー ID (カンマ区切り)

(すべて許可)

TELEGRAM_ENV_FILE

.env ファイルへのパス

CWD の .env

TELEGRAM_CONFIG_PATH

JSON 認証情報ファイル (フォールバック)

Copilot:

変数

説明

デフォルト

COPILOT_CLI_PATH

copilot 実行ファイルへのパス

copilot (PATH から)

COPILOT_MODEL

デフォルトの AI モデル

claude-opus-4.6

COPILOT_AUTOPILOT

ツール呼び出しの自動承認 (true/false)

false

COPILOT_DIRS_ROOT

/dirs および /new フォルダピッカーのルートディレクトリ

(--cwd を使用)

COPILOT_ALLOWED_DIRS

許可する作業ディレクトリ (カンマ区切り)

(すべて)

COPILOT_ALLOWED_TOOLS

許可するツール (カンマ区切り)

shell(git),read,write

COPILOT_PERMISSION_TIMEOUT_SECONDS

権限承認のタイムアウト (秒)

300 (5分)

HUB_LOCK_PORT

シングルトンロック用 TCP ポート

47732

セキュリティ

  • ユーザー許可リスト: TELEGRAM_ALLOWED_USERS からのメッセージのみが受け付けられます。他のユーザーはすべて無視されます。

  • タイムアウト: 設定可能な自動シャットダウンタイムアウト(デフォルト:なし)。権限リクエストは5分後にタイムアウトします(COPILOT_PERMISSION_TIMEOUT_SECONDS で設定可能)。

  • リポジトリに秘密情報を含めない: すべての認証情報は .env ファイルまたは環境変数経由で管理されます。

  • ツール許可リスト: --allow-tool を使用し(--allow-all-tools ではない)、Copilot CLI が実行できる操作を制限します。

  • ディレクトリ制限: COPILOT_ALLOWED_DIRS を介して、Copilot セッションが操作できるディレクトリを制限します。

  • シングルトンロック: マシンごとに1つのインスタンスのみ実行可能です(TCP ポートロック)。

制限事項

  • VS Code でのローカル実行は監視不可 — VS Code 内で Copilot が何をしているかを取得する方法はありません。MCP ツールは VS Code から Bridge への一方通行の呼び出しです。

  • Bridge 外で開始された CLI セッションのステータスは利用不可 — サーバー上で直接 copilot を起動した場合、リアルタイムの実行ステータスを追跡できません。/status での活動表示(events.jsonl の更新時間から推定)が唯一の代替手段です。

  • Bridge 外で開始された CLI セッションからのツール承認リクエストは中継不可 — Hub 経由で起動されたセッションのみが、Telegram インラインボタンを介してツール承認リクエストを中継できます。

  • 単一インスタンスの制限 — マシンごとに1つの Hub プロセスのみ(TCP ポートロック)。

  • Telegram メッセージの長さ制限 — 4000文字を超えるレスポンスは自動的に分割されます。

ライセンス

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/NobufumiMurata/telegram-copilot-bridge'

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