A Model Context Protocol server for interacting with FreshRSS feeds via the Fever API
npm install freshrss-mcp-serverlist_feeds - List all feed subscriptions
get_feed_groups - Get feed groups
get_unread - Get unread items
get_feed_items - Get items from a specific feed
mark_item_read - Mark an item as read
mark_item_unread - Mark an item as unread
mark_feed_read - Mark all items in a feed as read
get_items - Get specific items by their IDs
bash
npm install
`
Build the server:
`bash
npm run build
`
For development with auto-rebuild:
`bash
npm run watch
`
$3
You need to set the following environment variables:
- FRESHRSS_API_URL: URL to your FreshRSS instance (e.g., "https://rss.example.com")
- FRESHRSS_USERNAME: Your FreshRSS username
- FRESHRSS_PASSWORD: Your FreshRSS password
Installation
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
`json
{
"mcpServers": {
"freshrss": {
"command": "node",
"args": ["/path/to/freshrss-server/build/index.js"],
"env": {
"FRESHRSS_API_URL": "https://your-freshrss-instance.com",
"FRESHRSS_USERNAME": "your-username",
"FRESHRSS_PASSWORD": "your-password"
}
}
}
}
`
For Cline MCP integration, add to your MCP settings:
`json
{
"mcpServers": {
"freshrss": {
"command": "node",
"args": ["/path/to/freshrss-server/build/index.js"],
"env": {
"FRESHRSS_API_URL": "https://your-freshrss-instance.com",
"FRESHRSS_USERNAME": "your-username",
"FRESHRSS_PASSWORD": "your-password"
}
}
}
}
`
$3
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
`bash
npm run inspector
``