原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。使用 Google 登录即可撰写评价。原型 · 每 30 分钟更新
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Secure Telegram

作者:antonorlov版本 0.3.3i★ 1i在你的电脑上运行
注册名称io.github.antonorlov/secure-telegram-mcp

安装方法

What it does

Telegram MCP server: each AI client gets its own key, scoped to chosen chats. Read-only by default.

  • Connects 在你的电脑上运行
  • Account or key Needs TELEGRAM_MCP_ENDPOINT_TOKEN
  • Category 聊天与邮件

安装

选择你使用的 AI 应用,然后复制设置。

通过 3/3 项检查 · 在你的电脑上运行 · ✓ 命令已检查 2026年11月13日

第一步:你用哪个 AI?

选择你用的应用,步骤会显示在下方。

可连接 Claude,但需要先准备

需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次) · 仅限电脑上的 Claude 应用(Windows 或 Mac),网页和手机不可用

让 AI 帮你安装

把这段话复制到 Claude 的对话里。AI 会先检查电脑,告诉你要改哪个文件,并且每次都等你同意。

请在这台电脑上为 Claude 安装 MCP server Secure Telegram,按顺序:1) 用 node -v 检查是否有 Node.js。没有的话,请让我从 https://nodejs.org/en/download 安装,不要自己安装。2) 只使用这份配置(已通过 PopNx MCP 检查):{ "mcpServers": { "secure-telegram": { "command": "npx", "args": [ "-y", "secure-telegram-mcp", "connect" ], "env": { "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value" } } } } 3) 告诉我要修改的文件完整路径或要运行的命令,等我同意。4) TELEGRAM_MCP_ENDPOINT_TOKEN 先保留 "your-value",请我自己把真实值粘贴到文件或应用的输入框里。不要让我在对话里输入密钥。5) 按约定执行,然后确认 Secure Telegram 的工具真的出现了。

这段话不包含你的密钥。如果需要密钥,AI 会请你自己粘贴到文件或应用的输入框里。

  1. 安装 Node.js(如果还没有)

    已经装好了吗?先检查 · 打开终端,输入这条命令后按 Enter

    node -v
    • 显示版本号(例如 v26.13.1)= 已安装,可跳过这一步
    • 显示 "command not found"(Windows 显示 "is not recognized")= 还没安装,或刚装好但需要关掉终端再重新打开
    怎么打开终端

    Mac:按 ⌘ + Space,输入 Terminal 后按 Enter

    Windows:打开“开始”菜单,输入 Windows PowerShell,然后选“打开”

    还没安装: 打开官方下载页,选择 LTS 版本和点选式安装程序:Mac 用 .pkg · Windows 用 .msi。双击后一路下一步即可,不需要 curl 命令

    打开 Node.js 下载页 ↗

    装好后关掉终端再打开,重新运行同一条命令,应显示版本号: node -v

    安装一次,所有需要 Node.js 的工具都能用

  2. 注册并创建 Secure Telegram 的密钥

    打开开发者网站,注册账户并创建 API 密钥,下一步要用。价格和免费方案请看开发者网站。

    打开 Secure Telegram 网站 ↗

  3. 打开电脑版 Claude 应用的设置文件

    SettingsDeveloperEdit Config

  4. 粘贴这些设置并保存文件

    {
      "mcpServers": {
        "secure-telegram": {
          "command": "npx",
          "args": [
            "-y",
            "secure-telegram-mcp",
            "connect"
          ],
          "env": {
            "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
          }
        }
      }
    }

    只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人

  5. 退出 Claude 再重新打开

  6. 试一试

    用 Secure Telegram 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 Claude 说正在使用 Secure Telegram,或回答中出现 Secure Telegram 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同

ChatGPT 暂时无法连接 Secure Telegram

Secure Telegram 需要安装在你的电脑上,而 ChatGPT 只能连接在网上运行的服务器

你可以改用这些方式

A · 使用能连接 Secure Telegram 的应用

  • 需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次) · 仅限电脑上的 Claude 应用(Windows 或 Mac),网页和手机不可用
  • 需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)
  • 需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)
  • 需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)

B · 聊天与邮件 类中能连接 ChatGPT 的其他服务器

从同类中使用较多的里挑选,仅限用地址即可连接、无需密钥的

可连接 Claude Code,但需要先准备

需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)

让 AI 帮你安装

把这段话复制到 Claude Code 的对话里。AI 会先检查电脑,告诉你要改哪个文件,并且每次都等你同意。

请在这台电脑上为 Claude Code 安装 MCP server Secure Telegram,按顺序:1) 用 node -v 检查是否有 Node.js。没有的话,请让我从 https://nodejs.org/en/download 安装,不要自己安装。2) 只使用这份配置(已通过 PopNx MCP 检查):claude mcp add --scope user secure-telegram --env TELEGRAM_MCP_ENDPOINT_TOKEN=your-value -- npx -y secure-telegram-mcp connect 3) 告诉我要修改的文件完整路径或要运行的命令,等我同意。4) TELEGRAM_MCP_ENDPOINT_TOKEN 先保留 "your-value",请我自己把真实值粘贴到文件或应用的输入框里。不要让我在对话里输入密钥。5) 按约定执行,然后确认 Secure Telegram 的工具真的出现了。

这段话不包含你的密钥。如果需要密钥,AI 会请你自己粘贴到文件或应用的输入框里。

  1. 安装 Node.js(如果还没有)

    已经装好了吗?先检查 · 打开终端,输入这条命令后按 Enter

    node -v
    • 显示版本号(例如 v26.13.1)= 已安装,可跳过这一步
    • 显示 "command not found"(Windows 显示 "is not recognized")= 还没安装,或刚装好但需要关掉终端再重新打开
    怎么打开终端

    Mac:按 ⌘ + Space,输入 Terminal 后按 Enter

    Windows:打开“开始”菜单,输入 Windows PowerShell,然后选“打开”

    还没安装: 打开官方下载页,选择 LTS 版本和点选式安装程序:Mac 用 .pkg · Windows 用 .msi。双击后一路下一步即可,不需要 curl 命令

    打开 Node.js 下载页 ↗

    装好后关掉终端再打开,重新运行同一条命令,应显示版本号: node -v

    安装一次,所有需要 Node.js 的工具都能用

  2. 注册并创建 Secure Telegram 的密钥

    打开开发者网站,注册账户并创建 API 密钥,下一步要用。价格和免费方案请看开发者网站。

    打开 Secure Telegram 网站 ↗

  3. 打开终端

    Mac:按 Command+空格,输入 Terminal · Windows:打开 PowerShell

  4. 粘贴这条命令并按 Enter

    claude mcp add --scope user secure-telegram --env TELEGRAM_MCP_ENDPOINT_TOKEN=your-value -- npx -y secure-telegram-mcp connect

    按 Enter 前,把“your-value”改成你的密钥

    只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人

  5. 在 Claude Code 中输入 /mcp

    应能看到 Secure Telegram 在列表中并显示已连接

  6. 试一试

    用 Secure Telegram 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 Claude Code 说正在使用 Secure Telegram,或回答中出现 Secure Telegram 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同

可连接 Cursor,但需要先准备

需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)

让 AI 帮你安装

把这段话复制到 Cursor 的对话里。AI 会先检查电脑,告诉你要改哪个文件,并且每次都等你同意。

请在这台电脑上为 Cursor 安装 MCP server Secure Telegram,按顺序:1) 用 node -v 检查是否有 Node.js。没有的话,请让我从 https://nodejs.org/en/download 安装,不要自己安装。2) 只使用这份配置(已通过 PopNx MCP 检查):{ "mcpServers": { "secure-telegram": { "command": "npx", "args": [ "-y", "secure-telegram-mcp", "connect" ], "env": { "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value" } } } } 3) 告诉我要修改的文件完整路径或要运行的命令,等我同意。4) TELEGRAM_MCP_ENDPOINT_TOKEN 先保留 "your-value",请我自己把真实值粘贴到文件或应用的输入框里。不要让我在对话里输入密钥。5) 按约定执行,然后确认 Secure Telegram 的工具真的出现了。

这段话不包含你的密钥。如果需要密钥,AI 会请你自己粘贴到文件或应用的输入框里。

  1. 安装 Node.js(如果还没有)

    已经装好了吗?先检查 · 打开终端,输入这条命令后按 Enter

    node -v
    • 显示版本号(例如 v26.13.1)= 已安装,可跳过这一步
    • 显示 "command not found"(Windows 显示 "is not recognized")= 还没安装,或刚装好但需要关掉终端再重新打开
    怎么打开终端

    Mac:按 ⌘ + Space,输入 Terminal 后按 Enter

    Windows:打开“开始”菜单,输入 Windows PowerShell,然后选“打开”

    还没安装: 打开官方下载页,选择 LTS 版本和点选式安装程序:Mac 用 .pkg · Windows 用 .msi。双击后一路下一步即可,不需要 curl 命令

    打开 Node.js 下载页 ↗

    装好后关掉终端再打开,重新运行同一条命令,应显示版本号: node -v

    安装一次,所有需要 Node.js 的工具都能用

  2. 注册并创建 Secure Telegram 的密钥

    打开开发者网站,注册账户并创建 API 密钥,下一步要用。价格和免费方案请看开发者网站。

    打开 Secure Telegram 网站 ↗

  3. 点击这个按钮打开 Cursor

    在 Cursor 中打开

    Cursor 会请你确认安装,点击 Install

  4. 填写你的密钥

    在 Secure Telegram 的设置中,TELEGRAM_MCP_ENDPOINT_TOKEN 还是空的,填入你的密钥并保存

    只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人

  5. 在 Cursor 中以 Agent 模式打开 AI 聊天

  6. 试一试

    用 Secure Telegram 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 Cursor 说正在使用 Secure Telegram,或回答中出现 Secure Telegram 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 Cursor 帮助页面核实 · 你的界面可能因版本略有不同

可连接 VS Code,但需要先准备

需要 Secure Telegram 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)

让 AI 帮你安装

把这段话复制到 VS Code 的对话里。AI 会先检查电脑,告诉你要改哪个文件,并且每次都等你同意。

请在这台电脑上为 VS Code 安装 MCP server Secure Telegram,按顺序:1) 用 node -v 检查是否有 Node.js。没有的话,请让我从 https://nodejs.org/en/download 安装,不要自己安装。2) 只使用这份配置(已通过 PopNx MCP 检查):{ "servers": { "secure-telegram": { "type": "stdio", "command": "npx", "args": [ "-y", "secure-telegram-mcp", "connect" ], "env": { "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value" } } } } 3) 告诉我要修改的文件完整路径或要运行的命令,等我同意。4) TELEGRAM_MCP_ENDPOINT_TOKEN 先保留 "your-value",请我自己把真实值粘贴到文件或应用的输入框里。不要让我在对话里输入密钥。5) 按约定执行,然后确认 Secure Telegram 的工具真的出现了。

这段话不包含你的密钥。如果需要密钥,AI 会请你自己粘贴到文件或应用的输入框里。

  1. 安装 Node.js(如果还没有)

    已经装好了吗?先检查 · 打开终端,输入这条命令后按 Enter

    node -v
    • 显示版本号(例如 v26.13.1)= 已安装,可跳过这一步
    • 显示 "command not found"(Windows 显示 "is not recognized")= 还没安装,或刚装好但需要关掉终端再重新打开
    怎么打开终端

    Mac:按 ⌘ + Space,输入 Terminal 后按 Enter

    Windows:打开“开始”菜单,输入 Windows PowerShell,然后选“打开”

    还没安装: 打开官方下载页,选择 LTS 版本和点选式安装程序:Mac 用 .pkg · Windows 用 .msi。双击后一路下一步即可,不需要 curl 命令

    打开 Node.js 下载页 ↗

    装好后关掉终端再打开,重新运行同一条命令,应显示版本号: node -v

    安装一次,所有需要 Node.js 的工具都能用

  2. 注册并创建 Secure Telegram 的密钥

    打开开发者网站,注册账户并创建 API 密钥,下一步要用。价格和免费方案请看开发者网站。

    打开 Secure Telegram 网站 ↗

  3. 点击这个按钮打开 VS Code

    在 VS Code 中打开

    VS Code 会请你确认安装,点击 Install

  4. 填写你的密钥

    在 Secure Telegram 的设置中,TELEGRAM_MCP_ENDPOINT_TOKEN 还是空的,填入你的密钥并保存

    只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人

  5. 在 VS Code 中以 Agent 模式打开 AI 聊天

  6. 试一试

    用 Secure Telegram 告诉我你能帮我做什么,然后做一件给我看

    ✓ 如果 VS Code 说正在使用 Secure Telegram,或回答中出现 Secure Telegram 的工具名称,就表示连接成功

菜单名称已于 2026年11月11日 对照 VS Code 帮助页面核实 · 你的界面可能因版本略有不同

其他支持 MCP 的应用(如 Windsurf、Zed、Gemini CLI)添加方式各不相同,请在应用列表中查看

查看所有支持 MCP 的应用 →

JSON 设置在下方“开发者专用”中

卡住了?问问正在用 Secure Telegram 的人💬 讨论 →
开发者专用:终端命令和 JSON 设置

安装在电脑上

Claude Code

claude mcp add --scope user secure-telegram --env TELEGRAM_MCP_ENDPOINT_TOKEN=your-value -- npx -y secure-telegram-mcp connect

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "secure-telegram": {
      "command": "npx",
      "args": [
        "-y",
        "secure-telegram-mcp",
        "connect"
      ],
      "env": {
        "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "secure-telegram": {
      "command": "npx",
      "args": [
        "-y",
        "secure-telegram-mcp",
        "connect"
      ],
      "env": {
        "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "secure-telegram": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "secure-telegram-mcp",
        "connect"
      ],
      "env": {
        "TELEGRAM_MCP_ENDPOINT_TOKEN": "your-value"
      }
    }
  }
}

需要你填写的值

  • TELEGRAM_MCP_ENDPOINT_TOKEN 机密 必填 env
    The endpoint's API key. Run 'npx secure-telegram-mcp setup' in a terminal first: it logs in to Telegram and prints the key once.

说明仍为英文原文。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

一览

每周下载量i
568/周
连接方式
在你的电脑上运行
最新版本i
0.3.3
发布到注册中心i
2026年11月5日
代码最后更新i
2026年11月4日
作者
antonorlov
软件包
npm: secure-telegram-mcp
注册状态
活跃

哪些应用可以使用它

依据这个服务器的连接方式和各应用自己的文档,检查于 2026年11月10日。

在你的电脑上运行,适用于

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

全部应用及其优缺点 →

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月15日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 antonorlov 验证,该账户拥有此仓库

  • ✓ 通过

    仍在维护

    代码最后更新于11天前

  • ✓ 通过

    有许可证

    使用 MIT

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

已公开的漏洞(OSV.dev)

OSV.dev 中没有 secure-telegram-mcp@0.3.3 的记录

只检查这个版本的包本身,不包括所有依赖 · 检查于 2026年11月15日

我们检查什么 → · JSON

作者:申请重新检查或报告信息错误

讨论

提问、分享技巧或报告无法使用。按“有帮助”数量排序。

还没有帖子,欢迎第一个提问或分享。

此处内容由用户撰写,不代表 PopNx 团队。

登录后发帖

用户评价

还没有评价

登录后写评价

与“聊天与邮件”中的其他服务器比较i

  • 星标数多于此分类中其他 2057 个服务器的 83%
  • 发布到注册中心的时间比此分类中其他 2057 个服务器的 73% 更新
  • 基础检查结果等于或优于此分类中其他 2057 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Secure Telegram 安全吗?

它在 3 项适用的基础检查中通过了 3 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

你需要填写:TELEGRAM_MCP_ENDPOINT_TOKEN

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于11天前,最新版本(0.3.3)于10天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。

有什么可以替代它?

同一分类中有:draw.io, Vexa, emailmd, Kite Discord Bot Builder, e2a — email for AI agents

功能相近的其他选择

同一分类、其他作者、命令已通过检查。官方的排在前面,再按星标排序。

如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

draw.io

Create draw.io diagrams in chat from Mermaid or XML, shown live and interactive. 10,000+ shapes.

作者:jgraph广泛使用★ 58265天前更新

在云端运行✓ 服务方 · draw.ioPopNx 团队已实际试用

Vexa

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

作者:Vexa-ai广泛使用★ 29812个月前更新

在云端运行✓ 服务方 · vexa.ai

emailmd

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

作者:anypost广泛使用↓ 5432/周★ 1391昨天更新

电脑或云端✓ 服务方 · emailmd.dev

Kite Discord Bot Builder

Build and fix Discord bots from a chat. Kite hosts them 24/7, with no code to deploy.

作者:merlinfuchs正在增长★ 334 整个仓库的星标18天前更新

在云端运行✓ 服务方 · kite.onl

e2a — email for AI agents

Authenticated email gateway for AI agents — per-agent inboxes, HITL approval, SPF/DKIM verified.

作者:tokencanopy正在增长★ 199 整个仓库的星标4个月前更新

在云端运行✓ 服务方 · e2a.dev

作者的 README

打开 README

按原文从作者的仓库复制。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.*

❌ The usual Telegram MCP setup

  • The AI client holds your full account session — every chat, every contact, every write.
  • Access is all-or-nothing: your work agent can read your family group.
  • The session credential sits in plaintext in a config file or .env.

✅ With secure-telegram-mcp

  • Each AI client gets an endpoint: its own API key, scoped to the chats and folders you pick.
  • Read/write verbs are re-checked on every call and fail closed — the tool menu is discovery, not authority.
  • The Telegram session is encrypted at rest (AES-256-GCM, scrypt-wrapped keys), machine-bound by default or PIN-protected.

For example:

AI clientEndpointAccountTelegram scopeAccess
Personal agentpersonalmainprivate chatsread + write
Work agentworkwork-accthe Work folderread-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.

Features

  • 🔑 Per-endpoint API keys — each AI client gets its own key and scope, pinned to one of your logged-in accounts (one or many); only salted key hashes are stored.
  • 📁 Folder-scoped access — bind an endpoint to Telegram folders, chats, or channels; write access is opt-in per endpoint.
  • 🔒 Encrypted session at rest — AES-256-GCM envelopes for sessions and policy; PIN, recovery-keyfile, and machine-bound unlock slots.
  • 🚦 Anti-ban pacing — per-account token buckets on messages, forwards, and search, plus a circuit breaker that backs the whole account off at the first sign of saturation. Pacing lowers the risk of flood limits; nothing can guarantee against a ban.
  • 👤 Human-in-the-loop writes — optional per-endpoint confirmation; requires a client that supports MCP elicitation. On clients that don't, a confirm-writes endpoint fails closed: writes are blocked, never silent.
  • ⛔ No raw MTProto surface — no invoke escape hatch, no model-accessible scope mutation; a CI architecture guard keeps it that way.

Quickstart

Prerequisites: Node.js ≥ 20.10 and Telegram api_id/api_hash from my.telegram.org/apps.

1. Run setup
npx -y secure-telegram-mcp setup

Setup walks you through, in order:

  1. Telegram app credentials — the api_id / api_hash from the prerequisite link.
  2. Login method — QR code (scan from a phone that's already logged in) or phone number + code. If your account has two-step verification, setup also asks for that password.
  3. Session name — press Enter to accept the suggestion (your Telegram username, or main if you have none).
  4. PIN or no PIN — default is no PIN (encryption keyed to this machine, nothing to unlock). With a PIN you re-enter it after each reboot; a forgotten PIN is unrecoverable.
  5. Endpoint — name it, then pick chats/folders in the picker: 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.

2. Add the endpoint to *one* MCP client
{

"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

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.

3. Unlock (PIN posture only)

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.

Tools

18 tools, gated by 8 permission verbs that are checked at execution time.

CategoryToolsVerb
Readget_messages, search_messages, list_dialogs, list_topics, get_chat_info, get_media_info, get_pinned_messages, list_participantsread
Media downloaddownload_media (strict size cap, server-chosen destination)read_media
Send & editsend_message, edit_message, prepare_media, send_mediasend
Other writessave_draft, delete_message, mark_read, send_reaction, forward_messagedraft, 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.

Security model

  • One local service owns the encrypted Telegram session and the sealed policy; MCP shims never open a second Telegram session.
  • Every call re-verifies the endpoint token against the current sealed policy, so rotating a key revokes live connections.
  • There is no raw MTProto tool and no way for the model to widen its own scope.
  • Writes pass ACL → optional human confirmation → quota → audit, in that order, and fail closed at each gate.
  • Telegram prose is Unicode-sanitized (control/format characters stripped, length-capped) before it reaches the model; writes, denials, and media egress land in an append-only NDJSON audit log.
  • Known limits: the enforcement boundary is your local OS user; endpoint ACLs cannot shrink what the underlying full-account session could do if the process itself were compromised; sanitization cannot neutralize semantic prompt injection.

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.

Documentation

  • Usage and operations — clients, endpoints, commands, environment variables, Docker, media, tool catalogue.
  • Security — threat model, guarantees, residual risks, hardened deployment.
  • Architecture — process ownership, trust boundaries, policy lifecycle.
  • Example configuration — schema-valid, deliberately unusable placeholders.

Development

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.

License

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.*