mcpbeat

Papr Rss Agent Skill

>- Read, search and triage the user's Papr RSS subscriptions from the shell via the `papr` CLI. Use when the user wants to catch up on their feeds, find or summarize articles they've subscribed to, check what's unread, star/save my feeds", "any unread RSS", "summarize this feed", "search my subscriptions for X", "mark these read", "subscribe to <url>", "refresh my feeds".

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
494
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/l0ng-ai/papr --skill papr-rss

The instruction itself

6 sections, as written by the author

Papr RSS CLI

papr is a token-efficient, agent-facing CLI over the user's local Papr RSS

database. It emits TOON on stdout (≈40% cheaper than

JSON, via the official toon-format encoder), keeps diagnostics on stderr, and

returns structured errors with exit codes (0 success/no-op, 1 runtime, 2 usage). Reads are token-minimal by default;

long article bodies are truncated with a --full escape hatch.

Run papr with no arguments first — it prints the unread dashboard plus the

most useful next commands, so you can orient without reading a manual.

Core flow

papr                        # home: unread/starred counts + recent unread + next steps
papr feeds                  # subscriptions grouped by folder, with unread counts
papr list --feed <id>       # articles in a feed (defaults to unread; --all for read too)
papr list --starred         # smart views: --starred / --later / --tag <id> / --folder <id>
papr list --fields author,url   # add columns: author,url,snippet,type,feed_id,published
papr read <id> [<id>...]    # plain-text body, truncated; pass several ids to batch
papr read --feed <id> --unread --limit 5   # read a feed's latest unread in one call
papr read <id> --full       # the complete body when truncation hid something
papr search "<query>"       # FTS5 full-text search across every article

Triage & subscriptions

papr mark read <id> [<id>...]      # state: read|unread|star|unstar|later|unlater (idempotent)
papr mark-all --feed <id>          # mark a whole view read
papr subscribe <url>               # auto-discovers the feed, inserts it, fetches it
papr refresh [--feed <id>]         # fetch new articles over the network (RSS + newsletters)
papr extract <id>                  # fetch & store the cleaned full text of an article

Management (mirrors the desktop app)

papr tags | papr tag add <tag_id> <article_id> | papr tag create "<name>"
papr folders | papr folder create "<name>" | papr feed move <id> --folder <id>
papr rules | papr rule create "<name>" "<keywords>" --action star
papr highlights [--article <id>] | papr highlight create <article_id> "<quote>"
papr newsletters | papr newsletter add --title .. --host .. --user .. --password ..
papr opml import <file> | papr opml export
papr settings get <key> | papr settings set <key> <value>
papr stats

Sync

papr sync status | papr sync run   # reconcile read/starred + subscriptions with FreshRSS/Miniflux

There are no summarize/ask/digest/translate commands: you are the language

model, so read the text with papr read <id> (or gather candidates with

papr search) and summarize, answer or translate it yourself — no second AI

provider is involved.

Destructive verbs require --yes; without it they fail with exit 2 and tell you

the exact command to re-run:

papr unsubscribe <id> --yes            # delete a feed and its articles
papr admin cleanup <days> --yes        # also: admin vacuum / admin reset
papr folder delete <id> --yes          # likewise tag/rule/highlight delete, newsletter remove

Notes

  • Every command takes --db <path> (or the PAPR_DB env var) if the database

is not in the desktop app's default location.

  • Output is data, not prose. Each list states a definitive total

(count: N of M unread) so you never need to paginate just to learn the size.

  • If the answer is "nothing", the command says so explicitly — a zero is an

answer, not a reason to retry with different flags.

  • Prefer the ambient SessionStart hook (papr setup) so the unread dashboard is

already in context at the start of a conversation; this skill is the

lower-overhead alternative that loads only when a feed task comes up.

Other skills for the same job

different authors, same section of the catalogue
MCP Builder
by anthropics
vendor ×13

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

30k tokens scripts
Changelog Generator
by frostant
×9

Automatically creates user-facing changelogs from git commits by analyzing commit history, categorizing changes, and transforming technical commits into clear, customer-friendly release notes. Turns hours of manual changelog writing into minutes of automated generation.

774 tokens
Finishing A Development Branch
by ZhanlinCui
×7

Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup

1k tokens
MCP Builder
by JayZeeDesign
×7

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

37k tokens scripts
Vercel React Native Skills
by vercel-labs
vendor ×6

React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.

39k tokens
Vercel React Best Practices
by ratacat
×5

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

34k tokens
Next Best Practices
by vercel-labs
vendor ×4

Next.js best practices - file conventions, RSC boundaries, data patterns, async APIs, metadata, error handling, route handlers, image/font optimization, bundling

20k tokens
Using Git Worktrees
by ZhanlinCui
×4

Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification

1k tokens

How to use it

Copy the folder

Take l0ng-ai/papr-rss from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.