Vexa
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
作者による説明(英語の原文)
Telegram MCP server: each AI client gets its own key, scoped to chosen chats. Read-only by default.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
TELEGRAM_MCP_ENDPOINT_TOKEN「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"secure-telegram": {
"command": "npx",
"args": [
"-y",
"secure-telegram-mcp",
"connect"
],
"env": {
"TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add secure-telegram --env TELEGRAM_MCP_ENDPOINT_TOKEN=your-value -- npx -y secure-telegram-mcp connect動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"secure-telegram": {
"command": "npx",
"args": [
"-y",
"secure-telegram-mcp",
"connect"
],
"env": {
"TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"secure-telegram": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"secure-telegram-mcp",
"connect"
],
"env": {
"TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント antonorlov で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:TELEGRAM_MCP_ENDPOINT_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.3.3)がレジストリに届いたのは一昨日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Vexa, emailmd, MCP WhatsApp Cloud
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.
MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Connect Claude, Cursor, or any MCP client to Telegram — without handing any of them your whole account.
*The demo runs against synthetic data — no real Telegram connection, no usable credential.*
.env.For example:
| AI client | Endpoint | Account | Telegram scope | Access |
|---|---|---|---|---|
| Personal agent | personal | main | private chats | read + write |
| Work agent | work | work-acc | the Work folder | read-only |
Every MCP connection authenticates with one endpoint key and receives a scope-bound Telegram adapter for that endpoint's account; without a key, a client can only list the tools. Endpoints can ride different logged-in accounts; endpoints on the same account share one background Telegram connection. Out-of-scope chats are not addressable at all.
invoke escape hatch, no model-accessible scope mutation; a CI architecture guard keeps it that way.Prerequisites: Node.js ≥ 20.10 and Telegram api_id/api_hash from my.telegram.org/apps.
npx -y secure-telegram-mcp setup
Setup walks you through, in order:
api_id / api_hash from the prerequisite link.main if you have none).r or Space grants read, w write, s saves, ? shows the full keymap.At exit the endpoint's API key is printed once, inside a ready-to-paste client config — copy it before closing the terminal. Hit a snag? See Troubleshooting.
{
"mcpServers": { "telegram": { "command": "npx", "args": ["-y", "secure-telegram-mcp", "connect"], "env": { "TELEGRAM_MCP_ENDPOINT_TOKEN": "tgmcp_..." } } } }
The token alone selects and authorizes the endpoint — no api_id, api_hash, or PIN material ever goes into client config. Setup prints one block per endpoint; each goes only into its own client — combining entries in one client intentionally grants it the union of the scopes.
Claude Code
claude mcp add telegram --env TELEGRAM_MCP_ENDPOINT_TOKEN=tgmcp_... -- npx -y secure-telegram-mcp connect
Claude Desktop
Add the JSON block above to claude_desktop_config.json (Settings → Developer → Edit Config).
Cursor
Run setup first, then click and replace the placeholder token — or add the JSON block above to ~/.cursor/mcp.json yourself.
VS Code
%22%2C%22password%22%3Atrue%7D%5D&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22secure-telegram-mcp%22%2C%22connect%22%5D%2C%22env%22%3A%7B%22TELEGRAM_MCP_ENDPOINT_TOKEN%22%3A%22%24%7Binput%3Aendpoint_token%7D%22%7D%7D)
VS Code prompts for the endpoint token as a masked secret — it never lands in a settings file in plain sight of other extensions' recommendations.
Docker
See Usage and operations → Docker for the setup and stdio-connect containers.
If you kept the default machine-bound protection, skip this — the service starts automatically when a client connects. With a PIN:
npx -y secure-telegram-mcp start
Enter the PIN interactively; clients never need it. Multi-client examples, unattended unlock, environment variables, and manual policy editing live in Usage and operations.
18 tools, gated by 8 permission verbs that are checked at execution time.
| Category | Tools | Verb |
|---|---|---|
| Read | get_messages, search_messages, list_dialogs, list_topics, get_chat_info, get_media_info, get_pinned_messages, list_participants | read |
| Media download | download_media (strict size cap, server-chosen destination) | read_media |
| Send & edit | send_message, edit_message, prepare_media, send_media | send |
| Other writes | save_draft, delete_message, mark_read, send_reaction, forward_message | draft, delete, mark_read, react, forward |
Forwarding is two-sided: read on the source chat *and* forward on the destination. Sending local media is a deliberate two-phase flow — prepare_media returns an opaque, expiring handle for a file inside the confined media root; send_media consumes it. The full catalogue and verb semantics are in Usage and operations.
A read-only endpoint attempting send_message is stopped at the ACL gate and audited — one NDJSON line, no message content:
{"v":1,"timestampIso":"2026-07-17T09:41:22.310Z","endpointName":"work","verb":"send","outcome":"deny","targetChatId":"-1001234567890","reason":"VERB_NOT_GRANTED"}
The client sees only an ACL_DENIED error. An out-of-scope peer denies the same way, with PEER_OUT_OF_SCOPE.
Read the complete threat model — including non-objectives and residual risks — before pointing this at a Telegram account you care about. Component boundaries are in Architecture.
npm run ci # typecheck + lint + architecture guard + knip + tests
npm run build
The architecture guard rejects forbidden MCP surfaces and unreviewed MTProto request constructors; ESLint enforces dependency boundaries and confines GramJS to the infrastructure layer. See CONTRIBUTING.md before opening a PR.
MIT
*Unofficial project: not affiliated with, endorsed by, or sponsored by Telegram FZ-LLC. "Telegram" is a trademark of Telegram FZ-LLC. This software connects to the Telegram API; each user supplies their own API credentials.*