使用说明
电报MCP服务器
一个功能强大的Telegram集成服务器,通过MCP(多客户端协议)提供各种工具来管理联系人、发送消息和检索频道信息。
特性
-
联系人管理
- 获取联系人列表
- 搜索联系人
- 获取上次交互
-
消息传递
- 按姓名或电话号码向联系人发送消息
- 通过日期范围过滤获取聊天记录
- 查看上次交互
-
通道功能
- 从频道获取帖子
- 搜索频道
- 查看频道信息
- 按日期范围筛选帖子
先决条件
- Python 3.8或更高版本
- Node.js 14或更高版本(适用于npx安装)
- 电报API凭证(API_id和API_hash)
- Telegram帐户
安装
- 克隆存储库:
git clone https://github.com/yourusername/telegram-MCP-server.git
cd telegram-MCP-server
- 安装所需的依赖项:
uv venv .venv # Create a virtual environment
source .venv/bin/activate # Activate it (Linux/macOS)
.\venv\Scripts\activate # Activate it (Windows)
uv pip install .
- 获取您的Telegram API ID和API哈希:
- 首选https://my.telegram.org
- 使用您的电话号码登录
- 点击“API开发工具”
- 填写必填字段(您可以使用任何应用程序标题和简称)
- 提交后,您将看到您的API ID和API哈希
- 创建一个
.env使用您的Telegram凭据在项目根目录中创建文件:
TG_API_ID=your_api_id
TG_API_HASH=your_api_hash
phone=your_phone_number # Format: +1234567890
- 首次验证您的电报
uv run telegram_auth.py
在提示时输入您通过电报收到的代码。
与Cursor/Claude桌面集成
将以下json与相应的{{PATH}}值一起复制:
{
"mcpServers": {
"telegram": {
"command": "{{PATH_TO_UV}}", // Run `which uv` and place the output here
"args": [
"--directory",
"{{PATH_TO_SRC}}\\telegram-mcp-server", // cd into the repo, run `pwd` and enter the output here + "/whatsapp-mcp-server"
"run",
"main.py"
]
}
}
}
对于 克劳德,将此另存为 claude_desktop_config.json 在您的Claude Desktop配置目录中:
~/Library/Application Support/Claude/claude_desktop_config.json
对于 光标,将此另存为 mcp.json 在Cursor配置目录中:
~/.cursor/mcp.json
工具文档
get_contacts()
返回所有Telegram联系人的列表,包括他们的姓名、电话号码和用户名。
send_message_by_identifier(标识符:str,消息:str)
向通过姓名或电话号码标识的联系人发送消息。
identifier:联系人姓名或电话号码message:要发送的短信
get_last_interaction(标识符:str)
返回与特定联系人交换的最新消息。
identifier:联系人姓名或电话号码
get_chat_history(标识符:str,开始日期:str=None,结束日期:str=None,限制:int=20)
检索指定时间范围内与联系人的聊天历史记录。
identifier:联系人姓名或电话号码start_date:可选开始日期(YYYY-MM-DD)end_date:可选结束日期(YYYY-MM-DD)limit:要返回的最大邮件数
get_channel_posts(channel_name:str,start_date:str=None,end_date:stru=None,限制:int=20)
从Telegram频道获取帖子。
channel_name:频道用户名或名称start_date:可选开始日期(YYYY-MM-DD)end_date:可选结束日期(YYYY-MM-DD)limit:返回的最大职位数
错误处理
该服务器包括全面的错误处理功能,用于:
- 无效凭证
- 网络问题
- 速率限制
- 无效参数
- 权限错误
安全考虑
- 安全存储API凭据
- 永远不要分享你的
.env文件 - 在生产中使用环境变量
- 对生产使用实施限速
- 监控使用情况并实施日志记录
贡献
- 分叉存储库
- 创建要素分支
- 提交您的更改
- 推到分支
- 创建拉取请求
许可证
该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。
致谢
- Telegram API集成的Telethon库
- 服务器框架的FastMCP