MCP ExplorerExplorer

Rss Reader Server

@tanevanwifferenon 15 days ago
1 MIT
FreeCommunity
AI Systems
Simple RSS reader MCP Server

Overview

What is Rss Reader Server

rss-reader-server is a TypeScript-based MCP server designed to fetch and parse RSS and Atom feeds from specified URLs, providing structured data extraction capabilities.

Use cases

Use cases for rss-reader-server include building a news aggregator, integrating RSS feeds into web applications, and automating content updates from various sources.

How to use

To use rss-reader-server, install the necessary dependencies using ‘npm install’, build the server with ‘npm run build’, and configure it in your application. You can then utilize the ‘get_items’ tool to fetch RSS feed items by providing a valid RSS feed URL.

Key features

Key features include support for multiple feed formats (RSS 2.0, RSS 1.0, Atom), structured JSON output, comprehensive error handling, and the ability to extract custom fields such as media content and thumbnails.

Where to use

rss-reader-server can be used in various fields including news aggregation, content management systems, and any application that requires reading and processing RSS/Atom feeds.

Content

RSS Reader MCP Server

A TypeScript-based MCP server that provides RSS feed reading capabilities for fetching and parsing RSS/Atom feeds from URLs.

Overview

This MCP server implements RSS feed reading functionality by providing tools to fetch, parse, and extract structured data from RSS and Atom feeds. It uses the rss-parser library for robust feed parsing and axios for HTTP requests with proper error handling and timeouts.

Features

Tools

  • get_items - Fetch RSS feed items from a given URL
    • Input: RSS feed URL (required)
    • Output: Structured JSON containing feed metadata and items
    • Capabilities:
      • Fetches RSS/Atom feeds with 10-second timeout
      • Parses standard RSS fields (title, link, description, pubDate, author, etc.)
      • Extracts custom fields (media content, thumbnails, encoded content)
      • Handles categories and enclosures
      • Provides comprehensive error handling for network and parsing issues

Supported Feed Formats

  • RSS 2.0
  • RSS 1.0 (RDF)
  • Atom feeds
  • Custom fields including:
    • Media content and thumbnails
    • Dublin Core creator fields
    • Content-encoded fields

Error Handling

  • URL validation
  • Network timeout handling (10 seconds)
  • HTTP error status handling
  • RSS parsing error handling
  • Comprehensive error messages for debugging

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

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": {
    "rss-reader-server": {
      "command": "node",
      "args": [
        "/path/to/rss-reader-server/build/index.js"
      ]
    }
  }
}

Usage Example

Once connected, you can use the get_items tool to fetch RSS feed items:

Tool: get_items
Input: { "url": "https://example.com/feed.xml" }

The server will return a structured JSON response containing:

  • Feed URL
  • Total item count
  • Array of feed items with:
    • Title, link, description
    • Publication date and author
    • Categories (if available)
    • Enclosure information (for podcasts/media)

Dependencies

  • @modelcontextprotocol/sdk: MCP protocol implementation
  • rss-parser: RSS/Atom feed parsing
  • axios: HTTP client for fetching feeds
  • zod: Runtime type validation

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.

Error Responses

The server provides detailed error messages for common issues:

  • Invalid URL format
  • Network connectivity problems
  • HTTP errors (404, 500, etc.)
  • Request timeouts
  • RSS parsing failures

All errors are returned in a structured format with descriptive messages to help with troubleshooting.

Tools

No tools

Comments