Back to MCP directory
publicPublicdnsLocal runtime

telegram-mcp-server-ff8

一个功能强大的Telegram集成服务器,提供联系人管理、消息发送和频道信息获取等功能,通过MCP协议实现多客户端通信。

article

README

🚀 Telegram MCP 服务器

Telegram MCP 服务器是一个强大的Telegram集成服务器,它提供了多种实用工具,可用于管理联系人、发送消息,还能通过MCP(多客户端协议)检索频道信息,极大提升了使用Telegram的便捷性。

🚀 快速开始

本服务器需要一定的环境配置和安装步骤,下面将详细介绍。

✨ 主要特性

联系人管理

  • 获取联系人列表:可快速获取所有联系人信息。
  • 搜索联系人:能根据关键词精准搜索联系人。
  • 查看最近互动:了解与联系人的最新交流情况。

消息功能

  • 发送消息:可通过姓名或电话号码向联系人发送消息。
  • 过滤聊天记录:能根据日期范围过滤聊天记录,方便查找。
  • 查看最近互动:随时掌握与联系人的最新互动。

频道功能

  • 获取频道帖子:快速获取频道内的帖子内容。
  • 搜索频道:轻松找到感兴趣的频道。
  • 查看频道信息:了解频道的详细情况。
  • 筛选帖子:可根据日期范围筛选帖子。

📦 安装指南

先决条件

  • Python 3.8 或更高版本
  • Node.js 14 或更高版本(用于npx安装)
  • Telegram API凭证(api_id 和 api_hash)
  • 一个Telegram账户

安装步骤

  1. 克隆仓库:
git clone https://github.com/yourusername/telegram-MCP-server.git
cd telegram-MCP-server
  1. 安装所需的依赖项:
uv venv .venv  # 创建虚拟环境
source .venv/bin/activate  # 激活(Linux/macOS)
.\venv\Scripts\activate  # 激活(Windows)
uv pip install
  1. 在项目根目录中创建一个.env文件,输入您的Telegram凭证:
TG_API_ID=your_api_id
TG_API_HASH=your_api_hash
phone=your_phone_number  # 格式:+1234567890

📚 详细文档

与Cursor/Claude Desktop集成

复制以下JSON并替换相应的{{PATH}}值:

{
  "mcpServers": {
    "whatsapp": {
      "command": "{{PATH_TO_UV}}", // 运行`which uv`并将输出放在此处
      "args": [
        "--directory",
        "{{PATH_TO_SRC}}/whatsapp-mcp/whatsapp-mcp-server", // 在repo中运行`pwd`,输入输出结果并添加"/whatsapp-mcp-server"
        "run",
        "main.py"
      ]
    }
  }
}

对于Claude,将此文件保存为claude_desktop_config.json,位置在:

~/Library/Application Support/Claude/claude_desktop_config.json

对于Cursor,将此文件保存为mcp.json,位置在:

~/.cursor/mcp.json

工具文档

get_contacts()

返回所有Telegram联系人列表,包括姓名、电话号码和用户名。

send_message_by_identifier(identifier: str, message: str)

通过名称或电话号码向特定联系人发送消息。

  • identifier:联系人的姓名或电话号码
  • message:要发送的文本消息

get_last_interaction(identifier: str)

返回与特定联系人的最近一条消息。

  • identifier:联系人的姓名或电话号码

get_chat_history(identifier: str, start_date: str = None, end_date: str = None, limit: int = 20)

在指定的时间范围内检索与某个联系人的聊天记录。

  • identifier:联系人的姓名或电话号码
  • start_date:可选开始日期(YYYY-MM-DD)
  • end_date:可选结束日期(YYYY-MM-DD)
  • limit:可选限制结果数量

get_posts_by_hashtag(hashtag: str, limit: int = 20)

通过指定的标签检索帖子。

  • hashtag:要搜索的标签
  • limit:可选限制结果数量

错误处理

handle_errors()

处理可能出现的错误。

🔧 技术细节

安全考虑

  • 确保凭证的安全性,避免泄露。
  • 避免在公共网络上使用此工具。

贡献指南

如何贡献

  1. Fork 仓库
  2. 创建功能分支
  3. 提交更改
  4. Push 到分支
  5. 创建 Pull Request

贡献者

  • [您的名字] - [您的角色]

📄 许可证

[插入许可证内容]

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client