MCP Telegram

MCP Telegram

site icon
2025.04.01 1
TypeScriptTelegram 交互AI 模型集成交流协作
mcp-telegram 是一个基于 TypeScript 实现的 MCP (Model Context Protocol) 服务器,用于通过 MTProto 协议与 Telegram 交互。该项目提供了一套工具集,使得 AI 模型(如 Claude)可以通过 MCP 服务器与 Telegram 进行交互。
View on GitHub

Overview

基本能力

产品定位

mcp-telegram 是一个用于与 Telegram 交互的 MCP 服务器,提供了一套工具集,使得 AI 模型可以通过 MCP 服务器与 Telegram 进行交互。

核心功能

  1. 通过 MTProto 协议与 Telegram 交互
  2. 提供 CLI 命令进行 Telegram 登录、登出和启动 MCP 服务器
  3. 支持 stdio 和 SSE 两种传输方式
  4. 提供工具如 listDialogslistMessages 来管理 Telegram 对话和消息

适用场景

  1. AI 模型与 Telegram 的交互
  2. 自动化 Telegram 消息管理
  3. 实时通信应用开发

工具列表

  1. listDialogs: 列出可用的对话、聊天和频道
  2. 参数: unread (仅显示未读对话), archived (包括已归档对话), ignorePinned (忽略置顶对话)
  3. listMessages: 列出指定对话、聊天或频道的消息
  4. 参数: dialogId (对话 ID), unread (仅显示未读消息), limit (最大消息数量)

常见问题解答

  1. 如何设置环境变量?
  2. 在项目根目录的 .env 文件中设置 TELEGRAM_API_IDTELEGRAM_API_HASH 等变量
  3. 如何选择传输类型?
  4. 通过 TRANSPORT_TYPE 环境变量或 CLI 选项 -t 设置传输类型 (stdio 或 sse)
  5. 如何启动开发模式?
  6. 运行 npm run dev 启动开发模式

使用教程

使用依赖

  1. 确保已安装 Node.js 18 或更高版本
  2. 安装项目依赖
npm install

安装教程

  1. 克隆项目
  2. 安装依赖
npm install
  1. 构建项目
npm run build

调试方式

  1. 启动 MCP 服务器
npm run start
# 或
npm run mcp
  1. 使用 CLI 命令进行调试
# 登录 Telegram
npm run sign-in

# 登出 Telegram
npm run logout
  1. 查看日志
  2. 设置 LOG_LEVEL 环境变量控制日志级别 (默认: 'info')

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。