npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@cardmagic/reminders

v1.1.0

Published

Fuzzy search and browse Apple Reminders from CLI or MCP server

Readme

reminders

Fuzzy search and browse Apple Reminders from the command line or as an MCP server.

Features

  • Fuzzy search with typo tolerance across all your reminders
  • Create reminders - add new reminders via CLI or MCP
  • Browse by list - view reminders organized by list
  • Filter by status - pending, completed, flagged, or due soon
  • Auto-indexing - index automatically rebuilds when reminders change
  • Multiple interfaces - CLI, MCP server, or Claude Code plugin

Requirements

  • macOS (reads from Apple Reminders database)
  • Node.js 22+
  • Full Disk Access permission for your terminal

Installation

Homebrew

brew install cardmagic/tap/reminders

npm

npm install -g @cardmagic/reminders

Claude Code Plugin (recommended)

Install as a plugin to get skills (auto-invoked) and slash commands:

# Add the marketplace
claude plugin marketplace add cardmagic/reminders

# Install the plugin
claude plugin install reminders@cardmagic

This gives you:

  • Skill: Claude automatically searches reminders when you ask about tasks/todos
  • Slash commands: /reminders:search, /reminders:pending, /reminders:lists, and more

MCP Server

For direct MCP tool access without the plugin:

claude mcp add --transport stdio reminders -- npx -y @cardmagic/reminders --mcp

Or install globally first:

npm install -g @cardmagic/reminders
claude mcp add --transport stdio reminders -- reminders --mcp

From source

git clone https://github.com/cardmagic/reminders.git
cd reminders
pnpm install
pnpm build
pnpm link --global

# Then add as plugin OR MCP server:
claude plugin marketplace add cardmagic/reminders
claude plugin install reminders@cardmagic
# OR
claude mcp add --transport stdio reminders -- reminders --mcp

Granting Full Disk Access

The tool needs to read your Reminders database:

  1. Open System Settings > Privacy & Security > Full Disk Access
  2. Click + and add your terminal app (Terminal.app, iTerm, Warp, etc.)
  3. Restart your terminal

Usage

CLI

# Show pending reminders (default action)
reminders

# Show all reminder lists with counts
reminders lists

# Show reminders in a specific list
reminders list "Groceries"
reminders list "Groceries" --all  # include completed

# Show pending/completed/flagged
reminders pending
reminders completed
reminders flagged

# Show reminders due within N days
reminders due --days 7

# Fuzzy search
reminders search "milk"
reminders search "meeting" --list "Work"
reminders search "groceries" --pending

# Show recently created reminders
reminders recent

# Show index statistics
reminders stats

# Force rebuild the index
reminders index

# Create a new reminder (auto-detects list from content)
reminders add "Buy milk"                    # → Groceries list
reminders add "Call mom" --list "Family" --due tomorrow
reminders add "Meeting prep" --due 2024-01-15 --time 09:00 --priority high
reminders add "Important task" --flagged --notes "Don't forget!"

# Mark a reminder as completed
reminders done "Buy milk"                   # Searches all lists
reminders done "meeting" --list "Work"      # Search in specific list

CLI Options

| Option | Description | |--------|-------------| | -l, --list <name> | Filter by list name | | --completed | Show only completed | | --pending | Show only pending | | --flagged | Show only flagged | | -n, --limit <n> | Max results (default varies by command) | | -a, --all | Include completed (for list command) | | -d, --days <n> | Days to look ahead (for due command) |

Claude Code Plugin

When installed as a plugin, you get:

Skill (auto-invoked): Claude automatically manages reminders when you ask things like:

  • "What's on my grocery list?"
  • "Show my pending tasks"
  • "What reminders are due this week?"
  • "Add milk to my grocery list"
  • "Mark the milk reminder as done"

Slash Commands:

| Command | Description | |---------|-------------| | /reminders:search <query> | Fuzzy search with optional filters | | /reminders:pending | Show pending reminders | | /reminders:completed | Show recently completed | | /reminders:flagged | Show flagged reminders | | /reminders:due | Show reminders due soon | | /reminders:lists | List all reminder lists | | /reminders:list "Name" | Show reminders in a specific list | | /reminders:create "Title" | Create a new reminder (auto-detects list) | | /reminders:done "Title" | Mark a reminder as completed |

MCP Server

When installed as an MCP server, these tools are available:

| Tool | Description | |------|-------------| | search_reminders | Fuzzy search with optional filters | | get_pending_reminders | Get incomplete reminders | | get_completed_reminders | Get recently completed | | get_flagged_reminders | Get flagged reminders | | get_due_reminders | Get reminders due within N days | | list_reminder_lists | List all lists with counts | | get_list_reminders | Get reminders in a specific list | | get_reminder_stats | Get index statistics | | create_reminder | Create a new reminder (auto-detects list) | | complete_reminder | Mark a reminder as completed |

Manual MCP Configuration

For Claude Desktop or VS Code, add to your MCP configuration:

{
  "mcpServers": {
    "reminders": {
      "command": "npx",
      "args": ["-y", "@cardmagic/reminders", "--mcp"]
    }
  }
}

How It Works

  1. Auto-Indexing: On first run (or when reminders change), the tool:

    • Reads Apple Reminders SQLite databases
    • Builds a SQLite FTS5 full-text search index
    • Creates a MiniSearch fuzzy search index
  2. Searching: Queries both indexes for best results with typo tolerance

  3. Storage: Index files are stored in ~/.reminders/:

    • index.db - SQLite FTS5 database
    • fuzzy.json - MiniSearch index
    • stats.json - Index statistics

License

MIT