MCP RSS News Agent

by teo4348
MIT License

Integrations

  • Supports configuration through environment variables using .env files for flexible deployment settings.

  • Supports formatting extracted web content as Markdown, allowing for clean, structured representation of articles with optional image inclusion.

  • Provides tools for discovering RSS feeds from websites, fetching entries from feeds, extracting and formatting content, searching news articles by keyword, and generating summaries of news articles from RSS sources.

MCP RSS News Agent

A FastMCP-based RSS news aggregation and processing agent that can discover, fetch, and summarize content from various RSS feeds.

Features

  • Discover RSS feeds from any website
  • Fetch entries from RSS feeds
  • Extract and format content from feed entries
  • Extract and process web content from any URL
  • Search news articles by keyword
  • Generate summaries for news articles
  • Get top news by category and country

Installation

  1. Clone the repository
  2. Install the required dependencies:
pip install -r requirements.txt
  1. Create a .env file if you need environment variables (optional)

Usage

Start the MCP Server

python server.py

This will start the MCP server that exposes various RSS-related tools.

Available Tools

  1. get_rss_feed_entries: Fetches entries from an RSS feed URL
  2. discover_rss_feeds: Finds RSS feeds available on a website
  3. download_feed_content: Downloads and processes the content of a feed entry
  4. fetch_webpage: Extracts main content from any webpage URL using advanced techniques (NEW)
  5. search_news_by_keyword: Searches news articles across multiple feeds using a keyword
  6. create_news_summary: Creates summaries for news articles
  7. get_top_news_from_category: Gets top news from specific categories and countries

Examples

Discover RSS Feeds on a Website

response = mcp.invoke("discover_rss_feeds", {"website_url": "https://www.theguardian.com"}) print(f"Found {response['feeds_count']} feeds") for feed in response['feeds']: print(f"- {feed['title']}: {feed['url']}")

Get News Articles by Keyword

response = mcp.invoke("search_news_by_keyword", { "keyword": "climate change", "max_results": 5 }) for article in response['results']: print(f"- {article['title']} ({article['source']})") print(f" Link: {article['link']}") print()

Extract Content from Any Webpage

response = mcp.invoke("fetch_webpage", { "url": "https://example.com/article", "output_format": "markdown", "include_images": True }) print(f"Title: {response['title']}") print(f"Extraction method: {response['extracted_by']}") print(f"Content preview: {response['content'][:200]}...")

Get Top News from a Category

response = mcp.invoke("get_top_news_from_category", { "category": "technology", "country": "us", "max_results": 3 }) for article in response['results']: print(f"- {article['title']} ({article['source']})")

Client Example

The project includes a command-line client (client_example.py) that provides easy access to all the MCP server tools:

# Get feed entries python client_example.py feed https://www.theguardian.com/international/rss # Search news by keyword python client_example.py search "artificial intelligence" # Extract content from a webpage with advanced extraction python client_example.py webpage https://example.com/article --format markdown --images --save # Get news by category python client_example.py category technology --country us

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

-
security - not tested
A
license - permissive license
-
quality - not tested

A FastMCP-based server that provides tools for discovering RSS feeds, fetching and processing news content, searching articles by keyword, and generating summaries across multiple news sources and categories.

  1. Features
    1. Installation
      1. Usage
        1. Start the MCP Server
        2. Available Tools
      2. Examples
        1. Discover RSS Feeds on a Website
        2. Get News Articles by Keyword
        3. Extract Content from Any Webpage
        4. Get Top News from a Category
      3. Client Example
        1. Contributing
          1. License

            Related MCP Servers

            • -
              security
              A
              license
              -
              quality
              This MCP server performs multi-topic searches in business, news, finance, and politics using the Tavily API, providing high-quality sources and intelligent summaries.
              Last updated -
              1
              1
              Python
              MIT License
              • Apple
              • Linux
            • -
              security
              A
              license
              -
              quality
              An MCP server implementation that integrates the RSS3 API, allowing users to query data from decentralized chains, social media platforms, and the RSS3 network through natural language.
              Last updated -
              1
              JavaScript
              MIT License
            • -
              security
              F
              license
              -
              quality
              An MCP server that fetches RSS feeds and shares them with LLMs, allowing AI assistants to access and present the latest news and articles from configured feeds.
              Last updated -
              1
              TypeScript
            • -
              security
              F
              license
              -
              quality
              A FastMCP-based service that provides stock data including historical prices, fundamental information, and financial news.
              Last updated -
              1
              Python
              • Linux
              • Apple

            View all related MCP servers

            ID: xyc425usll