Uses Cheerio for web scraping to extract full article content from RSS feed URLs beyond the basic feed data.
Provides comprehensive RSS/Atom feed management with capabilities for adding, updating, and deleting feeds, searching and filtering articles, sentiment analysis, trend detection, cross-source verification, and automated scheduling with webhook notifications.
Provides persistent storage for RSS feeds and articles using SQLite database with optimized indexing for search and analytics operations.
🚀 RSS-MCP v3.0
Professional RSS Feed Management System with AI-Powered Analytics
Modern RSS/Atom feed aggregation and analysis tool built for Model Context Protocol (MCP), enabling AI assistants like Claude to manage and analyze news feeds with advanced features.
✨ Features
🎯 Core Features
RSS Feed Management - Add, list, update, and delete RSS/Atom feeds
Smart Search - Advanced filtering by keyword, category, date range
Auto Updates - Automatic feed refresh with configurable scheduling
SQLite Database - Persistent storage with optimized indexing
🤖 AI-Powered Analytics
Sentiment Analysis - Detect positive/negative/neutral tone in articles
Trend Detection - NLP-based topic clustering and trending keywords
Auto-Categorization - Intelligent AI-based article classification
Cross-Verification - Compare article coverage across multiple sources
🔔 Automation & Monitoring
Webhook Notifications - Real-time alerts with keyword filtering
Feed Scheduling - Cron-based automated updates
Health Monitoring - Track feed uptime and performance
Credibility Scoring - Assess feed reliability and quality
📊 Content & Export
Daily Digest - Generate HTML/Markdown summary reports
OPML Support - Import/export feed lists for easy migration
Full Content Extraction - Web scraping for complete articles
Multiple Export Formats - JSON, CSV, XML support
🚀 Quick Start
Automatic Setup (Recommended)
Windows:
Linux/Mac:
Manual Setup
Install dependencies:
Start server (with auto-update):
Or start without updates:
Server will be available at:
MCP Endpoint:
http://localhost:3000/mcpHealth Check:
http://localhost:3000/health
📋 Available Tools (26)
rss_add- Add new RSS/Atom feedrss_list- List all feedsrss_update- Update feeds (fetch new articles)rss_news- Get articles from specific feedrss_search- Advanced article searchrss_delete- Remove feed
rss_breaking- Breaking news detectionrss_duplicates- Find duplicate articlesrss_analytics- Feed statistics and metricsrss_trends- Trending topics analysis (NLP)rss_sentiment_analysis- Emotional tone detection
rss_translate- AI-powered translationrss_media- Extract images and videosrss_full_content- Scrape full article content
rss_compare- Compare feed coveragerss_cross_verify- Cross-source verification
rss_export- Export to JSON/CSV/XMLrss_daily_digest- Generate daily/weekly reportsrss_opml- OPML import/export
rss_recommend- Feed recommendationsrss_auto_categorize- Auto categorizationrss_credibility_score- Reliability scoring
rss_notification_setup- Webhook alertsrss_bookmark- Reading list managementrss_schedule- Automated schedulingrss_health_monitor- Feed health tracking
🔌 MCP Client Integration
Claude Desktop
Add to your Claude Desktop config:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
MCP Inspector (Testing)
💡 Usage Examples
With Claude
Add a feed:
"Add BBC News RSS feed: https://feeds.bbci.co.uk/news/rss.xml"
Analyze trends:
"Show me trending topics from the last 7 days"
Sentiment analysis:
"Analyze the sentiment of today's news"
Generate digest:
"Create a daily digest of top 10 articles in HTML format"
Schedule updates:
"Schedule BBC News to update every 6 hours"
🛠️ Development
📦 Tech Stack
Runtime: Node.js 18+
Language: TypeScript
Database: SQLite (better-sqlite3)
MCP SDK: @modelcontextprotocol/sdk
NLP: natural, sentiment
Web Scraping: cheerio
Scheduling: cron-parser, node-cron
Validation: Zod
🏗️ Project Structure
🔒 Security
✅ URL validation (HTTP/HTTPS only)
✅ Private IP blacklist
✅ MIME type validation
✅ Request timeout protection
✅ Domain-based rate limiting
✅ SQL injection protection (prepared statements)
📚 Documentation
AUTO_UPDATE_GUIDE.md - Auto-update system guide
MCP_CLIENT_GUIDE.md - MCP client setup
CHANGELOG.md - Version history
KURULUM_REHBERI.md - Installation guide (Turkish)
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/AmazingFeature)Commit your changes (
git commit -m 'Add some AmazingFeature')Push to the branch (
git push origin feature/AmazingFeature)Open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
Built with Model Context Protocol SDK
Powered by Natural for NLP features
Uses Cheerio for web scraping
📞 Support
⭐ Star History
If you find this project useful, please consider giving it a star!
Made with ❤️ for the MCP community