电报MCP服务器
强大的MCP(模型上下文协议)服务器,使Claude能够与Telegram频道和组进行交互。该服务器提供网络抓取和API对Telegram内容的直接访问。
🚀 特性
版本0.3.0-双模式操作
API模式(推荐)⚡
- 快100倍 比网页抓取
- 通过Telegram的MTProto协议直接访问
- 频道内的搜索功能
- 访问您所属的私人频道
- 完整的消息元数据(视图、反应、转发)
- 持久会话-一次身份验证
- 无需浏览器自动化
- 无限制的帖子检索 默认情况下
Web抓取模式🌐
- 不需要API凭据
- 使用Puppeteer进行基于浏览器的抓取
- 对受限内容的身份验证支持
- 视觉媒体提取
- 适用于快速匿名访问
📋 先决条件
- Node.js 18.0.0或更高版本
- Chrome/Chromium(用于网页抓取模式)
- 电报API凭证(用于API模式)- 把他们带到这儿来
🛠️ 安装
- 克隆此存储库:
git clone https://github.com/DLHellMe/telegram-mcp-server.git
cd telegram-mcp-server- 安装依赖项:
npm install- 复制示例环境文件:
cp .env.example .env- 编辑
.env并添加您的配置:
- 对于API模式:添加您的 TELEGRAM_API_ID 和 TELEGRAM_API_HASH - 对于网页抓取:默认设置即用
- 构建项目:
npm run build🔧 配置
获取Telegram API凭据
- 首选 https://my.telegram.org
- 使用您的电话号码登录
- 点击“API开发工具”
- 创建新应用程序
- 复制您的
api_id和api_hash到.env文件
Claude桌面配置
将此添加到您的Claude Desktop配置文件中:
视窗: %APPDATA%\Claude\claude_desktop_config.json\ macOS: ~/Library/Application Support/Claude/claude_desktop_config.json\ Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"telegram-scraper": {
"command": "node",
"args": ["/absolute/path/to/telegram-mcp-server/dist/index.js"],
"env": {
"TELEGRAM_API_ID": "your_api_id",
"TELEGRAM_API_HASH": "your_api_hash"
}
}
}
}📖 用法
配置后,重新启动Claude Desktop。克劳德将提供Telegram工具。
API模式工具
- telegram_api_login -使用Telegram进行身份验证(仅限首次)
Use telegram_api_login to connect to Telegram- api_scrape_channel -取消频道帖子(默认情况下不受限制)
Use api_scrape_channel with url="https://t.me/channelname"或者有一个限制:
Use api_scrape_channel with url="https://t.me/channelname" and max_posts=50- api_search_channel -在频道内搜索
Use api_search_channel with url="https://t.me/channelname" and query="keyword"Web剪贴工具
- scrape_channel -废弃公共渠道
Use scrape_channel with url="https://t.me/channelname"- telegram_login -登录以获取受限内容
Use telegram_login with phone="+1234567890"🔒 数据存储
会话数据和Cookie存储在特定于平台的目录中:
- 视窗:
%APPDATA%\telegram-mcp-data - macOS:
~/Library/Application Support/telegram-mcp-data - Linux:
~/.config/telegram-mcp-data
你可以用以下命令覆盖它 TELEGRAM_DATA_PATH 环境变量。
🛡️ 安全说明
- 永远不要承诺你的
.env文件 -它包含敏感的API凭据 - API证书是个人的-每个用户都需要自己的证书
- 会话文件包含身份验证数据-确保其安全
- 使用
.gitignore防止意外提交的文件
📝 发展
# Run in development mode
npm run dev
# Build the project
npm run build
# Watch for changes
npm run watch🤝 贡献
欢迎投稿!拜托:
- 分叉存储库
- 创建要素分支
- 进行更改
- 提交拉取请求
📄 许可证
MIT许可证-有关详细信息,请参阅许可证文件
🙏 致谢
内置:
- 模型上下文协议SDK
- GramJS -Telegram客户端库
- 操纵者 -浏览器自动化
⚠️ 免责声明
此工具用于教育和研究目的。请尊重Telegram的服务条款和频道成员的隐私。在抓取私人频道之前,务必获得许可。
🐛 故障排除
API模式问题
- “未连接到Telegram API”:运行
telegram_api_login第一 - 电话号码格式:包括国家代码(例如+1234567890)
- 2FA错误:在提示时输入您的2FA密码
Web抓取问题
- “未找到Chrome二进制文件”:安装Chrome或Chromium
- 登录问题:确保使用正确的电话格式
- 超时错误:增加
BROWSER_TIMEOUT在……里面.env
📞 支持
- 在GitHub上创建bug问题
- 在创建新问题之前检查现有问题
- 报告问题时包括错误消息和日志
