Open Source / Core Server & MCP

FeedKeeper Core.

The open-source core for your feeds, native apps, and AI agents.

FeedKeeper Core is the lightweight, self-hosted engine for RSS and Atom feeds. Featuring SQLite FTS5, full offline resilience, passkeys, an open REST API, and native OAuth 2.1 MCP, Core seamlessly connects your subscriptions to the web reader, mobile apps, and AI workflows — zero cloud lock-in.

01 // The Core Server

Focused architecture. Total control.

At the heart of the FeedKeeper ecosystem, Core unites data storage, feed polling, and open APIs in a single, lean Node.js process.

01 /

Feeds & smart discovery

Discover and subscribe to RSS and Atom feeds by URL, organize with folders, use starter packs, and import or export seamlessly via OPML 2.0.

02 /

Permanent full-text archive

Saved articles retain full text and images locally on your server — even if the original source changes or takes them down.

03 /

SQLite FTS5 full-text search

Built-in search index across titles, snippets, full text, and personal notes. Instant, diacritic-insensitive, and ranked by BM25 relevance.

04 /

Universal Inbox (Read-it-Later)

Archive web clippings, URLs, and personal notes directly from your browser, share extension, or MCP client — complete with text and lead images.

05 /

Markdown notes & knowledge

Attach personal notes to any article, sync them across devices, and export to Markdown files. Notes permanently protect articles from cleanup.

06 /

MCP with OAuth 2.1

Native Model Context Protocol endpoint via Streamable HTTP: 1-click OAuth with PKCE for Claude and ChatGPT, scoped permissions, and tools for feed research.

07 /

Passkeys & two-factor security

Passwordless WebAuthn login across all devices, optional TOTP two-factor authentication with authenticator apps, and 10 single-use recovery codes.

08 /

Open REST API & native sync

Comprehensive OpenAPI 3 specification (/api/v1) with delta sync and mutation queue — engineered as a high-performance backend for native apps (iOS, iPadOS, macOS).

09 /

Lean, robust & Docker-ready

One Node.js process, one SQLite file, parallel polling with per-source limits, and a shared 256 MiB image cache. Ready in one minute via Docker Compose.

02 // Web Reader & APIs

Focused on the web. Ready for native apps.

The built-in web reader runs as an installable PWA with a service worker, magazine and list views, and full offline capability. At the same time, the open API syncs your mobile devices quietly in the background.

FeedKeeper on iPhone showing the magazine view in light mode
FeedKeeper on iPad showing the article magazine in dark mode

03 // Architecture

Small footprint. Zero dependencies.

FeedKeeper Core runs self-hosted on any Linux server or Raspberry Pi. Web UI, feed polling, REST API, and MCP access originate from a single process. All data resides in a local SQLite file, with images archived beside it.

01
Built-in Web ReaderLean browser interface with offline service worker, starter packs, and operator extension points.
02
Open REST API (/api/v1)OpenAPI endpoint with delta sync, mutation queue, and passkey auth for native clients (iOS, iPadOS, macOS).
03
Streamable MCP (/mcp)OAuth 2.1 endpoint for Claude, ChatGPT, and AI agents for secure feed exploration and inbox archiving.
04
SQLite FTS5 & Image CacheLocal SQLite file for feeds, notes, and accounts, shared 256 MiB image cache, and consistent online backups.

04 // Installation

Up and running in one minute.

Docker Compose pulls the prebuilt multi-arch image (amd64/arm64) from GitHub Container Registry and starts FeedKeeper Core without a local build. Open http://localhost:3000 to set up your admin account.

Guide on GitHub
feedkeeper / docker
mkdir feedkeeper && cd feedkeeper
curl -fsSLO https://raw.githubusercontent.com/visualfusion/feedkeeper/main/compose.yaml
echo "SESSION_SECRET=$(openssl rand -hex 32)" > .env
docker compose up -d
↳ http://localhost:3000

These commands fetch compose.yaml and generate a random SESSION_SECRET in .env. Set PUBLIC_URL to your domain before public deployment to enable passkeys and OAuth.

MIT / OPEN SOURCE

The best sources belong on your own server.

View on GitHub

Let's talk about
visions.

Whether it's a new project, a redesign, or strategic consulting — fill out the form or use the contact details below.

* Required fields