Skip to main content
Glama
luutuankiet

FreshRSS MCP Server

by luutuankiet

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
freshrss_authenticateA

Authenticate with FreshRSS instance and save credentials to environment for subsequent calls.

Uses provided parameters or falls back to environment variables:

  • FRESHRSS_URL

  • FRESHRSS_EMAIL

  • FRESHRSS_API_PASSWORD

freshrss_get_tokenA

Get edit token for write operations. Usually called automatically when needed.

freshrss_list_foldersB

List all folders/categories/tags in FreshRSS.

freshrss_list_subscriptionsA

List all subscribed feeds with their folders.

freshrss_get_unread_countA

Get unread counts by feed and folder.

freshrss_get_articlesC

Fetch articles with various filters.

freshrss_mark_readC

Mark articles as read.

freshrss_mark_unreadC

Mark articles as unread.

freshrss_mark_stream_readA

Mark all articles in a stream/folder as read in one call.

MUCH more efficient than marking individual articles. Use 'all' to mark everything, or a folder name like 'tech', 'ML', 'security'.

Common pattern: mark_stream_read(all) then mark_unread([5 keeper IDs]).

freshrss_star_articleC

Star articles.

freshrss_unstar_articleC

Unstar articles.

freshrss_add_labelC

Add label to articles.

freshrss_subscribeB

Subscribe to a new feed.

freshrss_unsubscribeB

Unsubscribe from a feed.

freshrss_get_headlinesA

Get article headlines only — ultra token-efficient.

Returns only: id, title, feed_title, folder, published, url. ~10x fewer tokens than get_articles. Use this for scanning/triage, then call get_article_detail for articles you want to read in full.

freshrss_get_article_detailA

Get full content for specific articles by ID.

Use after scanning headlines to deep-dive into interesting articles. Max 10 articles per call to control token usage.

freshrss_get_diverse_digestA

Get a category-balanced digest of recent unread articles.

Fetches N articles from EACH category to ensure topic diversity. Returns headlines only (token-efficient). Use get_article_detail to deep-dive into selected articles.

This is the primary tool for daily curation — ensures you see security, business, world news, etc., not just AI/ML.

freshrss_get_digest_compactA

Get an ultra-compact category-balanced digest as plain text.

Returns ~10 tokens per article vs ~100 for JSON format. Each line: [short_id] Title (Feed) Grouped by category with counts.

Designed for agent curation workflows where token efficiency matters. After selecting articles, use mark_stream_read + mark_unread to keep only your picks.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 18 tools

Disambiguation4/5

Most tools have clearly distinct purposes, especially the write operations (mark_read vs mark_stream_read, star vs unstar). However, the five article retrieval tools (get_articles, get_headlines, get_article_detail, get_diverse_digest, get_digest_compact) overlap considerably; their descriptions distinguish use cases well, but an agent could still confuse get_diverse_digest with get_digest_compact or get_articles with get_headlines.

Naming Consistency5/5

All tools follow a consistent freshrss_verb_noun pattern, e.g., list_folders, subscribe, mark_read, get_article_detail. Even compound nouns like stream_read and digest_compact are consistently formatted with underscores. The naming is predictable and uniform across the entire set.

Tool Count4/5

18 tools is slightly above the ideal range but justified for a full-featured RSS reader covering authentication, subscription management, article retrieval, read/unread/star/label operations, and summaries. A few tools like get_token are auxiliary and could be implicit, but the count is not excessive for the scope.

Completeness4/5

The surface covers core FreshRSS workflows well: authentication, subscribe/unsubscribe, listing folders/subscriptions, fetching articles with various token-efficiency levels, and marking read/unread/starred/labeled. Minor gaps include no folder creation/deletion/renaming and no subscription update (e.g., moving feeds between folders), but these are not critical for typical agent curation workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues