Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Swift Netnewswire

FreeNot checked

Read-only MCP server for NetNewsWire

GitHubEmbed

About

Read-only MCP server for NetNewsWire

README

CI Swift 6.2 macOS 26+ License: MIT Built with Claude Code

A read-only Model Context Protocol (MCP) server for NetNewsWire, the open-source RSS reader for Mac.

Gives AI assistants like Claude access to your NetNewsWire feeds, articles, and search index.

Tools

Tool Description
list_accounts List available NNW accounts (OnMyMac, iCloud, etc.)
list_feeds List subscribed feeds (parsed from OPML)
list_starred_articles Starred articles with optional feed filter and limit
list_recent_articles Recent articles by arrival date
get_article Full article content by ID; optional format (html/text) and max_content_length to bound the body
search_articles Full-text search using NNW's FTS4 index
get_article_count Total, starred, and unread counts

All tools are read-only. Nothing is modified. Each tool returns machine-readable structuredContent (with a declared outputSchema) alongside the human-readable markdown.

Requirements

  • macOS 26+
  • Swift 6.2+ (builds on the Swift 6.3 toolchain in Xcode 26)
  • NetNewsWire (Mac App Store or direct download); tested against 7.1.1

Build

swift build -c release

The binary will be at .build/release/netnewswire-mcp.

Configure

Add to your Claude Code MCP config (~/.claude/claude_desktop_config.json or similar):

{
  "mcpServers": {
    "netnewswire": {
      "command": "/path/to/netnewswire-mcp"
    }
  }
}

Or, with the Claude Code CLI:

claude mcp add netnewswire /path/to/.build/release/netnewswire-mcp

Full Disk Access

NetNewsWire keeps its databases inside a macOS app container, which the system protects with privacy controls (TCC). The server can only read it if the process that launches it has Full Disk Access — otherwise it exits at startup with Operation not permitted.

Grant FDA to whichever app hosts your MCP client, then restart that app:

  • Running Claude Code from a terminal → System Settings → Privacy & Security → Full Disk Access → enable Terminal (or iTerm).
  • Another host (VS Code, the Claude desktop app) → grant FDA to that app instead.

How it works

The server reads NetNewsWire's SQLite databases directly (read-only mode) from:

~/Library/Containers/com.ranchero.NetNewsWire-Evergreen/Data/Library/Application Support/NetNewsWire/Accounts/

It auto-discovers all accounts and their databases on startup. Feed lists are parsed from each account's Subscriptions.opml file. Full-text search uses NNW's built-in FTS4 search index.

Dependencies

  • swift-sdk 0.12.1+ - MCP protocol implementation for Swift
  • GRDB.swift 7.x - SQLite toolkit for Swift

Notes

  • Only tested with Claude Code. It should work with any MCP client, but your mileage may vary.
  • This depends on NetNewsWire's internal database schema, which is not a public API and could change between versions. NetNewsWire 7.1 moved authors into an inline JSON column on articles (the old authors/authorsLookup tables are gone); this server reads the current layout.
  • Feed IDs are the XML URLs of the feeds, not UUIDs.
  • Dates are Unix timestamps (seconds since 1970).

License

MIT

from github.com/jonathanspiva/swift-netnewswire-mcp

Installing Swift Netnewswire

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/jonathanspiva/swift-netnewswire-mcp

FAQ

Is Swift Netnewswire MCP free?

Yes, Swift Netnewswire MCP is free — one-click install via Unyly at no cost.

Does Swift Netnewswire need an API key?

No, Swift Netnewswire runs without API keys or environment variables.

Is Swift Netnewswire hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Swift Netnewswire in Claude Desktop, Claude Code or Cursor?

Open Swift Netnewswire on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Swift Netnewswire with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs