Author avatar

mcp_rss

by buhe

Server

Tags

4.8 (120)

MCP 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

{
  "key": "rss",
  "command": "npx",
  "args": [
    "mcp_rss"
  ],
  "env": {
    "OPML_FILE_PATH": "/Users/guyanhua/feeds.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

Related Services

playwright-mcp

Server

4.8 (120)
View Details →

blender-mcp

Server

4.8 (120)
View Details →

tavily-mcp

Server

4.8 (120)
View Details →