About RSS Reader MCP Server
RSS Reader MCP Server is a TypeScript MCP server for fetching and parsing RSS and Atom feeds. It returns structured feed metadata and items, including common and selected custom fields.
Key features
- 01Fetches RSS and Atom feeds
- 02Returns structured feed metadata and items
- 03Parses standard and custom fields
- 04Reports network and parsing errors
Use cases
- 01Collecting items from a feed URL
- 02Reading podcast or media enclosure details
MCP support
It exposes the `get_items` tool to MCP clients, which accepts a feed URL and returns parsed feed data.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMERSS 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.
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.