MCP Integration example with Telegram

MCP Integration example with Telegram

site icon
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

安装教程

  1. 克隆仓库: bash git [email protected]:arananet/mcp-telegram-poc.git cd mcp-telegram-poc
  2. 安装依赖: bash pip install -r requirements.txt
  3. 创建虚拟环境: bash python3 -m venv .venv
  4. 复制 .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

许可证

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