NewsBlur 三件套实战指南:CLI 命令行工具、AI Skill 与 MCP Server 完整接入手册

发布时间:2026/9/29 6:37:36
NewsBlur 三件套实战指南:CLI 命令行工具、AI Skill 与 MCP Server 完整接入手册 后端前端社交人工智能【免费下载链接】NewsBlurNewsBlur is a personal news reader that brings people together to talk about the world. A new sound of an old instrument.项目地址https://gitcode.com/gh_mirrors/ne/NewsBlur点击查看免费下载本文基于 NewsBlur 官方博客发布的技术公告《The NewsBlur CLI Tool, AI Skill, and MCP Server》整理并扩充。NewsBlur 一直以 REST API 驱动其 Web、iOS 与 Android 全端产品本文介绍的三件新工具终端 CLI、AI 技能、MCP 服务器把同样的能力下沉到终端与 AI Agent 生态中。读完本文你将掌握三者的安装、登录、常用命令、配置方式与安全设计并能依据自己的工具链终端脚本、Claude Code、Claude Desktop、Codex、Cursor、Windsurf选择最合适的接入方案。背景为什么 NewsBlur 需要三件新工具NewsBlur 的每一项功能Web 应用、iOS 应用、Android 应用都运行在其统一的 API 之上但 API 是面向开发者的。为了让普通用户、脚本编写者和 AI Agent 都能直接操作账户官方一次性发布了三种互补的交互方式CLI 工具——把整个 NewsBlur 放进终端适合脚本化与日常操作AI Skill——教 AI Agent 学会 CLI 的每个命令上下文窗口占用极低MCP Server——把任何 MCP 兼容的 AI Agent 直接连接到你的 NewsBlur 账户。三者共享同一个核心约束需要 Premium Archive 或 Premium Pro 订阅 才能使用。首次使用时会弹出浏览器窗口进行 OAuth 授权令牌保存在本地你可以随时在账户中撤销访问权限。在仓库中这三者的实现集中在 newsblur_mcp/ 目录CLI 与 MCP Server 打包在同一个名为newsblur-cli的 Python 发行版中参见 pyproject.tomlAI Skill 则以独立技能包形式分发。快速上手三种接入方式的开箱体验CLI 工具——安装并登录uv pip install newsblur-cli newsblur auth loginAI Skill——安装到 Claude Code、Cursor、Windsurf 或任何兼容 Skills 标准的工具npx skills add samuelclay/newsblur-cli-skillMCP Server——从 Claude Code、Claude Desktop、Codex 或任何 MCP 客户端连接claude mcp add --transport http newsblur https://newsblur.com/mcp/三条命令全部就绪后你就能在终端里读订阅源、让 AI 代理帮你管理故事与分类器或把账户直接暴露给任意 MCP 客户端。CLI 工具把整个 NewsBlur 搬进终端CLI 由 newsblur_mcp/newsblur_mcp/cli/init.py 定义基于 Typer 框架构建。入口脚本在 pyproject.toml 中注册为newsblur newsblur_mcp.cli:app。命令按功能划分为 7 个命令组auth、stories、feeds、actions、train、discover以及顶层快捷命令account/briefing/read/save/unsave/share覆盖了你在 NewsBlur 中能做的几乎所有操作。完整命令清单见仓库内 newsblur_mcp/README.md。读取故事从订阅源、文件夹或全量newsblur stories list # 未读故事 newsblur stories list --folder Tech --limit 5 # 按文件夹过滤 newsblur stories search machine learning # 全文搜索 newsblur stories saved --tag research # 按标签查看已保存故事 newsblur stories infrequent # 低频更新订阅源的故事 newsblur stories original 123:abc456 # 抓取文章原文全文各子命令的底层实现可以在 newsblur_mcp/newsblur_mcp/cli/commands/stories.py 中追踪stories list支持--folder、--feed逗号分隔的 feed ID、--filterunread/all/focus/starred、--order、--page、--limit默认 12上限 50等参数stories original通过/rss_feeds/original_text接口获取原文并用html_to_text转换。从源码结构看CLI 与 MCP Server 复用了同一套_get_stories、_get_saved_stories、_search_stories等核心函数位于 newsblur_mcp/newsblur_mcp/tools/stories.py因此两者行为一致。获取 AI 策展的每日简报newsblur briefing # 今日简报 newsblur briefing --limit 1 # 只要最新一条 newsblur briefing --json # 结构化输出briefing默认返回 5 条简报可通过--limit调整使用render_briefing渲染见 stories.py。管理订阅源与文件夹newsblur feeds list # 全部订阅 newsblur feeds folders # 带计数的文件夹树 newsblur feeds add https://example.com # 订阅 newsblur feeds add https://blog.com -f Tech # 订阅到指定文件夹 newsblur feeds remove 42 # 退订 newsblur feeds organize move_feed --feed-id 42 --from News --to Tech对故事执行操作newsblur save 123:abc --tag ai --tag research # 保存并打标签 newsblur unsave 123:abc # 取消保存 newsblur read --feed 42 # 将某订阅源全部标记为已读 newsblur share 123:abc --comment Worth reading训练智能分类器newsblur train show --feed 42 # 查看当前训练规则 newsblur train like --feed 42 --author Name # 训练喜欢 newsblur train dislike --feed 42 --tag sponsor # 训练不喜欢发现新订阅源newsblur discover search machine learning # 按主题搜索 newsblur discover similar --feed 42 # 找相似订阅源 newsblur discover trending # 热门订阅源输出格式与自托管支持每个命令都支持--json结构化输出可直接接jq或用于脚本和--raw纯文本另有全局--server标志指向自托管 NewsBlur 实例newsblur --server https://my-newsblur.example.com auth login newsblur briefing --json | jq .items[0].section_summaries--server地址会持久化到~/.config/newsblur/config.json见 newsblur_mcp/README.md 与 newsblur_mcp/newsblur_mcp/cli/auth.py后续命令无需重复指定。OAuth 登录的底层原理newsblur auth login走的是 gh-auth-login 风格的本地回调流程auth.py在127.0.0.1的随机端口启动临时 HTTP 服务器 → 打开浏览器跳转/oauth/authorize/client_idnewsblur-cli、scopereadwrite→ 回调捕获授权码 → 在/oauth/token/换发 access token → 以0600权限保存到~/.config/newsblur/auth.json。令牌过期后会自动用 refresh token 刷新登录回调最长等待 120 秒。AI Skill教你的 Agent 学会每个命令且不烧光上下文窗口CLI 本身已经很强大但当你把命令交给 AI Agent 时还要让它知道有哪些命令可用。NewsBlur CLI Skill 正是为此而生它向 Agent 提供完整的命令参考——每个子命令、每个标志、每种输出格式。一条命令即可安装之后 Agent 就能替你读订阅源、搜索故事、训练分类器、管理订阅。npx skills add samuelclay/newsblur-cli-skillnpx skills add兼容任何支持 Skills 标准的工具Claude Code、Cursor、Windsurf 以及更多。仓库中技能相关文档与 CLI 包同源CLI 能力的完整描述见 newsblur_mcp/README.md。Skill 相对 MCP Server 的最大优势是上下文效率。MCP Server 返回的原始 JSON 会直接进入 Agent 的上下文窗口查询一次已保存的 ESP32 故事就会烧掉将近 40,000 个 token而 Skill 改为运行 CLI返回的是干净、格式化的文本。同一查询、同样结果token 消耗约为三分之一。官方测试数据MCP Server 查询已保存故事消耗39,553 tokens经 Skill 走同一查询仅消耗11,735 tokens。因此选择策略很清晰工具支持 Skills →用 Skill上下文效率更高只支持 MCP →用 MCP Server只想在终端脚本化操作 NewsBlur →直接用 CLI。MCP Server把账户直接接入任意 MCP 客户端MCPModel Context Protocol是一个开放标准让 AI Agent 连接外部工具与数据。通过 NewsBlur MCP ServerClaude、Codex、Cursor、Windsurf 以及任何 MCP 兼容 Agent 都能读你的订阅源、管理故事、训练分类器、整理订阅。22 个工具四大能力域服务端暴露22 个工具覆盖你在 NewsBlur 中的全部日常操作Reading阅读——列出带未读计数的订阅源与文件夹从任意订阅源、文件夹或全部订阅一次性加载故事按 unread/focus/starred 过滤跨整个存档全文搜索抓取原文全文获取 AI 每日简报浏览低频更新订阅源的故事。Actions操作——按 hash、按订阅源、按文件夹标记已读保存故事支持标签、笔记、高亮订阅与退订在文件夹间移动订阅源重命名订阅源与文件夹分享故事到你的 Blurblog。Intelligence智能——查看全部订阅源的已训练分类器按作者、标签、标题或正文训练喜欢/不喜欢支持完整训练级别包括可覆盖所有正向得分的新增super dislike超级不喜欢。Discovery发现——按主题搜索新订阅源查找与已关注订阅源相似的源浏览热门订阅源。客户端配置示例Claude Code命令行方式claude mcp add --transport http newsblur https://newsblur.com/mcp/Claude Desktop在claude_desktop_config.json中加入{ newsblur: { type: http, url: https://newsblur.com/mcp/ } }Codex、Cursor 与 Windsurf 各有自己的配置格式全部客户端设置说明详见 newsblur_mcp/README.md。服务端实现要点从 newsblur_mcp/newsblur_mcp/server.py 可以看到服务端基于FastMCP构建以streamable-http传输协议运行默认监听0.0.0.0:8099端口由 settings.py 中MCP_PORT环境变量控制。请求鉴权通过 OAuth 中间件完成get_client()从请求上下文的AuthenticatedUser.access_token提取上游 Django OAuth 令牌测试场景也可回退到Authorization: Bearer头再用 newsblur_mcp/newsblur_mcp/client.py 中的NewsBlurClient调用 NewsBlur API。工具函数统一包了请求日志与用量上报log_request/record_mcp_usage并集成了 Sentry 错误追踪。全部工具定义分布在 tools/ 下的account、actions、archive、briefing、classifiers、discovery、feeds、notifications、social、stories十个模块中配套测试覆盖见 newsblur_mcp/tests/如 test_stories.py、test_actions.py、test_server.py。Readonly 模式给 AI 加一道不可绕过的护栏把 AI Agent 接入账户固然强大但你可能想先从护栏开始。CLI 提供 readonly 模式阻断一切写操作不保存、不分享、不训练、不订阅、不标记已读。Agent 可以读订阅源、搜索故事但改不了任何东西。newsblur auth readonly --on开启后任何写命令都会返回错误而不是执行。关键在关闭它的那一刻关闭只读模式会把你登出并强制你在浏览器里重新授权newsblur auth readonly --off # You have been logged out and must re-authenticate. newsblur auth login这是刻意为之的设计。从源码看auth.py 中的set_readonly当readonly被设为False时会同步delete_token()删除本地令牌——AI Agent 无法静默关闭只读然后开始写操作只有坐在浏览器前的人类才能重新授权写权限。如果你把 CLI 交给 Agent 并希望它始终保持只读它就会保持只读。newsblur auth status会显示当前账户、套餐等级Free/Premium/Archive/Pro、订阅数与只读状态便于随时核对。可用性与选择建议CLI、AI Skill 与 MCP Server 现已面向Premium Archive 与 Premium Pro 订阅用户开放完整文档见 newsblur_mcp/README.md。三者的取舍可以简单归纳为场景推荐方案理由终端脚本、jq 管道、自动化CLI命令丰富、--json/--raw输出适合管道与脚本支持 Skills 的 AI 工具Claude Code 等AI Skill上下文效率约为 MCP 的三分之一仅支持 MCP 的客户端MCP Server22 个工具覆盖全部核心操作给 Agent 只读访问CLI readonly关闭只读必须人工重新登录不可静默绕过值得一提的是若你想自托管整套环境docker-compose.yml 与 newsblur_mcp/Dockerfile 提供了部署线索而 MCP 的 OAuth 相关环境变量MCP_OAUTH_CLIENT_ID、MCP_OAUTH_INTERNAL_URL等在 settings.py 中均有默认值可结合自托管实例按需覆盖。赞分享后端前端社交人工智能【免费下载链接】NewsBlurNewsBlur is a personal news reader that brings people together to talk about the world. A new sound of an old instrument.项目地址https://gitcode.com/gh_mirrors/ne/NewsBlur点击查看免费下载相关推荐老 iPhone 还能怎么榨干palera1n 从克隆到越狱的完整实操路径老 iPhone 还能怎么榨干palera1n 从克隆到越狱的完整实操路径 palera1n 是一个基于 checkm8 硬件漏洞的 iOS 越狱工具覆盖CLI固件electron-vite CLI工具详解命令行接口的完整使用手册electron vite CLI工具详解命令行接口的完整使用手册 electron vite CLI工具是新一代基于Vite的Electron开发构建工具的开发工具构建工具CLIArthas MCP Server 完全接入指南通过 MCP 协议让 AI 助手直接执行 Java 诊断命令Arthas MCP Server 完全接入指南通过 MCP 协议让 AI 助手直接执行 Java 诊断命令 Arthas MCP Server 是 Arth开发工具可观测性调试器性能剖析上一篇Ultra-Light-Fast-Generic-Face-Detector-1MB核心解析1MB如何实现实时人脸检测下一篇全面掌握API管理工具自动化文档生成实战指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考