Second Brain Sync

approved

by Rahil Pirani

Sync your Obsidian notes to your self-hosted Second Brain MCP server on Cloudflare Workers. Search your brain from inside Obsidian. - This plugin has not been manually reviewed by Obsidian staff.

17 stars306 downloadsUpdated 1mo agoMIT

Second Brain Sync

Sync your Obsidian notes to your own AI memory. Pull memories back into your vault as notes. Search everything with semantic search — from inside Obsidian, or from any AI tool that supports MCP.

Built on Cloudflare Workers + Vectorize. Your data stays on your own infrastructure.


What it does

  • Sync any note to your Second Brain with one click or a hotkey
  • Bulk sync all notes with a specific tag
  • Auto-sync tagged notes every time you save
  • Import memories from your Second Brain back into Obsidian as notes
  • Chunk long notes automatically so embeddings stay clean
  • Status bar shows the last time you synced

Getting started

You need a running Second Brain Worker before this plugin is useful. Deploy one for free at:

github.com/rahilp/second-brain-cloudflare

Once your Worker is running:

  1. Open Settings → Second Brain Sync
  2. Paste your Worker URL (e.g. https://second-brain.yourname.workers.dev)
  3. Paste your Auth token (the AUTH_TOKEN secret you set in Cloudflare)
  4. Hit Test to confirm the connection works
  5. Set your Sync tag — any note with this tag in its frontmatter will sync (default: brain)

Syncing notes

Tag a note for sync by adding the tag to its frontmatter:

---
tags:
  - brain
---

You can also use inline tags anywhere in the note body:

#brain

Then sync it:

  • Click the brain icon in the ribbon to sync the current note
  • Ctrl/Cmd + P → "Sync current note"
  • Ctrl/Cmd + P → "Sync all tagged notes"
  • Or turn on auto-sync in settings and forget about it

Importing memories into Obsidian

You can pull memories from your Second Brain back into Obsidian as Markdown notes. This is useful for surfacing things Claude, ChatGPT, or other AI tools have remembered on your behalf.

How to set it up:

  1. In your Second Brain, tag the memories you want to import. You choose the tag — for example obsidian-inbox, or any existing tag you already use.
  2. In Settings → Import behavior, set the Import tag to match that tag exactly.
  3. Run Ctrl/Cmd + P → "Import memories" to pull them in.

Each imported memory becomes a Markdown note in your configured import folder (default: _Second Brain/Inbox) with frontmatter metadata:

---
external_memory_id: "abc123..."
external_memory_source: "claude"
external_memory_created_at: "1748000000000"
imported_at: "2026-06-06T12:00:00.000Z"
tags:
  - obsidian-inbox
---

Already-imported memories are skipped automatically on subsequent runs. You can reset the cache in settings if you need to re-import.


Settings

Connection

SettingDescriptionDefault
Worker URLYour Cloudflare Worker URL
Auth tokenYour AUTH_TOKEN secret

Sync behaviour

SettingDescriptionDefault
Sync modeSync all notes, or only tagged onesTagged only
Sync tagThe tag that marks a note for sync (frontmatter or inline)brain
Auto-sync on saveSync automatically when you saveOff
Auto-sync delayHow long to wait after you stop typing5s

Chunking

SettingDescriptionDefault
Chunk sizeMax characters per chunk1600
Chunk overlapOverlap between chunks to preserve context200

Import behavior

SettingDescriptionDefault
Import folderWhere imported memories are saved in your vault_Second Brain/Inbox
Import tagTag used to filter which memories to import — must match a tag on your memoriesobsidian-inbox
Import limitMax memories to fetch per import run20
Pull on startupAutomatically import when Obsidian opensOff
Reset imported IDs cacheClear the list of already-imported memories

Display

SettingDescriptionDefault
Show sync statusShow last sync time in the status barOn

How chunking works

Notes under the chunk size get stored as a single entry. Longer notes get split into overlapping segments — each one gets its own embedding in Vectorize, so long notes don't produce diluted search results. The overlap keeps sentences at chunk boundaries from losing context.


Support

If this is useful to you, you can buy me a coffee:

Buy Me A Coffee


Development

npm run dev     # watch mode
npm run build   # production build

The plugin source is at github.com/rahilp/second-brain-obsidian-plugin.

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.