{"_id":"@0xquinto/rss-mcp","_rev":"6-b364eff6b90f5f09e56b8f94be87ee95","name":"@0xquinto/rss-mcp","dist-tags":{"latest":"1.1.3"},"versions":{"1.0.0":{"name":"@0xquinto/rss-mcp","version":"1.0.0","keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"author":"Diego Gomez <diego.gomez210@gmail.com>","license":"MIT","_id":"@0xquinto/rss-mcp@1.0.0","maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"bin":{"rss-mcp":"dist/index.js"},"dist":{"shasum":"80d41af941756d47b743a8476add6327a662efb6","tarball":"https://registry.npmjs.org/@0xquinto/rss-mcp/-/rss-mcp-1.0.0.tgz","fileCount":26,"integrity":"sha512-l0SfU9rKJdASManl9Rru61WaqBjIXdIBX0tF1BbzD8pTqt9Npxz0hJxm+sy4snnwMpF2ffF1qEEXXq4H3XfZlg==","signatures":[{"sig":"MEQCIFdNk7im20A79mzO2394xv/RyvUp3upDDzYqljolwmSEAiAG4w9tjs/PZKJ7l1wxva0ZjVUo6ir/IPQzL6Jmf3+09g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53051},"main":"dist/index.js","type":"module","shasum":"80d41af941756d47b743a8476add6327a662efb6","engines":{"node":">=18"},"scripts":{"dev":"bun --watch src/index.ts","build":"bun run tsc","start":"bun dist/index.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xquinto","email":"diego.gomez210@gmail.com"},"_integrity":"sha512-l0SfU9rKJdASManl9Rru61WaqBjIXdIBX0tF1BbzD8pTqt9Npxz0hJxm+sy4snnwMpF2ffF1qEEXXq4H3XfZlg==","repository":{"url":"https://github.com/0xquinto/rss-mcp-ts","type":"git"},"_npmVersion":"10.8.3","description":"MCP server for RSS feed management with full-text search and HackerNews ranking","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.25.76","linkedom":"^0.18.0","feedsmith":"^1.0.0","better-sqlite3":"^12.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/better-sqlite3":"^7.6.0"},"_npmOperationalInternal":{"tmp":"tmp/rss-mcp_1.0.0_1770308537080_0.36041532930870646","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@0xquinto/rss-mcp","version":"1.0.1","keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"author":{"name":"Diego Gomez","email":"diego.gomez210@gmail.com"},"license":"MIT","_id":"@0xquinto/rss-mcp@1.0.1","maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"homepage":"https://github.com/0xquinto/rss-mcp#readme","bugs":{"url":"https://github.com/0xquinto/rss-mcp/issues"},"bin":{"rss-mcp":"dist/index.js"},"dist":{"shasum":"b4045b83e01bc54bd437de81f4057421bc58aac1","tarball":"https://registry.npmjs.org/@0xquinto/rss-mcp/-/rss-mcp-1.0.1.tgz","fileCount":26,"integrity":"sha512-u+Ke+R4h1rTM9lHCFNpFyA05WrzhOoCPVDLt5z6jQm3VfsQsIl9yM+dhs/3/piqLyM3Z7pGDYF+mXd+x29BzVA==","signatures":[{"sig":"MEQCIBCwoIOubQfAwWAHKztXJfnpu5HUl0bFh8ph0nzLFmDXAiBL4aNBmFYKc+0UkkQlSpTVCwtRMBkvCIBu1JyVAc7Qbg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53223},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"04c6258ec2a8a9101665ecba8e9f5b36e2f52be5","scripts":{"dev":"bun --watch src/index.ts","build":"bun run tsc","start":"bun dist/index.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xquinto","email":"diego.gomez210@gmail.com"},"repository":{"url":"git+https://github.com/0xquinto/rss-mcp.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for RSS feed management with full-text search and HackerNews ranking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"zod":"^3.25.76","linkedom":"^0.18.0","feedsmith":"^1.0.0","better-sqlite3":"^12.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/better-sqlite3":"^7.6.0"},"_npmOperationalInternal":{"tmp":"tmp/rss-mcp_1.0.1_1770315833271_0.5801103740954716","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@0xquinto/rss-mcp","version":"1.1.0","keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"author":{"name":"Diego Gomez","email":"diego.gomez210@gmail.com"},"license":"MIT","_id":"@0xquinto/rss-mcp@1.1.0","maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"homepage":"https://github.com/0xquinto/rss-mcp#readme","bugs":{"url":"https://github.com/0xquinto/rss-mcp/issues"},"bin":{"rss-mcp":"dist/index.js"},"dist":{"shasum":"6364b3339d88e99e9d686543ae6cb9ef41efcad7","tarball":"https://registry.npmjs.org/@0xquinto/rss-mcp/-/rss-mcp-1.1.0.tgz","fileCount":26,"integrity":"sha512-y/SU/nFhU/Ke0PiaWtZO4BT2WyMJGHGJkXyvCSite847dBIGRJ5nKMpyf+KKqkxDgaj7XqWU8Q/VV/ZMR4Jg7w==","signatures":[{"sig":"MEUCIBLA5zexOA3QUSTu1Rj5fdd0HrJBj3ax3U/BGu/XaWbJAiEA4eSbLrjMUGQcfICNencLCBpTn6+4AkFMRZ7HdCEp4X4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60147},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"ee03a3129a20e6794ace69f4345474526252e941","scripts":{"dev":"bun --watch src/index.ts","build":"bun run tsc","start":"bun dist/index.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xquinto","email":"diego.gomez210@gmail.com"},"repository":{"url":"git+https://github.com/0xquinto/rss-mcp.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for RSS feed management with full-text search and HackerNews ranking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"zod":"^3.25.76","linkedom":"^0.18.0","feedsmith":"^1.0.0","better-sqlite3":"^12.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/better-sqlite3":"^7.6.0"},"_npmOperationalInternal":{"tmp":"tmp/rss-mcp_1.1.0_1770474174055_0.9047884954021206","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@0xquinto/rss-mcp","version":"1.1.1","keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"author":{"name":"Diego Gomez","email":"diego.gomez210@gmail.com"},"license":"MIT","_id":"@0xquinto/rss-mcp@1.1.1","maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"homepage":"https://github.com/0xquinto/rss-mcp#readme","bugs":{"url":"https://github.com/0xquinto/rss-mcp/issues"},"bin":{"rss-mcp":"dist/index.js"},"dist":{"shasum":"debe7b9861f65a49c949747b5837e39798d01ebd","tarball":"https://registry.npmjs.org/@0xquinto/rss-mcp/-/rss-mcp-1.1.1.tgz","fileCount":26,"integrity":"sha512-SZxJ0yjrgzsF9KdCQX4i2B7UGXasbauH599ZIvXbwVI3ZCsnRDwvcM/Fyxdje6Rqzwqc4ccfmgjpmzZtLlmozQ==","signatures":[{"sig":"MEYCIQCILbmwfSafAna7SgaF7ts5l+jItqm52qR2GpQ3YzsYdwIhAP38oL8y7gU98B6TLbuXYait/ozWhgqzvfBBuDi/iesD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61083},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"afef494669ee4f7dbb44d82cc96229314fa7863b","scripts":{"dev":"bun --watch src/index.ts","build":"bun run tsc","start":"bun dist/index.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xquinto","email":"diego.gomez210@gmail.com"},"repository":{"url":"git+https://github.com/0xquinto/rss-mcp.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for RSS feed management with full-text search and HackerNews ranking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"zod":"^3.25.76","linkedom":"^0.18.0","feedsmith":"^1.0.0","better-sqlite3":"^12.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/better-sqlite3":"^7.6.0"},"_npmOperationalInternal":{"tmp":"tmp/rss-mcp_1.1.1_1770474424987_0.9817373323605341","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@0xquinto/rss-mcp","version":"1.1.2","keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"author":{"name":"Diego Gomez","email":"diego.gomez210@gmail.com"},"license":"MIT","_id":"@0xquinto/rss-mcp@1.1.2","maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"homepage":"https://github.com/0xquinto/rss-mcp#readme","bugs":{"url":"https://github.com/0xquinto/rss-mcp/issues"},"bin":{"rss-mcp":"dist/index.js"},"dist":{"shasum":"c8e14b90194511c98b23792ae5f65ae251c37104","tarball":"https://registry.npmjs.org/@0xquinto/rss-mcp/-/rss-mcp-1.1.2.tgz","fileCount":26,"integrity":"sha512-G9RIVembPXM1dEbHhILpx+7m2j+B0Ab99EQQ98ZaF++nrcq5DL05VNZOJE+xASa2t3H+2GYk1/b27Y7JXPBg8g==","signatures":[{"sig":"MEUCIQCa+yBIIL5aPX4yGr2J66mzbISBTLpydUbVh046I8A2iwIgUHj4o2nmPQooFIKwxuE3J2kmAxQK04kS779dRLjfZto=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61333},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"85f0a5266374a887b504a2abfb005bf52386962d","scripts":{"dev":"bun --watch src/index.ts","build":"bun run tsc","start":"bun dist/index.js","release":"node scripts/bump-version.mjs patch && npm publish --access public && git add -A && git commit -m \"chore: release v$(node -p \"require('./package.json').version\")\" && git push","version:bump":"node scripts/bump-version.mjs","prepublishOnly":"bun run build"},"_npmUser":{"name":"0xquinto","email":"diego.gomez210@gmail.com"},"repository":{"url":"git+https://github.com/0xquinto/rss-mcp.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for RSS feed management with full-text search and HackerNews ranking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"zod":"^3.25.76","linkedom":"^0.18.0","feedsmith":"^1.0.0","better-sqlite3":"^12.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/better-sqlite3":"^7.6.0"},"_npmOperationalInternal":{"tmp":"tmp/rss-mcp_1.1.2_1770476267255_0.5843944775952656","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@0xquinto/rss-mcp","version":"1.1.3","description":"MCP server for RSS feed management with full-text search and HackerNews ranking","main":"dist/index.js","bin":{"rss-mcp":"dist/index.js"},"type":"module","scripts":{"build":"bun run tsc","start":"bun dist/index.js","dev":"bun --watch src/index.ts","prepublishOnly":"bun run build","version:bump":"node scripts/bump-version.mjs","release":"node scripts/bump-version.mjs patch && npm publish --access public && git add -A && git commit -m \"chore: release v$(node -p \"require('./package.json').version\")\" && git push"},"keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"author":{"name":"Diego Gomez","email":"diego.gomez210@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/0xquinto/rss-mcp.git"},"engines":{"node":">=18"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","@mozilla/readability":"^0.6.0","better-sqlite3":"^12.0.0","feedsmith":"^1.0.0","linkedom":"^0.18.0","zod":"^3.25.76"},"devDependencies":{"@types/better-sqlite3":"^7.6.0","@types/node":"^22.0.0","tsx":"^4.0.0","typescript":"^5.7.0"},"_id":"@0xquinto/rss-mcp@1.1.3","gitHead":"12d45d318fae78dc7c7d8005365a3d9026baf769","types":"./dist/index.d.ts","bugs":{"url":"https://github.com/0xquinto/rss-mcp/issues"},"homepage":"https://github.com/0xquinto/rss-mcp#readme","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-ZZz5POUIMfq5ftDIXriE6zQUXid7g0Ru831+spWp5jlGhA9XdEeU87ERAW5m+Oww867QpPKzXwaIYe/38WnD8g==","shasum":"426db4c647d2a8d89b38f1764fb05b959d9ecdf6","tarball":"https://registry.npmjs.org/@0xquinto/rss-mcp/-/rss-mcp-1.1.3.tgz","fileCount":26,"unpackedSize":60114,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDbYsrODkMFuhwjikRl6nLFkfWIBcYAHgMnGUvdtxv4UwIhAOwaH3GQ8kmXSI/R14kLsI3wMcTEt/Eq6gxpSswGv9r8"}]},"_npmUser":{"name":"0xquinto","email":"diego.gomez210@gmail.com"},"directories":{},"maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rss-mcp_1.1.3_1770489558253_0.7920865148554197"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-05T16:22:17.000Z","modified":"2026-02-07T18:39:18.515Z","1.0.0":"2026-02-05T16:22:17.207Z","1.0.1":"2026-02-05T18:23:53.407Z","1.1.0":"2026-02-07T14:22:54.209Z","1.1.1":"2026-02-07T14:27:05.151Z","1.1.2":"2026-02-07T14:57:47.405Z","1.1.3":"2026-02-07T18:39:18.395Z"},"bugs":{"url":"https://github.com/0xquinto/rss-mcp/issues"},"author":{"name":"Diego Gomez","email":"diego.gomez210@gmail.com"},"license":"MIT","homepage":"https://github.com/0xquinto/rss-mcp#readme","keywords":["mcp","rss","feeds","hackernews","claude","ai","model-context-protocol"],"repository":{"type":"git","url":"git+https://github.com/0xquinto/rss-mcp.git"},"description":"MCP server for RSS feed management with full-text search and HackerNews ranking","maintainers":[{"name":"0xquinto","email":"diego.gomez210@gmail.com"}],"readme":"# RSS MCP Server\n\n![RSS MCP Server](https://repository-images.githubusercontent.com/1150674405/60bced96-ed2d-4f45-8f16-397fdffd7ef2)\n\nAn MCP server that lets AI assistants subscribe to, fetch, search, and manage RSS feeds. Built with TypeScript and SQLite with full-text search.\n\n## Inspiration\n\nInspired by [Andrej Karpathy's post](https://x.com/karpathy/status/2018043254986703167) on reclaiming your information diet:\n\n> \"Finding myself going back to RSS/Atom feeds a lot more recently. There's a lot more higher quality longform and a lot less slop intended to provoke... We should bring back RSS - it's open, pervasive, hackable.\"\n\n**Quick start with curated feeds**: Import the [Most Popular Blogs of Hacker News 2025](https://gist.github.com/emschwartz/e6d2bf860ccc367fe37ff953ba6de66b) OPML file to get 92 high-quality tech blogs:\n\n```\nimport the OPML file from https://gist.github.com/emschwartz/e6d2bf860ccc367fe37ff953ba6de66b\n```\n\nClaude will automatically use the `import_opml` tool to add all feeds.\n\n## Features\n\n- Subscribe to RSS/Atom feeds and fetch new posts\n- Full-text search across titles, summaries, and content (FTS5)\n- Extract clean article content from web pages (Readability)\n- Import feeds in bulk from OPML files\n- Track read/unread state\n- Daily digest for compact summaries\n- HackerNews popularity ranking for posts\n- Conditional HTTP requests (ETag/Last-Modified) and per-feed rate limiting\n\n## Installation\n\n### As a Claude Code Plugin (Recommended)\n\n```bash\n/plugin marketplace add 0xQuinto/rss-mcp\n/plugin install rss-mcp@0xquinto-rss-mcp\n```\n\n### Via bunx\n\n```bash\nbunx @0xquinto/rss-mcp\n```\n\n### Via npx\n\n```bash\nnpx @0xquinto/rss-mcp\n```\n\n## Tools\n\n| Tool                | Description                                                       |\n| ------------------- | ----------------------------------------------------------------- |\n| `list_feeds`        | List all subscribed feeds                                         |\n| `add_feed`          | Subscribe to a feed by URL                                        |\n| `remove_feed`       | Unsubscribe and delete all posts for a feed                       |\n| `import_opml`       | Bulk import feeds from an OPML file                               |\n| `refresh_feeds`     | Fetch latest posts (all feeds or a specific one)                  |\n| `get_posts`         | Query posts with filtering, pagination, and full-text search      |\n| `get_post_content`  | Retrieve article content with pagination (`max_length`, `offset`) |\n| `get_daily_digest`  | Get compact digest of recent posts for synthesis                  |\n| `get_popular_posts` | Rank recent posts by HackerNews engagement                        |\n| `mark_read`         | Mark posts as read                                                |\n| `mark_unread`       | Mark posts as unread                                              |\n\n## Data\n\nPosts are stored in `~/.rss-mcp/rss.db` (SQLite). The database and FTS5 index are created automatically on first run.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}