Back to the catalog

io.github.KiMiGuel/claude-desktop-bridge

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

Open source Open in the app JSON README (API)

About

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

Details

Kind
MCP servers
Topic
Security & identity
Publisher
kimiguel
Origin
official
Category
ferramentas
Transport
local
Version
1.0.0
Last push
2026-09-08T11:31:26Z
Repository state
ativo
Language
TypeScript
License
MIT
Added
2026-09-08 12:38:16
Updated
2026-09-08 12:38:16
Origin id
io.github.KiMiGuel/claude-desktop-bridge

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](#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](https://github.com/KiMiGuel/Indepentest-CDB/releases/latest).
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:

```bash
# 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](https://github.com/KiMiGuel/indepentest-skills/tree/main/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

```bash
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

More