MCPcopy
hub / github.com/brianpetro/obsidian-smart-connections

github.com/brianpetro/obsidian-smart-connections @4.5.3 sqlite

repository ↗ · DeepWiki ↗ · release 4.5.3 ↗
228 symbols 486 edges 52 files 15 documented · 7%
README

Save time linking, tagging, and organizing: Smart Connections finds relevant notes so you don't have to!

More time for what matters most More time for what matters most

I just stumbled across a forgotten 20-page Google Doc I poured my heart into months ago, and the rush of lost momentum hit me like a punch.
— Brian (December 2022)

[!QUESTION] Is this you? You're an Obsidian power‑user, researcher, writer, or lifelong learner with hundreds or thousands of notes. You capture ideas quickly, but later struggle to find and connect them when it matters most.

[!WARNING] The Problem
Valuable insights disappear in a sea of unlinked notes, forcing endless scrolling, rereading, and duplicated work. Time you wanted for creativity leaks away into manual organization.

Smart Connections v4

[!NOTE] What Smart Connections does
Smart Connections uses local embeddings and your Smart Environment to surface notes that are semantically related to what you are working on right now. Start with the overview, then jump into the Connections view guide, Lookup guide, and settings guide as your workflow gets deeper.

✔️ Zero-setup: ships with a local embedding model that just works

🔐 Private and offline by default

📲 Works on mobile devices

📦 Ultra-lightweight bundle with minimal third party dependencies

🔍 Streamlined codebase with minimal/no dependencies can be audited >3× faster than comparable AI plugins

🌐 Source available core, local-first data

⚔️ Mission driven, user aligned, community supported

[!SUCCESS] What success looks like
With Smart Connections running, ideas resurface when you need them, writing flows faster, and your note taking system finally feels like the trusted second brain you imagined.

[!FAILURE] The Cost of Doing Nothing Stay stuck sifting through files, forgetting past research, and wasting precious creative energy on housekeeping instead of creation. Without help, your vault keeps growing into a maze. You keep redoing work you already did once, and important ideas stay buried.

Walkthrough video

See Smart Connections (and how it pairs with Smart Chat) in action:

Watch on YouTube

Feature walkthrough

Access the Getting Started guide from Smart Connections settings.
Smart Connections Getting Started

Watch the feature walkthrough slideshow or read the Getting Started guide to see how Smart Connections fits into your workflow, including Connections view, Lookup view, inline Pro features, and Smart Environment settings.

Learn more

Core docs

Path Use it for
Smart Connections overview Understand what Smart Connections does end-to-end.
Getting Started Install and reach your first successful workflow fast.
Connections list feature Learn the scan -> confirm -> act workflow for related notes.
Lookup view Run semantic searches across your vault on demand.
Settings guide Configure indexing, filters, ranking, and UI defaults.

Pro surfaces

Path Use it for
Inline connections (Pro) Trigger note suggestions while writing in the editor.
Bases integration (Pro) Blend semantic context with Obsidian Bases workflows.
Pro plugins overview Compare active Pro plugin capabilities and plans.

Pick a path

If you want to... Start here
Reach your first win fast Getting Started
Understand the core daily loop Connections list feature
Search by meaning across the vault Lookup view
Tune results for a large or specialized vault Settings guide
Explore advanced workflows Pro plugins overview

Getting started

It "just works"

Surface relationships between notes with zero-setup.

[!TLDR] 3 step plan
1. Install and enable Smart Connections from Obsidian Community plugins.
2. Keep writing. The built in local model automatically indexes your vault.
3. Open the Connections view to see relevant notes and drag links directly into what you are working on.

Easy installation + zero-setup

Find Smart Connections in the Obsidian Community plugins.

Install and enable, that is it

A local model starts creating embeddings right away. No extra apps, no CLI tools, and no API key required.

Connections view

The Connections view shows notes that are semantically related to your current note. See the full Connections list feature guide for the complete workflow, screenshots, and control breakdown.

Open it from the left ribbon (Connections icon) or from the command palette by running the Open: Connection view command.

Using the Connections view

Connections view results update automatically when you change notes. The name of the current note appears at the bottom left of the Connections view.

  • Result score (yellow underline)
    The score reflects semantic similarity between the result and the current note. Exact numbers depend on the embedding model.
  • Show or hide content (magenta)
    Expand or collapse individual results. Use the top row button to expand or collapse all.
  • Play / pause updates (orange)
    Control whether the Connections view automatically updates when you change notes.
  • Lookup query (teal)
    Opens the Lookup view for a semantic search across your vault.

[!NOTE] Semantic search
Semantic queries do not behave like plain text search. A note that contains the exact query text might not appear if it is not actually similar in meaning.

Interacting with connection results

  • Drag a result into a note to create a link.
  • Hold Cmd or Ctrl while hovering over a result to show Obsidian's Hover Preview.

Hiding and unhiding connections

Right click a result to hide it from the list:

Right click any result and use Unhide all to bring hidden items back:

Lookup view (semantic search)

Use the Lookup view for ad hoc semantic search across your vault. The dedicated Lookup guide shows when to use query-first discovery instead of note-first Connections.

Open it from the ribbon (Lookup icon) or from the command palette by running the Open: Lookup view command.

[!NOTE] Semantic search
Semantic queries do not work like regular search queries. For example, a note containing the exact query text may not be returned in the results.

Random connection function

Jump to a random note that is strongly connected to your current one.

  • Click the random connection icon in the ribbon, or
  • Run the Open: Random note from connections command from the command palette.

Note: the random connection command requires the Connections view to be active.

What's new in v4?

Smart Connections v4 focuses the core plugin on a simple promise: install, enable, and AI-powered connections just work. Advanced configuration and power-user workflows now live in Pro plugins. Read Introducing Pro Plugins to learn more, then use the Pro plugins overview when you are ready to compare advanced workflows.

Pause connections

Use the new Connections "pause" button to freeze the connections results. This allows you to move through your vault while keeping the connections to a specific note visible while you work. See the Connections list feature guide for the full control breakdown.

Copy connections as list of links

Right-click the connections results to copy all links to clipboard. The Connections list feature guide shows when to use copied links versus Send to Smart Context.

Copy all connections content (Context Engineering)

Click the connections view menu button and "Send to Smart Context" (briefcase icon) option. This allows you to quickly copy all content from the connections to clipboard for use as context with any AI chat! The Smart Context view also lets you add or remove items before copying all to the clipboard

Core symbols most depended-on inside this repo

open
called by 24
src/components/connections-settings/header.js
remove
called by 13
src/views/connections_footer_view.js
is_hover_preview_eligible
called by 11
src/components/connections-graph/v1.util.js
resolve_drag_item
called by 8
src/components/connections-graph/v1.util.js
format_connections_as_links
called by 7
src/utils/format_connections_as_links.js
build_prefixed_connection_key
called by 7
src/utils/connections_list_item_state.js
is_connection_pinned
called by 6
src/utils/connections_list_item_state.js
render_view
called by 6
src/views/connections_item_view.js

Shape

Function 134
Method 76
Class 18

Languages

TypeScript100%

Modules by API surface

src/main.js23 symbols
src/components/connections-graph/v1.js20 symbols
src/views/connections_footer_view.js18 symbols
src/components/connections-graph/v1.util.js18 symbols
src/views/connections_item_view.js16 symbols
src/collections/connections_lists.js14 symbols
src/utils/connections_list_item_state.js11 symbols
src/items/connections_list.js11 symbols
src/components/connections-list-item/v3.js9 symbols
src/views/connections_footer_deco.js8 symbols
src/views/settings_tab.js7 symbols
src/components/connections_footer_view.js6 symbols

Dependencies from manifests, versioned

ava6.0.1 · 1×
esbuild0.25.9 · 1×
eslint10.3.0 · 1×
js-tiktoken1.0.19 · 1×
obsidianlatest · 1×
obsidian-smart-envfile:../obsidian-sma · 1×
smart-blocksfile:../jsbrains/sma · 1×
smart-chat-modelfile:../jsbrains/sma · 1×
smart-collectionsfile:../jsbrains/sma · 1×
smart-embed-modelfile:../jsbrains/sma · 1×
smart-entitiesfile:../jsbrains/sma · 1×
smart-file-systemfile:../jsbrains/sma · 1×

For agents

$ claude mcp add obsidian-smart-connections \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact