mcpField
P
pp-marginalrevolution

pp-marginalrevolution

github.com/mvanhorn生产力2.1k53 次安装今天更新
代码仓库

关于 pp-marginalrevolution

此技能通过 Marginal Revolution Printing Press CLI 检查当前文章和 RSS 数据,适合需要只读访问近期帖子、作者、分类及外链的 Agent。

主要功能

  1. 01列出并筛选近期帖子
  2. 02搜索当前 Feed 文本
  3. 03阅读帖子并提取链接
  4. 04查看作者和分类数量
  5. 05使用面向 Agent 的 JSON 模式

适用场景

  1. 01浏览 Marginal Revolution 近期帖子
  2. 02查找匹配主题的 Feed 帖子
  3. 03检查作者或分类数量
  4. 04收集近期帖子的引用链接

MCP 相关

技能说明了如何安装并通过 Claude 注册 `marginalrevolution-pp-mcp` MCP 服务。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mvanhorn/printing-press-library --skill pp-marginalrevolution

安装后在 Claude Code 中输入/pp-marginalrevolution确认已加载。

详细介绍

Marginal Revolution - Printing Press CLI

前置条件:安装 CLI

此技能使用 marginalrevolution-pp-cli 二进制文件。**调用此技能中的任何命令前,必须确认 CLI 已安装。**如果尚未安装,请先安装:

  1. 通过 Printing Press 安装程序安装。在 macOS/Linux 上,二进制文件默认安装到 $HOME/.local/bin;在 Windows 上,默认安装到 %LOCALAPPDATA%\Programs\PrintingPress\bin:
    npx -y @mvanhorn/printing-press-library install marginalrevolution --cli-only
    
  2. 验证:marginalrevolution-pp-cli --version
  3. 确保报告的安装目录位于将调用此技能的 Agent/运行时的 $PATH 中。

如果 npx 安装失败(没有 Node、处于离线状态等),请改用 Go 直接安装(需要 Go 1.26.6 或更高版本):

go install github.com/mvanhorn/printing-press-library/library/media-and-entertainment/marginalrevolution/cmd/marginalrevolution-pp-cli@latest

如果安装后 --version 报告“command not found”,则运行时无法在 $PATH 中找到二进制文件目录。验证成功前,请勿运行技能命令。

何时使用此 CLI

当你需要获取最新的 Marginal Revolution 帖子、分类、作者、评论数或引用的外部链接,且不使用浏览器自动化时,请使用此 CLI。

何时不使用此 CLI

如果请求需要创建、更新、删除、发布、评论、点赞、邀请、订购、发送消息、预订、购买或更改远程状态,请勿启用此 CLI。此 CLI 仅提供用于检查、导出、同步和分析的只读命令。

命令参考

feed — 管理 feed

  • marginalrevolution-pp-cli feed — 返回当前的公开 RSS feed。该 feed 为 XML/RSS 格式,无需身份验证。

RSS 原生命令

  • marginalrevolution-pp-cli latest --limit 10 --json - 列出最新帖子
  • marginalrevolution-pp-cli latest --author Tyler --category Economics - 筛选最新帖子
  • marginalrevolution-pp-cli search "ai" --agent - 搜索当前 feed 中的标题、正文和分类文本
  • marginalrevolution-pp-cli read <url|guid|title> - 阅读当前 feed 中的帖子
  • marginalrevolution-pp-cli links --limit 5 - 提取最新帖子中的外部链接
  • marginalrevolution-pp-cli categories - 显示当前 feed 中的分类数量
  • marginalrevolution-pp-cli authors - 显示当前 feed 中的作者数量

范围说明

命令行客户端可以访问公开 RSS feed。在实现期间,Marginal Revolution 的 WordPress JSON API 和常规站内搜索 URL 均返回了 Cloudflare 浏览器验证页面,因此此 CLI 特意将搜索范围限定为当前 feed 中的帖子。

查找合适的命令

如果你知道要做什么,但不知道该用哪个命令,可以直接询问 CLI:

marginalrevolution-pp-cli which "<capability in your own words>"

which 会根据自然语言功能查询,从此 CLI 精选的功能索引中解析出最匹配的命令。退出代码 0 表示至少有一个匹配项;退出代码 2 表示没有足够可靠的匹配项——请改用 --help 或使用更具体的查询。

身份验证设置

无需身份验证。

运行 marginalrevolution-pp-cli doctor 来验证设置。

Agent 模式

为任意命令添加 --agent。它会展开为:--json --compact --no-input --no-color --yes。

  • 可管道处理 — JSON 输出到 stdout,错误输出到 stderr

  • 可筛选 — --select 会保留部分字段。点分路径可深入嵌套结构;数组会逐元素遍历。对于冗长 API,此功能对控制上下文大小至关重要:

    marginalrevolution-pp-cli feed --agent --select id,name,status
    
  • 可预览 — --dry-run 会显示请求,但不会发送

  • 适合离线使用 — 如果本地 SQLite 存储可用,同步/搜索命令可以使用该存储

  • 非交互式 — 不会请求输入,每项输入都是一个标志

  • 只读 — 不要将此 CLI 用于创建、更新、删除、发布、评论、点赞、邀请、订购、发送或其他会更改状态的请求

响应封装

从本地存储或 API 读取数据的命令会将输出封装在来源信息中:

{
  "meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
  "results": <data>
}

从 .results 中解析数据,并通过 .meta.source 判断数据来自实时来源还是本地。只有当 stdout 是终端时,才会将便于人类阅读的 N results (live) 摘要打印到 stderr;通过管道传输的使用者或 Agent 使用者在 stdout 上只会得到纯 JSON。

Agent 反馈

当你(或 Agent)发现这个 CLI 有什么不对劲时,请记录下来:

marginalrevolution-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
marginalrevolution-pp-cli feedback --stdin < notes.txt
marginalrevolution-pp-cli feedback list --json --limit 10

条目会存储在本地 ~/.marginalrevolution-pp-cli/feedback.jsonl 中。只有在设置了 MARGINALREVOLUTION_FEEDBACK_ENDPOINT,并且传入 --send 或设置了 MARGINALREVOLUTION_FEEDBACK_AUTO_SEND=true 时,才会 POST 发送。默认行为仅在本地保存。

写下令你感到意外的事,而不是提交错误报告。简短、具体,一行即可:这正是不断累积价值的关键。

输出传递

每条命令都接受 --deliver <sink>。输出会写入指定的接收端,同时输出到 stdout,或替代 stdout 输出,这样 Agent 无需手动通过管道传输即可路由命令结果。支持三种接收端:

接收端效果
stdout默认;仅写入 stdout
file:<path>将输出原子性地写入 <path>(临时文件 + 重命名)
webhook:<url>将输出正文 POST 到该 URL(当使用 --compact 时,使用 application/json 或 application/x-ndjson)

遇到未知方案时会拒绝执行,并返回列出支持方案的结构化错误。Webhook 失败时会返回非零状态码,并在 stderr 中记录 URL 和 HTTP 状态码。

命名配置

配置是已保存的一组标志值,可在多次调用中重复使用。当定时运行的 Agent 每次都以相同配置调用同一命令时,可使用此功能——即 HeyGen 的 “Beacon” 模式。

marginalrevolution-pp-cli profile save briefing --json
marginalrevolution-pp-cli --profile briefing feed
marginalrevolution-pp-cli profile list --json
marginalrevolution-pp-cli profile show briefing
marginalrevolution-pp-cli profile delete briefing --yes

显式标志始终优先于配置值;配置值优先于默认值。agent-context 会在 available_profiles 下列出所有可用配置,让 Agent 在运行时发现它们。

退出代码

代码含义
0成功
2用法错误(参数错误)
3未找到资源
5API 错误(上游问题)
7触发速率限制(等待后重试)
10配置错误

参数解析

解析 $ARGUMENTS:

  1. 为空、help 或 --help → 显示 marginalrevolution-pp-cli --help 输出
  2. 以 install 开头 → 以 mcp 结尾 → 安装 MCP;否则 → 参阅上方的先决条件
  3. 其他任何内容 → 直接使用(作为 CLI 命令执行,并加上 --agent)

MCP 服务安装

从此 CLI 发布的公共库条目或预构建版本安装 MCP 二进制文件,然后注册它:

claude mcp add marginalrevolution-pp-mcp -- marginalrevolution-pp-mcp

验证:claude mcp list

直接使用

  1. 检查是否已安装:which marginalrevolution-pp-cli 如果未找到,则提供安装选项(参阅此技能顶部的先决条件)。
  2. 根据用户查询,从上方的独特功能和命令参考中选择最合适的命令。
  3. 使用 --agent 标志执行:
    marginalrevolution-pp-cli <command> [subcommand] [args] --agent
    
  4. 如果存在歧义,可查看子命令帮助:marginalrevolution-pp-cli <command> --help。

评论

支持 Markdown