Obsidian Brain

io.github.sweir1由 GitHub 账号 sweir1 发布v1.7.24更新于 Oct 24, 2026

Obsidian MCP server: semantic search, knowledge graph, and vault editing. No plugin required.

发布方自己的服务:BrainDog

概览

AI 生成的概览

本地 MCP 服务器,让助手对 Obsidian 笔记库中的 Markdown 文件进行语义搜索、知识图谱分析和笔记编辑。

可以做什么
它把 Markdown 文件夹索引到本地 SQLite 数据库,包含分块嵌入和全文检索,并提供 18 个工具。查找与阅读类包括 search、list_notes、read_note;图谱类包括 find_connections、find_path_between、detect_themes、rank_notes。写入类可创建、编辑、链接、移动和删除笔记,维护类可重建索引并查看索引状态。可选配套插件额外提供 active_note、dataview_query 和 base_query。
适用场景
适合希望助手在个人 Obsidian 笔记库或任意 Markdown 笔记文件夹中检索和推理,又不想运行 Obsidian 或安装 REST API 插件的场景。可用于语义检索、发现笔记之间的链接与主题,以及让助手起草或整理笔记。
运行要求
通过 npx 以 stdio 在本地运行,需要 Node.js 20 或更高版本和桌面版 MCP 客户端。必须设置 VAULT_PATH,为笔记库文件夹的绝对路径。首次启动会下载嵌入模型(约 34 MB)并建立索引,工具可能需 30-60 秒才出现。可选的 Ollama 嵌入后端需要运行中的 Ollama 服务。无需 API 密钥或账号。
安装前请注意
服务器直接读写笔记库文件夹,写入类工具可创建、编辑、移动和删除笔记,因此请把 VAULT_PATH 指向已备份或纳入版本控制的笔记库。索引与嵌入缓存存放在 DATA_DIR,配置存放在 OBSIDIAN_BRAIN_CONFIG_DIR。使用 Ollama 提供方时,除非关闭自动拉取,模型可能被自动下载。可选配套插件会通过本机 HTTP 端点暴露 Obsidian 实时状态。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Obsidian Brain,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

obsidian-brain

[npm version] [License: Apache 2.0] [Node ≥ 20] [GitHub stars]

A standalone Node MCP server that gives Claude (and any other MCP client) semantic search + knowledge graph + vault editing over an Obsidian vault. Runs as one local stdio process — no plugin, no HTTP bridge, no API key, nothing hosted. Your vault content never leaves your machine.

📖 Full docs → sweir1.github.io/obsidian-brain Companion plugin → sweir1/obsidian-brain-plugin (optional — unlocks active_note, dataview_query, base_query)

Contents — Why · Quick start · What you get · How it works · Companion plugin · Troubleshooting · Recent releases

Why obsidian-brain?

  • Works without Obsidian running — unlike Local REST API-based servers, obsidian-brain reads .md files directly from disk. Obsidian can be closed; your vault is just a folder.
  • No Local REST API plugin required — nothing to install inside Obsidian for the core experience.
  • Chunk-level semantic search with RRF hybrid retrieval — embeddings at markdown-heading granularity, fused with FTS5 BM25 via Reciprocal Rank Fusion. Finds the exact chunk, ranks on meaning.
  • The only Obsidian MCP server with PageRank + Louvain + graph analytics — ask for your vault's most influential notes, bridging notes, theme clusters. Nobody else ships this.
  • Ollama provider for high-quality local embeddings — switch to qwen3-embedding:0.6b, nomic-embed-text, bge-m3, etc. with one env var.
  • All in one npx install — no clone, no build, no API key, no hosted endpoint. Vault content never leaves your machine.

Quick start

One-line install (macOS + Claude Desktop)

bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/sweir1/obsidian-brain/main/scripts/install.sh)"

Installs Homebrew + Node 20+ if you don't already have them, adds the /usr/local/bin symlinks that Claude Desktop needs, merges obsidian-brain into your claude_desktop_config.json, opens the Full Disk Access pane for you to toggle Claude on, and relaunches Claude. You'll be asked for your macOS password once (for Homebrew + the symlinks) and your vault path once. Everything else is automatic. Audit what it does: scripts/install.sh.

Manual install

Requires Node 20+ and an Obsidian vault (or any folder of .md files — Obsidian itself is optional).

Wire obsidian-brain into your MCP client. Example for Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

json
{  "mcpServers": {    "obsidian-brain": {      "command": "npx",      "args": ["-y", "obsidian-brain@latest", "server"],      "env": { "VAULT_PATH": "/absolute/path/to/your/vault" }    }  }}

Quit Claude Desktop (⌘Q on macOS) and relaunch. That's it.

[!NOTE] On first boot the server auto-indexes your vault and downloads a ~34 MB embedding model. Tools may take 30–60 s to appear in the client. Subsequent boots are instant.

[!TIP] Not a developer? The macOS walkthrough covers Homebrew, Node, the GUI-app PATH fix, and Full Disk Access step-by-step.

For every other MCP client (Claude Code, Cursor, VS Code, Jan, Windsurf, Cline, Zed, LM Studio, JetBrains AI, Opencode, Codex CLI, Gemini CLI, Warp): see Install in your MCP client.

→ Full env-var reference: Configuration → Model / preset / Ollama details: Embedding model → Migrating from aaronsb's plugin: Migration guide

What you get

18 MCP tools grouped by intent:

  • Find & read — search, list_notes, read_note
  • Understand the graph — find_connections, find_path_between, detect_themes, rank_notes
  • Write — create_note, edit_note, apply_edit_preview, link_notes, move_note, delete_note
  • Live editor (requires companion plugin) — active_note, dataview_query, base_query
  • Maintenance — reindex, index_status

→ Arguments, examples, and response shapes: Tool reference

How it works

mermaid
flowchart LR    Client["<b>MCP Client</b><br/>Claude Desktop · Claude Code<br/>Cursor · Jan · Windsurf · ..."]
    subgraph OB ["obsidian-brain (Node process)"]        direction TB        SQL["<b>SQLite index</b><br/>nodes · edges<br/>FTS5 · vec0 embeddings"]        Vault["<b>Vault on disk</b><br/>your .md files"]        Vault -->|"parse + embed"| SQL        SQL -.->|"writes"| Vault    end
    Client <-->|"stdio JSON-RPC"| OB

Retrieval and writes both go through a SQLite index: reads are microsecond-cheap, writes land on disk immediately and incrementally re-index the affected file. Embeddings are chunk-level (heading-aware recursive chunker preserving code + LaTeX blocks), and search's default hybrid mode fuses chunk-level semantic rank with FTS5 BM25 via Reciprocal Rank Fusion.

→ Deeper write-up — why stdio, why SQLite, why local embeddings: Architecture → Live watcher behaviour + debounces: Live updates → Scheduled reindex (macOS launchd / Linux systemd): Scheduled indexing (macOS) · (Linux)

Companion plugin (optional)

An optional Obsidian plugin at sweir1/obsidian-brain-plugin exposes live Obsidian runtime state — active editor, Dataview results, Bases rows — over a localhost HTTP endpoint. When installed and Obsidian is running, active_note, dataview_query, and base_query light up. Install via BRAT with repo ID sweir1/obsidian-brain-plugin.

Ship plugin and server at the same major.minor — server v1.7.x pairs with plugin v1.7.x. Patch-version drift is fine.

→ Security model, capability handshake, Dataview / Bases feature coverage: Companion plugin

Troubleshooting

Four most common:

  • "Connector has no tools available" in Claude Desktop — usually the server crashed at startup. Check ~/Library/Logs/Claude/mcp-server-obsidian-brain.log. Fix: npm install -g obsidian-brain@latest, quit Claude (⌘Q), relaunch.
  • ERR_DLOPEN_FAILED / NODE_MODULE_VERSION mismatch — better-sqlite3 built against a different Node ABI. Fix: PATH=/opt/homebrew/bin:$PATH npm rebuild -g better-sqlite3.
  • Vault path not configured — VAULT_PATH is unset. Set it in the env block of your client config or shell.
  • Old version loading via npx (your client still shows the previous release after a publish) — stale npx cache. Fix: rm -rf ~/.npm/_npx, then restart your client. Keeping @latest in your config prevents this.

→ Full troubleshooting guide (watcher not firing, stale index, running multiple clients, timeouts, embedding-dim mismatch, log locations): docs/troubleshooting.md

Recent releases

  • v1.7.24 (2026-05-16) — embeddings.md BYOM callout + 5 devDep bumps
  • v1.7.23 (2026-05-16) — BYOM Ollama auto-pull gate + logger sweep + SIGTERM unit test
  • v1.7.22 (2026-05-15) — structured stderr (NDJSON) + Ollama preparing-state + dependabot security bumps + SIGTERM drain integration test
  • v1.7.21 (2026-04-27) — install.sh vault-picker fix + auto ollama pull + docs/test polish
  • v1.7.20 (2026-04-27) — Ollama prefix-lookup bug + 13 audit polish items

→ Full changelog: docs/CHANGELOG.md · Forward plan: docs/roadmap.md · Build from source: docs/development.md

Credits

Thanks to obra/knowledge-graph and aaronsb/obsidian-mcp-plugin for the ideas and code this project draws on. Also Xenova/transformers.js (local embeddings), graphology (graph analytics), and sqlite-vec (vector search in SQLite).

Related projects

  • apple-notes-brain — sibling MCP server for Apple Notes on macOS: read, write, and search with full Markdown round-trip in both directions.

License

Apache License 2.0 — Copyright 2026 sweir1.

来源:README.md,提交 bcc97e2

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.7.24最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Brain 集成