runesleo/x-reader
Universal content reader MCP Server for 10+ platforms
什么是 x‑reader?
x‑reader 是一个基于 Python 的 Agent 技能 和命令行工具,用于获取 URL 背后的实际内容——而不仅仅是搜索引擎或社交媒体平台显示的预览。它支持多种在线来源(X/Twitter、YouTube、播客、微信、RSS 等),并告知 AI 代理完整来源是否已读取、仅部分读取或无法获取。
工作原理
- URL → 平台特定抓取器 – 每个支持的站点都有一个小模块(例如
twitter.py、youtube.py),知道如何检索规范来源:通过 oEmbed 获取推文文本、通过yt‑dlp获取 YouTube 字幕、Bilibili 字幕等。 - 证据契约 – 抓取后,工具返回四种状态之一:
PASS– 已读取回答所需的所有内容。PARTIAL– 某些媒体层(视频、音频、字幕)缺失。FAIL– 页面无法可靠获取。UNKNOWN– 获取的材料不明确。
- CLI / JSON 输出 –
x-reader <url>打印简短的人类可读摘要;添加--json提供机器可读的有效载荷,供 AI 代理使用。 - 可选的 MCP 服务器 – 一个轻量级 HTTP 服务器(
mcp_server.py)暴露相同的功能(read_url、detect_platform等),以便 Claude Code 等代理可以远程调用该工具。
为什么“来源优先”很重要
代理通常通过引用搜索片段或推文标题来回答问题,这可能忽略关键媒体(视频、字幕、付费文本)。x‑reader 使差距明确化,防止幻觉,并让用户确切知道有哪些证据可用。
主要功能(如 README 中所述)
| 功能 | 描述 |
|---|---|
| 多平台支持 | X/Twitter、YouTube、Bilibili、微信、小红书、Telegram、RSS、通用网页文章、Apple Podcasts 等。 |
| 媒体处理 | 检索附加视频、字幕,并可使用 Groq Whisper(whisper‑large‑v3)转录音频。 |
| CLI | x-reader <url> 用于快速检查;x-reader doctor 用于自测;--json 用于结构化输出。 |
| Agent 技能 | 可通过 npx skills add runesleo/x-reader --skill x-reader 安装;该技能无需安装即可列出。 |
| MCP 服务器 | 可选的 FastMCP 兼容服务器,用于远程调用(x-reader-mcp)。 |
| 安全模型 | 将所有获取的数据视为不可信,绝不执行,并隔离 cookie,除非明确选择加入。 |
| 可扩展的 Python 库 | UniversalReader 类,支持编程使用(await reader.read(url))。 |
| 证据契约 | 每次抓取都明确给出 PASS / PARTIAL / FAIL / UNKNOWN 状态。 |
谁可能使用它?
- AI 代理开发者 – 需要可靠方法来证明模型在回答前确实查阅了原始来源。
- 研究人员 – 构建检索增强生成管道,必须跟踪哪些媒体层被消费。
- 高级用户 – 想要一个 CLI 来下载并验证推文、视频或文章的完整内容。
安装快照
# 直接从仓库安装 CLI
pip install "x-reader @ git+https://github.com/runesleo/x-reader.git"
# 可选的浏览器回退(Playwright)和媒体工具
pip install "x-reader[browser] @ git+https://github.com/runesleo/x-reader.git"
playwright install chromium
许可证
MIT – 免费用于个人和商业用途。
以上所有细节均直接取自仓库的 README;未推断任何额外功能。
相关
- 项目
- 项目
- 项目
- 项目
- 项目