Provides comprehensive RSS feed management through FreshRSS, including article operations (list, read/unread, star/unstar), feed subscriptions, folder/label organization, and OPML import/export capabilities.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FreshRSS MCP Servershow my 10 most recent unread articles"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FreshRSS MCP Server
Model Context Protocol (MCP) server for interacting with a FreshRSS instance.
Features
Articles: list, filter, read/unread, star/unstar, mark‑all‑read
Feeds: list, subscribe, unsubscribe, rename, move between folders
Folders & labels: list, create via tagging, rename, delete
OPML: export/import subscriptions
Quick‑add: add a site URL and let FreshRSS discover the feed
Fever helpers: favicons, unread/starred ID lists
Requirements
Node.js 18+
FreshRSS with Google Reader API enabled
FreshRSS API password (Settings → Profile → API Management)
Installation
npm install -g @equaldepth/freshrss-mcp-serverUsage
Claude Desktop
{
"mcpServers": {
"freshrss": {
"command": "npx",
"args": ["@equaldepth/freshrss-mcp-server"],
"env": {
"FRESHRSS_URL": "https://your-freshrss-instance.com",
"FRESHRSS_USERNAME": "your-username",
"FRESHRSS_API_PASSWORD": "your-api-password"
}
}
}
}GitHub Copilot
{
"servers": {
"freshrss": {
"command": "npx",
"args": ["@equaldepth/freshrss-mcp-server"],
"env": {
"FRESHRSS_URL": "https://your-freshrss-instance.com",
"FRESHRSS_USERNAME": "your-username",
"FRESHRSS_API_PASSWORD": "your-api-password"
}
},
}
}Tools
Articles:
list_articlesmark_as_readmark_as_unreadstar_articlesunstar_articlesmark_all_as_read
Feeds:
list_feedssubscribeunsubscribeedit_feedexport_opmlimport_opmlquickadd_feed
Folders & labels:
list_folderslist_labelsadd_labelsremove_labelsrename_folderrename_labeldelete_folderdelete_label
Stats:
get_statsget_user_info
Favicons & sync (Fever API):
list_faviconsget_feed_faviconlist_unread_article_idslist_starred_article_ids
Examples
{ "name": "list_articles", "arguments": { "filter": "unread", "order": "newest", "count": 10 } }
{ "name": "list_articles", "arguments": { "state": "starred", "count": 5 } }
{ "name": "subscribe", "arguments": { "url": "https://example.com/feed.xml", "title": "Example", "category": "Tech" } }
{ "name": "edit_feed", "arguments": { "feedId": "1", "category": "Tech" } }
{ "name": "export_opml", "arguments": {} }Tool inputs are strictly validated; unknown fields error.
Development
npm run dev
npm run lint
npm run typecheck
npm run format
npm run buildLicense
MIT