Back to articles
Technology Insight

Building a Self-Hosted AI News Aggregator: Combining n8n, RSS Feeds, and Ollama on a VPS

June 3, 2026

Introduction: The Challenge of Information Overload in the AI Era

In the modern business landscape, staying ahead of industry trends, market shifts, and technological breakthroughs is a critical competitive advantage. However, professionals face an unprecedented challenge: information overload. With thousands of articles, blogs, and press releases published daily, manually filtering relevant news has become an operational bottleneck.

While commercial AI news aggregators exist, they often come with steep subscription costs, strict API limitations, and potential privacy concerns regarding data tracking. The solution? Self-hosting your own AI News Aggregator. By combining the workflow automation power of n8n, the standard syndication of RSS Feeds, and the localized intelligence of Ollama on a Virtual Private Server (VPS), you can build a bespoke, private, and highly scalable intelligence engine. This guide provides a comprehensive blueprint to architecting this system from scratch.

1. Architectural Overview: How the Components Interact

Before diving into configuration, it is essential to understand how the three core pillars of this system communicate with one another to form a seamless automation pipeline:

  • RSS Feeds (The Ingestion Layer): Acting as the data source, RSS feeds continuously monitor targeted websites, journals, and tech blogs, fetching raw content as soon as it is published.
  • n8n (The Orchestration Engine): A powerful, node-based workflow automation tool. It schedules the ingestion, parses the RSS XML data, filters duplicates, sends payloads to the AI model, and routes the final output to your preferred delivery channel.
  • Ollama (The Intelligence Layer): A framework that allows you to run powerful Large Language Models (LLMs) like Llama 3 or Mistral locally. It categorizes articles, scores them based on relevance, and generates concise executive summaries without sending data to external cloud APIs.
Choosing a self-hosted stack ensures 100% data privacy, predictable infrastructure costs, and the flexibility to swap AI models or data destinations instantly.

2. Prerequisites and VPS Infrastructure Provisioning

To run this system efficiently, especially when hosting local LLMs, selecting the right hardware architecture is vital. While standard web applications can run on minimal specs, Ollama requires adequate CPU and RAM allocation for acceptable inference speeds.

Recommended Minimum Specifications:

  • CPU: Dedicated 4-vCPU or higher (AMD EPYC or Intel Xeon preferred).
  • RAM: 8 GB minimum (16 GB highly recommended if running 7B or 8B parameter models).
  • Storage: 50 GB NVMe SSD (to accommodate OS, Docker images, and local LLM weights).
  • OS: Ubuntu 22.04 LTS / 24.04 LTS.

Ensure you have SSH access to your VPS, a registered domain name (optional but recommended for securing n8n via HTTPS), and that Docker and Docker Compose are pre-installed on the machine.

3. Setting Up the Core Infrastructure via Docker Compose

Using Docker Compose allows us to spin up both n8n and Ollama simultaneously in an isolated network environment. Create a new directory on your VPS and deploy the configuration below.


version: '3.8'
services:
  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    volumes:
      - ./ollama:/root/.ollama
    ports:
      - "11434:11434"
    restart: unless-stopped

  n8n:
    image: docker.n8n.io/n8nio/n8n:latest
    container_name: n8n
    environment:
      - N8N_HOST=yourdomain.com
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - WEBHOOK_URL=[https://yourdomain.com/](https://yourdomain.com/)
    volumes:
      - ./n8n_data:/home/node/.n8n
    ports:
      - "5678:5678"
    restart: unless-stopped
    depends_on:
      - ollama

Run docker compose up -d to initialize the containers. Once running, you should configure a reverse proxy like Nginx or Caddy to point your domain to port 5678 with a Let's Encrypt SSL certificate to ensure secure dashboard access.

4. Configuring Ollama and Model Selection

With the containers online, you need to download an appropriate LLM into the Ollama instance. For a balance between speed, contextual understanding, and hardware compatibility, Llama 3 (8B) or Mistral (7B) are outstanding choices.

Access the Ollama container via terminal and pull the desired model:

docker exec -it ollama ollama run llama3

Once the download completes, you can verify the model is responsive by typing a quick test prompt. The container exposes an internal REST API on port 11434, which n8n will use to pass text for processing.

5. Engineering the n8n Automation Workflow

The core intelligence of your aggregator lies within the n8n visual canvas. The workflow follows a highly structured multi-step sequence:

Step 1: The Trigger (RSS Read Node)

Set up an RSS Read Node configured to fetch URLs from your targeted industry sources (e.g., TechCrunch, Reuters, or specialized dev blogs). Set the execution frequency to run every few hours or once a day depending on your data consumption preferences.

Step 2: Data Deduplication & Transformation

To avoid processing identical news pieces, insert a Code Node or use n8n’s native data filtering features to compare incoming article URLs against previously processed logs stored in a local SQLite/PostgreSQL database or an internal n8n cache. Only forward unique, newly published articles downstream.

Step 3: AI Inference and Prompt Engineering

Connect an HTTP Request Node or the specialized Ollama Node in n8n. Configure it to connect to your Ollama endpoint (http://ollama:11434/api/generate) using the model you downloaded earlier. The magic happens within the prompt design:

"You are an expert executive business analyst. Analyze the following article title and excerpt. 1. Provide a 2-sentence executive summary highlighting the commercial impact. 2. Assign a relevance score from 1-10 for a technology enterprise. 3. Categorize the topic (e.g., AI, Cybersecurity, Finance). Return your response strictly in clean HTML formatting."

Step 4: Conditional Routing and Output Delivery

Utilize an n8n If Node to filter articles based on the AI-generated relevance score. For instance, only articles scoring 7 or higher move forward. Finally, route these refined summaries to your preferred end destination: an email newsletter via SMTP, a dedicated Slack/Discord webhook channel, or a private Notion database for structured reading.

6. Optimization and Troubleshooting Tips

Running local AI workflows can sometimes present resource constraints. To ensure long-term stability of your self-hosted application, implement these best practices:

  • Implement Concurrency Limits: Processing dozens of articles simultaneously can max out your VPS CPU and crash the container. Configure n8n to process queue items sequentially (one by one) to keep system load steady.
  • Prompt Tuning: If your local model hallucinates or outputs broken markup, explicitly instruct it to return raw structured text or use JSON mode options if supported by your workflow nodes.
  • Automate Housekeeping: Over time, n8n workflow execution logs can grow significantly. Set the environment variable EXECUTIONS_DATA_PRUNE=true to automatically clear old historical logs weekly.

Conclusion: Unleashing Private, Autonomous Intelligence

By building this self-hosted AI News Aggregator, you transform raw, fragmented web data into highly tailored, structured market intelligence. Operating entirely on your own VPS infrastructure means avoiding subscription fees, ensuring data privacy, and keeping full control over how information is evaluated. As your needs scale, you can easily plug in fine-tuned models, integrate web scrapers for full-text analysis, or add sentiment graphs. You have successfully shifted from chasing the news to having an autonomous AI assistant curate it precisely for you.

Building a Self-Hosted AI News Aggregator: Combining n8n, RSS Feeds, and Ollama on a VPS | DPTCloud