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

@iflow-mcp/kuvopllc-better-bear

v0.4.1

Published

MCP server for Bear notes — read, search, create, edit, tag, and manage notes via CloudKit

Readme

better-bear

better-bear MCP server better-bear MCP server

MCP server for Bear notes. Read, search, create, edit, tag, and manage your notes from Claude Desktop, Claude Code, or any MCP client. Includes a context library for building curated, LLM-optimized knowledge bases from your notes.

Works via CloudKit — no Bear URL scheme, no AppleScript. Your notes stay in sync across all devices.

Context Library — Inspired by Karpathy's LLM Knowledge Base pattern: tag Bear notes with #context, sync to a local folder, and Claude uses index-first retrieval to navigate your knowledge. No RAG pipeline, no vector database — just curated markdown with a manifest.

Quick start

curl -sL https://raw.githubusercontent.com/KuvopLLC/better-bear/main/install.sh | bash
bcli auth
bcli mcp install

This installs the bcli binary, authenticates with iCloud, and sets up the MCP server for Claude Desktop (.mcpb bundle) and Claude Code.

Other install methods

| Method | Command | |--------|---------| | Claude Desktop only | bcli mcp install --desktop-only | | Claude Code only | bcli mcp install --code-only | | Claude Code (direct) | claude mcp add better-bear -- npx -y better-bear | | Config file | bcli mcp install --json | | .mcpb bundle | Download from latest release and double-click |

Prerequisites

  1. Node.js 18+
  2. bcli binary (installed by the script above)
  3. iCloud authentication via bcli auth

Tools

| Tool | Description | |------|-------------| | bear_sync | Sync notes from iCloud (incremental or full) | | bear_list_notes | List notes with optional tag/archive/trash filters | | bear_get_note | Get full note content, metadata, and front matter | | bear_search | Full-text search with date filters (since/before) | | bear_create_note | Create a note with title, body, tags, front matter | | bear_edit_note | Edit note body, append text, replace sections, manage front matter | | bear_trash_note | Move a note to trash | | bear_archive_note | Archive or unarchive a note | | bear_get_tags | List all tags with note counts | | bear_add_tag | Add a tag to a note | | bear_remove_tag | Remove a tag from a note | | bear_rename_tag | Rename a tag across all notes | | bear_delete_tag | Delete a tag from all notes | | bear_find_untagged | Find notes with no tags | | bear_attach_file | Attach images or files to a note | | bear_list_todos | List notes with incomplete TODOs | | bear_get_todos | Get all TODO items in a note | | bear_toggle_todo | Toggle a TODO item complete/incomplete | | bear_note_stats | Library statistics (counts, words, top tags) | | bear_find_duplicates | Find notes with duplicate titles | | bear_health_check | Diagnose library issues |

Context library

| Tool | Description | |------|-------------| | bear_context_setup | Initialize a context library (one-time) | | bear_context_sync | Sync qualifying Bear notes to the library | | bear_context_index | Get the index manifest + freshness metadata | | bear_context_fetch | Load specific files by path | | bear_context_search | Full-text search across all context files | | bear_context_add | Tag a Bear note for inclusion | | bear_context_remove | Untag and remove a note | | bear_context_status | Health stats, token counts, warnings |

How it works

This MCP server wraps bcli, a native macOS binary that talks to Bear's CloudKit container. The server communicates with MCP clients via stdio and spawns bcli commands for each operation.

Authentication tokens are stored locally in ~/.config/bear-cli/auth.json and automatically refreshed when expired.

Links

Privacy Policy

Better Bear does not collect, transmit, or store any personal data on external servers. Authentication tokens and note caches are stored locally on your machine. Network requests go only to Apple CloudKit (to access your notes), GitHub (for updates), and npm (for package resolution). See the full Privacy Policy.

License

MIT