lionkiii/rss-feeds-mcp
📇 🏠 - RSS feeds MCP server with 8 tools — fetch, filter, search, and manage RSS feeds by category or source. Zero config, no API keys required.
Quick Install
{
"mcpServers": {
"lionkiii-rss-feeds-mcp": {
"command": "npx",
"args": [
"-y",
"lionkiii-rss-feeds-mcp"
]
}
}
}Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.
Documentation Overview
RSS Feeds MCP Server
An MCP server for digital marketers to fetch, search, and filter RSS blog feeds. Works with Claude Desktop and any MCP-compatible client.
Quick setup with Claude Code (copy this prompt)
Open Claude Code in your terminal and paste the prompt below. It clones this repo, builds it, and wires it into Claude Desktop for you.
Set up this RSS MCP server for my Claude Desktop.
Repo: https://github.com/lionkiii/rss-feeds-mcp
Do all of the following:
1. Clone the repo into a sensible folder (e.g. ~/mcp-servers/rss-feeds-mcp) if it isn't already cloned, then cd into it.
2. Run `npm install` and `npm run build`. Confirm `dist/index.js` exists.
3. Find the absolute path to my node binary (`which node`; if it is under nvm use that full path, because Claude Desktop does not load my shell PATH).
4. Locate my Claude Desktop config:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json
Create the file with `{}` if it does not exist. Back it up first.
5. IMPORTANT: fully quit Claude Desktop before editing the config, because a running Claude Desktop rewrites the file on write and will discard my changes. On macOS quit it with `osascript -e 'tell application "Claude" to quit'`.
6. Merge (do not overwrite) an "mcpServers" entry named "rss-feeds" whose "command" is my absolute node path and whose "args" is the absolute path to dist/index.js. Keep the JSON valid and preserve any existing config keys and other mcpServers.
7. Relaunch Claude Desktop and verify the config still contains the rss-feeds entry after launch, and that a node process running dist/index.js was spawned.
8. Tell me to try: "fetch the latest marketing blogs".
Tools
list_categories- list feed categorieslist_feeds- list configured feedsadd_feed- add a feed (name, url, category)remove_feed- remove a feed by namefetch_blogs- latest posts across all feeds (range, limit)fetch_by_category- posts filtered by categoryfetch_from_source- posts from one sourcesearch_blogs- keyword search across all feeds
Date ranges: 1d, 7d, 1w, 30d, 1m, this_week, this_month.
Setup
npm install
npm run build
Connect to Claude Desktop
Config file (macOS):
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"rss-feeds": {
"command": "node",
"args": ["/absolute/path/to/RSS/dist/index.js"]
}
}
}
Notes:
- Use an absolute path to
dist/index.js. - If
nodeis installed via nvm, use the absolute node path (e.g.~/.nvm/versions/node/<version>/bin/node) because Claude Desktop does not load your shell PATH. - Run
npm run buildafter editingsrc/index.ts, then restart Claude Desktop.
Managing feeds
Feeds live in feeds.json. Edit directly or use the add_feed / remove_feed
tools. All feed requests use a browser User-Agent and a 20s hard timeout so a
slow or dead feed can never hang the whole request.