
Telegram Client Library and MCP Server

2025.03.24
1
JavaScriptTelegram 交互AI 助手集成交流协作
kfastov_telegram-mcp-server 是一个结合了 Telegram 客户端库和 MCP(Model Context Protocol)服务器的项目,旨在为 AI 助手提供与 Telegram 交互的能力。该项目不仅支持基本的 Telegram 客户端功能,如认证、会话管理和消息检索,还通过 MCP 服务器提供了搜索频道、列出可用频道、获取频道消息以及按模式过滤消息等高级功能。这使得 AI 助手能够更有效地与 Telegram 平台进行交互,适用于需要自动化处理 Telegram 消息的场景。
View on GitHub
Overview
基本能力
产品定位
kfastov_telegram-mcp-server 是一个结合了 Telegram 客户端库和 MCP 服务器的项目,旨在为 AI 助手提供与 Telegram 交互的能力。
核心功能
- Telegram 客户端库
- 支持 Telegram 认证(包括 2FA)
- 会话管理(自动重用现有会话)
- 获取聊天/对话
- 从特定聊天中获取消息
-
按模式(如正则表达式)过滤消息
-
MCP 服务器
- 按关键词搜索频道
- 列出可用频道
- 从频道获取消息
- 按模式过滤消息
适用场景
- AI 助手需要与 Telegram 交互的场景
- 自动化处理 Telegram 消息
- 需要搜索和过滤 Telegram 频道消息的应用
工具列表
telegram-client.js
: 主客户端库client.js
: 带有额外辅助函数的示例客户端index.js
: 使用客户端库的原始示例mcp-server.js
: MCP 服务器主入口点telegram-mcp.js
: 带有 Telegram 工具的 MCP 服务器实现http-server.js
: HTTP/SSE 服务器传输层mcp-client-example.js
: 测试 MCP 服务器的简单客户端
常见问题解答
- 如何与 Claude 或其他 MCP 兼容的助手一起使用?
- 启动 MCP 服务器
- 使用 MCP URL 将 Claude 连接到 MCP 服务器
- 要求 Claude 搜索频道、检索消息或按模式过滤消息
使用教程
使用依赖
- 创建一个
.env
文件,包含您的 Telegram API 凭据:
TELEGRAM_API_ID=your_api_id
TELEGRAM_API_HASH=your_api_hash
TELEGRAM_PHONE_NUMBER=your_phone_number
PORT=3000 # 可选,MCP 服务器默认为 3000
- 安装依赖:
npm install
安装教程
- 使用上述
.env
文件配置环境变量 - 安装依赖
- 启动 MCP 服务器:
npm start
调试方式
- 运行示例客户端:
npm run client
- 测试 MCP 服务器:
npm run mcp-client
- MCP 服务器将在以下地址可用:
http://localhost:3000/mcp