车电报所有mcp
全电报客户端MCP服务器由 TDLib.以如下方式操作Telegram 您的个人账户 --阅读所有聊天记录、发送消息、管理群组、搜索历史记录。
正在寻找更简单的纯Bot版本? 看 车电报机器人mcp.
Bot vs All:有什么区别?
| 特点 | che-telegram-bot-mcp | che-telegram-all-mcp |
|---|---|---|
| 身份 | 机器人帐户 | 您的个人帐户 |
| 阅读私人聊天记录 | 否 | 是 |
| 阅读完整的聊天记录 | 否 | 是 |
| 搜索邮件 | 否 | 是 |
| 联系人列表 | 否 | 是 |
| 依赖关系 | 仅URL会话 | TDLib(~30MB) |
| 身份验证 | 机器人令牌 | 电话+验证码 |
先决条件
1.获取Telegram API证书
- 首选 https://my.telegram.org
- 使用您的电话号码登录
- 首选 API开发工具
- 创建新应用程序→ get
api_id(数字)和api_hash(字符串)
2.建造
需要Swift 5.9+和macOS 13+。
首次构建将下载约300MB TDLibFramework二进制文件。这很正常。
git clone https://github.com/PsychQuant/che-msg.git
cd che-msg/che-telegram-all-mcp
swift build -c release二进制位置: .build/release/CheTelegramAllMCP
安装
选项A:Claude代码命令行界面
claude mcp add che-telegram-all-mcp \
-s user \
-e TELEGRAM_API_ID=12345678 \
-e TELEGRAM_API_HASH=your_api_hash_here \
-- /path/to/che-telegram-all-mcp/.build/release/CheTelegramAllMCP设置envvars后,API凭据将在启动时自动配置。您只需验证您的电话号码一次。
选项B:直接编辑配置
添加 ~/.claude.json:
{
"mcpServers": {
"che-telegram-all-mcp": {
"type": "stdio",
"command": "/path/to/.build/release/CheTelegramAllMCP",
"env": {
"TELEGRAM_API_ID": "12345678",
"TELEGRAM_API_HASH": "your_api_hash_here"
}
}
}
}选项C:克劳德桌面
添加 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"che-telegram-all-mcp": {
"command": "/path/to/.build/release/CheTelegramAllMCP",
"env": {
"TELEGRAM_API_ID": "12345678",
"TELEGRAM_API_HASH": "your_api_hash_here"
}
}
}
}环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
TELEGRAM_API_ID | 是 | 电报API ID(数字)。状态为时自动触发 waitingForParameters. |
TELEGRAM_API_HASH | 是 | 电报API散列(字符串)。汽车同时开火 TELEGRAM_API_ID. |
TELEGRAM_PHONE | 否 | 国际格式的电话号码(例如。, +886912345678).状态为时自动触发 waitingForPhoneNumber。适用于SSH/远程设置。 |
TELEGRAM_2FA_PASSWORD | 没有 | 2FA密码。状态为时自动触发 waitingForPassword. |
短信验证码为 从不 由环境自动触发——必须通过以下方式供应auth_run(code: "...")或auth_send_code(code: "...")一次性交付。 如果未设置env变量,您仍然可以通过手动驱动流auth_run(或每一步auth_set_parameters/auth_send_phone/auth_send_password工具)。
身份验证流程
身份验证是 一次性过程首次登录后,TDLib将会话存储在本地,您不需要再次进行身份验证。
推荐: auth_run (单个工具,重复直到准备就绪)
为您希望自动触发的步骤设置环境变量(TELEGRAM_API_ID / TELEGRAM_API_HASH / TELEGRAM_PHONE / TELEGRAM_2FA_PASSWORD),然后致电 auth_run 反复:
auth_run → fires auto-set params (if env present)
auth_run → fires auto-send phone (if env present)
auth_run(code: "12345") → caller MUST supply SMS code
auth_run → fires auto-send 2FA password (if env present)
auth_run → state == "ready"每次呼叫都会返回 {state, next_step, last_error}. next_step.required_args 告诉您下一个调用需要哪个arg。 last_error 表面自动火灾故障(例如。, FLOOD_WAIT_30).
传统:按步骤手动流程
Step 1: auth_set_parameters → Provide api_id and api_hash
Step 2: auth_send_phone → Provide your phone number (+886...)
Step 3: auth_send_code → Enter the code received in Telegram
Step 3b: auth_send_password → (Only if 2FA is enabled)
Done: auth_status → Should show {state: "ready", next_step: null}会话数据存储在: ~/Library/Application Support/che-telegram-all-mcp/tdlib/
工具(27)
身份验证(6)
| 工具 | 说明 |
|---|---|
auth_set_parameters | 设置API凭据(API_id+API_hash) |
auth_send_phone | 发送电话号码以开始身份验证 |
auth_send_code | 输入验证码 |
auth_send_password | 输入2FA密码(如果启用) |
auth_status | 检查当前身份验证状态 |
logout | 注销并清除会话 |
用户信息(3)
| 工具 | 说明 |
|---|---|
get_me | 获取您自己的个人资料 |
get_user | 获取任何用户的信息 |
get_contacts | 列出您的联系人 |
聊天操作(3)
| 工具 | 说明 |
|---|---|
get_chats | 列出最近的对话 |
get_chat | 获取聊天的详细信息 |
search_chats | 按姓名搜索聊天记录 |
留言(7)
| 工具 | 说明 |
|---|---|
get_chat_history | 读取消息历史记录(单页,薄包装) |
dump_chat_to_markdown | 将完整聊天记录导出到 .md 文件(自动分页+日期过滤器+发件人解析+Markdown格式)。写信给 output_path,返回摘要元数据。 |
send_message | 发送短信 |
edit_message | 编辑您的消息 |
delete_messages | 删除邮件 |
forward_messages | 转发邮件 |
search_messages | 在聊天中搜索 |
集团管理(7)
| 工具 | 说明 |
|---|---|
get_chat_members | 列出组成员 |
pin_message | 固定消息 |
unpin_message | 不愉快的消息 |
set_chat_title | 更改聊天标题 |
set_chat_description | 更改聊天描述 |
create_group | 创建新的基本组 |
add_chat_member | 向组中添加成员 |
读取状态(1)
| 工具 | 说明 |
|---|---|
mark_as_read | 将邮件标记为已读 |
用法示例
一旦通过身份验证,您可以向Claude询问以下问题:
- “显示我最近的聊天记录”
- “阅读我与约翰聊天的最后20条消息”
- 在团队组中搜索关于“会议”的消息
- “向家庭组发送‘我会迟到’”
- “将Alice的最后一条消息转发到我的已保存消息”
- “获取我的联系人列表”
- “扔掉我的聊天培鈞 从2026年4月1日到2026年04月15日
/tmp/pei-chun-chat.md" → 触发器dump_chat_to_markdown
将聊天转储到Markdown
这 dump_chat_to_markdown 该工具每次调用都会写入一个Markdown文件,并返回摘要元数据。面向AI的呼叫形状示例:
dump_chat_to_markdown({
"chat_id": 489601378,
"output_path": "/tmp/pei-chun-chat.md",
"max_messages": 5000, // optional, default 5000
"since_date": "2026-03-01", // optional
"until_date": "2026-04-15", // optional
"self_label": "我" // optional, default "我"
})响应(仅摘要元数据,无Markdown正文):
{
"path": "/tmp/pei-chun-chat.md",
"message_count": 327,
"date_range": { "since": "2026-03-01", "until": "2026-04-15" },
"senders": [{ "user_id": 12345, "display_name": "培鈞 徐" }, ...]
}输出Markdown格式(摘录):
# 對話:培鈞 徐 (chat_id=489601378)
匯出時間:2026-04-15 23:40:00 訊息數:327 since 2026-03-01 until 2026-04-15
---
## 2026-04-14
**14:32 我**:
到了嗎
**14:33 培鈞 徐**:
我隨時出發
**14:35 培鈞 徐**:
[photo]CLI:从命令行转储
同样的能力也通过 telegram-all history flags——适用于MCP外部的脚本编写和测试:
# Single page (original behavior, unchanged)
telegram-all history 489601378 --limit 50
# Auto-paginate and filter, print JSON
telegram-all history 489601378 --max-messages 5000 --since 2026-03-01 --until 2026-04-15
# Auto-paginate and dump to Markdown
telegram-all history 489601378 \
--max-messages 5000 \
--since 2026-03-01 \
--until 2026-04-15 \
--self-label "che" \
--dump-markdown /tmp/pei-chun-chat.md建筑
Sources/
├── CheTelegramAllMCP/
│ └── main.swift # Entry point
├── CheTelegramAllMCPCore/
│ └── Server.swift # MCP Server (27 tools + dispatch)
├── TelegramAllLib/
│ ├── TDLibClient.swift # TDLib wrapper (auth + all operations)
│ ├── MessageFilters.swift # Pagination + date-filter pure helpers
│ └── MarkdownExporter.swift # dump_chat_to_markdown orchestrator
└── telegram-all/
├── TelegramAllCLI.swift # ArgumentParser subcommands
└── AuthHelper.swift- TDLib 通过 TDLibKit 的 --Swift原生包装器
- 用于stdio传输的MCP SDK
- 会话已持续
~/Library/Application Support/
安全须知
- 此MCP的操作方式如下 您的个人Telegram帐户。它可以读取您的所有私人聊天记录。
- API凭据和会话仅存储在本地。
- 使用
logout如有需要,清除您的会话。 - 切勿与他人共享TDLib数据库目录。
许可证
麻省理工学院
