FreshRSS MCP Server
A Model Context Protocol server for interacting with FreshRSS feeds via the Fever API.
This TypeScript-based MCP server allows AI assistants to interact with your FreshRSS instance, enabling them to:
- List and browse your RSS feeds
- Fetch unread items
- Mark items as read/unread
- Get items from specific feeds
Features
Tools
list_feeds- List all feed subscriptionsget_feed_groups- Get feed groupsget_unread- Get unread itemsget_feed_items- Get items from a specific feedmark_item_read- Mark an item as readmark_item_unread- Mark an item as unreadmark_feed_read- Mark all items in a feed as readget_items- Get specific items by their IDs
Requirements
- A running FreshRSS instance with API access enabled
- API endpoint URL, username, and password for your FreshRSS instance
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Environment Variables
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 usernameFRESHRSS_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
{
"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:
{
"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"
}
}
}
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Security Note
This server requires your FreshRSS credentials. For security:
- Never commit your credentials to version control
- Always use environment variables for sensitive information
- Consider using a dedicated FreshRSS account with appropriate permissions
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! See CONTRIBUTING.md for details.
Recommend MCP Servers 💡
claude-post
ClaudePost is an MCP server that enables seamless email management through natural language conversations with Claude, offering secure features like email search, reading, and sending.
oxylabs-mcp
The Oxylabs MCP server acts as a bridge between AI models and the real-world web, enabling them to scrape any URL, render JavaScript-heavy pages, extract and format content for AI use, bypass anti-scraping measures, and access geo-restricted web data from 195+ countries.
@johnpapa/mcp-starwars
An MCP server that integrates with the SWAPI Star Wars API to provide access to Star Wars characters, planets, films, species, vehicles, and starships data, demonstrating MCP server interaction with external APIs.
mcp-server-chatsum
Query and Summarize your chat messages.
rustdocs_mcp_server
🦀 Prevents outdated Rust code suggestions from AI assistants. This MCP server fetches current crate docs, uses embeddings/LLMs, and provides accurate context via a tool call.
xgmem
A TypeScript-based MCP server for project-specific and knowledge graph-based memory management for LLMs and agents.