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

claude-desktop-bridge

v1.0.0

Published

Shared local knowledge vault MCP server for Claude Desktop (Chat + Code)

Readme

Claude-Desktop-Bridge

Built for Claude Desktop users. If you only use the standalone claude CLI or Claude.ai in a browser, this isn't for you — skip to Where this works for the one exception.

The problem

Claude Desktop's Chat tab and Code tab live in the same app, one click apart. But they don't share a single byte of context.

Ask Claude something in Chat, switch to Code to actually build it — Claude in Code has no memory the conversation ever happened. Spend an hour in Code working through a decision, hop to Chat to think out loud about what's next — Chat starts from zero. Two tabs, one window, and no connection between them at all.

So close, yet so far. The workaround is re-explaining yourself every time you switch tabs — burning tokens and patience re-deriving context that existed ten seconds ago, one tab over.

The solution

Claude-Desktop-Bridge is a small local MCP server, installed once into Claude Desktop, that gives Chat and Code a shared, persistent knowledge vault. Save a note while working in Code, read it back in Chat five minutes later. Research something in Chat, recall it in Code without repeating yourself.

It's deliberately not a context dump. Instead of pasting whole documents or files into the conversation, Claude gets five narrow tools — save, retrieve, search, update, delete — so it pulls in only what's actually relevant, on demand, instead of loading everything every time.

| Tool | Description | |---|---| | save_note | Save a new note (title, content, optional tags, optional project) | | get_notes | Retrieve notes by id, tags, or project, most recent first | | search_notes | Full-text search over note titles and content | | update_note | Update an existing note's title, content, tags, or project | | delete_note | Permanently delete a note by id |

Notes can be tagged with an optional project field, so if you work across multiple codebases, the vault doesn't turn into one undifferentiated pile — each project's notes can be filtered independently.

Install

  1. Download claude-desktop-bridge.mcpb from Releases.
  2. Drag it onto the Claude Desktop window — or Settings → Extensions → Advanced settings → Install Extension…
  3. That's it. No configuration screen, nothing to fill in. The vault lives at ~/.claude-bridge/vault.db.

Use it

Once installed, just talk normally in either tab — Claude calls save_note, get_notes, search_notes, etc. on its own when it's useful, the same way it uses any other tool. You don't invoke anything manually.

A few things worth knowing:

  • It's proactive, not automatic-automatic. Claude decides when something's worth saving or worth searching for — it's not logging every message. If you want something remembered, it helps to say so ("remember this for later").
  • Tag by project if you work across multiple codebases. Ask Claude to filter by project when recalling notes, so a search in one repo's context doesn't surface notes from an unrelated one.
  • Chat tab "Projects" (claude.ai-style, with Custom Instructions) don't auto-link to a Code tab folder. There's no protocol-level way for Chat to know which codebase it corresponds to. If you want a Chat Project to stay in sync with a specific repo's notes, say so explicitly in that Project's Custom Instructions — e.g. "This project corresponds to the my-repo codebase; use Claude-Desktop-Bridge with project: 'my-repo'."

Where this works

| Surface | Works out of the box? | |---|---| | Claude Desktop — Chat tab | ✅ Yes | | Claude Desktop — Code tab (local sessions) | ✅ Yes | | Standalone claude CLI (terminal, Desktop not required) | ⚠️ Needs one extra step | | Claude Code on the Web / cloud sessions | ❌ Not available (local-only server, no filesystem/network access from the cloud) |

Chat and the Desktop Code tab both connect through the same install automatically — nothing extra to configure there.

The standalone terminal CLI (claude run directly, without the Desktop app open) doesn't read Desktop's extension config, so it won't see Claude-Desktop-Bridge unless you register it explicitly:

# macOS or WSL — imports every MCP server Desktop has configured
claude mcp add-from-claude-desktop

# Any platform, including Linux — register Claude-Desktop-Bridge directly,
# pointed at this repo's built server:
claude mcp add --scope user claude-desktop-bridge -- node /path/to/claude-desktop-bridge/server/index.js

--scope user makes it available in every terminal project, not just the one you ran the command from. Once added, claude mcp list should show claude-desktop-bridge connected — and it reads from the same ~/.claude-bridge/vault.db the Desktop extension uses, so notes saved from the terminal and notes saved from Desktop are the same vault.

Want notes to cost fewer tokens? cdb-companion is a small companion skill that compresses content before it hits save_note/update_note — drop it alongside this extension for a leaner vault.

Building from source

npm install
npm run build   # bundles src/index.ts -> server/index.js
npm run pack     # produces claude-desktop-bridge.mcpb

Requires Node.js 22+ (for the built-in node:sqlite module). Claude Desktop's own built-in Node.js runtime is used automatically when the installed extension runs — end users don't need Node installed separately.

Privacy Policy

Claude-Desktop-Bridge runs entirely on your own machine and makes no network requests.

  • Data collection: Claude-Desktop-Bridge does not collect any data. No analytics, telemetry, or crash reporting of any kind.
  • Usage and storage: Notes you save (titles, content, tags, and project labels) are stored exclusively in a local SQLite database at ~/.claude-bridge/vault.db on the device where the extension is installed.
  • Third-party sharing: No data is ever transmitted anywhere. Claude-Desktop-Bridge has no server component and makes no outbound network connections.
  • Data retention: Notes persist in the local database until you delete them (via the delete_note tool) or delete the database file yourself. Uninstalling the extension does not delete the database file.
  • Contact: For questions about this policy, open an issue on this repository.

License

MIT