
MCP Integration example with Telegram

2025.04.22
0
PythonTelegram 通知用户响应处理交流协作
mcp-telegram-poc 是一个基于 Python 的 Model Context Protocol (MCP) 客户端和服务器,旨在使大型语言模型(LLM)能够通过 Telegram 发送通知并接收用户响应。该服务通过 MCP 协议将 LLM 的推理与外部操作的执行分离,提供了一种模块化和安全的方式来处理外部工具的执行。
View on GitHub
Overview
基本能力
产品定位
mcp-telegram-poc 是一个用于集成 Telegram 通知功能的 MCP 服务,旨在为 LLM 应用提供灵活的通知和用户响应处理能力。
核心功能
- 发送带有可定制紧急级别的文本警报到 Telegram 聊天
- 检查用户回复,支持可配置的超时时间
- 提供灵活的模板,便于与 MCP 兼容的 LLM 应用集成
适用场景
- LLM 应用需要发送通知到 Telegram
- 需要处理用户响应的自动化流程
- 需要模块化和安全的外部工具执行
工具列表
send_alert
: 发送 Telegram 警报并等待回复- 参数:
message
(必填),project
(必填),urgency
(可选) - 描述: 发送 Markdown 格式的消息并等待回复
check_reply
: 检查特定消息的回复- 参数:
message_id
(必填),timeout_seconds
(可选) - 描述: 轮询特定消息的回复
常见问题解答
- 如何获取 Telegram Bot Token?
- 通过与 @BotFather 聊天并发送
/newbot
命令获取 - 如何找到 Chat ID?
- 发送消息到你的 Bot 并访问
https://api.telegram.org/bot<YOUR_BOT_TOKEN>/getUpdates
查找chat
对象的id
字段
使用教程
使用依赖
- Python 3.11+
- Telegram Bot Token (从 @BotFather 获取)
- Telegram Chat ID
安装教程
- 克隆仓库:
bash git [email protected]:arananet/mcp-telegram-poc.git cd mcp-telegram-poc
- 安装依赖:
bash pip install -r requirements.txt
- 创建虚拟环境:
bash python3 -m venv .venv
- 复制
.env.example
到.env
并填写 Telegram 凭证:bash cp .env.example .env nano .env
调试方式
- 运行服务器:
bash python3 src/mcp_handler.py
- 测试客户端:
bash python3 examples/test_client.py
- 测试 Agent 集成:
bash python3 examples/test_autogen_agent.py
- 本地测试:
bash chmod +x test_server.sh ./test_server.sh