MCP RSS Crawler
Fetches and caches RSS feeds using a SQLite database for use with LLMs via the MCP protocol.
MCP-RSS-Crawler
An MCP (Message Chain Protocol) server that fetches RSS feeds and shares them with LLMs.
Features
- Fetching and caching of RSS feeds (SQLite database)
- MCP protocol implementation for seamless LLM integration
- Support for filtering feeds by category, source, or keywords
- Comprehensive API endpoints for feed management
- Add, update, and delete feeds
- Support for fetching articles from Firecrawl
Requirements
- Bun
- Firecrawl API key
- Claude Desktop or other MCP client
Setup as MCP Server
- Clone this repository
- Create a
claude_desktop_config.jsonfile based onclaude_desktop_config.json.examplewith your configuration
{
"mcpServers": {
"rss-crawler": {
"command": "/path/to/bun",
"args": ["run", "/path/to/mcp-rss-crawler/apps/mcp-server/src/mcp-cli.ts"],
"cwd": "/path/to/mcp-rss-crawler",
"env": {
"PORT": "5556",
"DB_DIR": "/path/to/mcp-rss-crawler",
"FIRECRAWL_API_KEY": "fc-<YOUR_FIRECRAWL_API_KEY>"
}
}
}
}
- Install dependencies:
bun install - Start Claude Desktop:
MCP Protocol
The server implements the Message Chain Protocol (MCP) which allows LLMs to access your latest RSS feeds. The MCP endpoint accepts POST requests with a JSON body containing a messages array and returns a response with the latest feed items.
Example request:
{
"messages": [
{
"role": "user",
"content": "What are the latest news from my RSS feeds?"
}
]
}
Example response:
{
"messages": [
{
"role": "assistant",
"content": "Here are the latest articles from your RSS feeds:",
"name": "rss-mcp"
},
{
"role": "tool",
"content": "[{\"title\":\"Article Title\",\"summary\":\"Article summary...\",\"published\":\"2025-03-16T04:30:00.000Z\",\"origin\":\"Feed Name\",\"link\":\"https://example.com/article\"}]",
"name": "rss-feeds"
}
]
}
Configuration Options
The server can be configured through environment variables or a .env file:
PORT- Server port (default: 5556)FIRECRAWL_API_KEY- Firecrawl API keyDB_DIR- Database directory (default:~/.mcp-rss-crawler)
Troubleshooting
- For connection issues, check your network settings and firewall configuration
- Logs are available in the console and can be used to diagnose problems
- For more detailed logging, set the
DEBUG=mcp-rss:*environment variable
Related Servers
Feed
A server for fetching and parsing RSS, Atom, and JSON feeds.
yt-dlp-mcp
Download video and audio from various platforms like YouTube, Facebook, and TikTok using yt-dlp.
YouTube MCP Server
Extract metadata and captions from YouTube videos and convert them to markdown.
Puppeteer
A server for browser automation using Puppeteer, enabling web scraping, screenshots, and JavaScript execution.
Any Browser MCP
Attaches to existing browser sessions using the Chrome DevTools Protocol for automation and interaction.
Browserbase
Automate browser interactions in the cloud (e.g. web navigation, data extraction, form filling, and more)
Reddit MCP
A server to browse, search, and read content on Reddit using the Reddit API.
Douyin MCP Server
Extract watermark-free video links and copy from Douyin.
ScreenshotOne
Render website screenshots with ScreenshotOne
SABIS MCP Server
Access academic grades from the Sakarya University SABIS system via automated web scraping.