About MCP RSS
MCP RSS is an MCP server for working with RSS feeds. It imports subscriptions from OPML files, fetches articles automatically and exposes the content through MCP. It suits users who want an AI assistant to read their feed subscriptions, and it requires a MySQL database.
Key features
- 01Imports RSS subscriptions from OPML files
- 02Fetches and updates articles automatically
- 03Exposes article content through MCP
- 04Marks articles as favorites
- 05Filters articles by source and status
Use cases
- 01Letting an AI assistant read and organize feed content
- 02Filtering feed articles by source or status
MCP support
This project is an MCP server that provides feed sources and article data to MCP clients through tools such as get_sources and set_tag.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMCP RSS
MCP RSS is a Model Context Protocol (MCP) server for interacting with RSS feeds.
Features
- Parse OPML files to import RSS feed subscriptions
- Automatically fetch and update articles from RSS feeds
- Expose RSS content through MCP API
- Mark articles as favorites
- Filter articles by source and status
Installation
Prerequisites
- Node.js (v14 or higher)
- MySQL database
Setup MySQL
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
Install MCP
This MCP uses stdio for communication. Fill in npx mcp_rss in the command, fill in the configuration that needs to be customized in the environment variable, and at least use your own opml file.
Use in claude desktop
{
"command": "npx",
"args": [
"mcp_rss"
],
"env": {
"OPML_FILE_PATH": "/PATH/YOUR_FEED_FILE.opml"
}
}
Configuration
Set the following environment variables to configure MCP RSS:
Configuration Options
| Option | Description | Default Value |
|---|---|---|
| DB_HOST | Database host | localhost |
| DB_PORT | Database port | 3306 |
| DB_USERNAME | Database username | root |
| DB_PASSWORD | Database password | 123456 |
| DB_DATABASE | Database name | mcp_rss |
| OPML_FILE_PATH | Path to your OPML file with RSS feeds | "./feeds.opml" |
| RSS_UPDATE_INTERVAL | Interval to fetch RSS updates (in minutes) | 1 |
MCP API Reference
The MCP RSS server exposes the following API methods:
get_content
Get articles from subscribed RSS feeds.
Parameters:
| Parameter | Type | Description | Required |
|---|---|---|---|
| status | string | Filter by article status ("normal" or "favorite") | No |
| source | string | Filter by source (feed title) | No |
| limit | number | Maximum number of articles to return | No (default: 10) |
Response:
{
"articles": [
{
"id": 1,
"title": "Article Title",
"content": "Article content...",
"link": "https://example.com/article",
"pubDate": "2023-01-01T12:00:00Z",
"fetchDate": "2023-01-01T12:30:00Z",
"status": "normal",
"feedTitle": "Example Feed",
"feedCategory": "Technology"
}
],
"success": true
}
get_sources
Get all available RSS feed sources.
Parameters: None
Response:
{
"sources": [
{
"id": 1,
"title": "Example Feed",
"category": "Technology"
}
],
"success": true
}
set_tag
Set the status of an article (normal or favorite).
Parameters:
| Parameter | Type | Description | Required |
|---|---|---|---|
| status | string | Article status ("normal" or "favorite") | Yes |
| articleId | number | ID of the article to update | Yes |
Response:
{
"success": true,
"message": "Article 1 status has been updated to favorite"
}
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.
