Obsidian MCP

by lwaetzig

Not rated
GitHub

About

Read, write, search, and navigate your Obsidian notes using natural language

Details

Author
lwaetzig
Categories
Productivity, Other, Knowledge Base

Setup

Install Obsidian MCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/lwaetzig/obsidian-mcp

Follow the installation instructions in the repository README, then restart your MCP client.

An MCP (Model Context Protocol) Server that gives AI assistants direct access to your Obsidian vault. Read, write, search, and navigate notes using natural language — with any MCP-compatible client.

- Prerequisites
-
Installation
-
Client Setup

- Claude Desktop
-
Claude Code
-
Cursor
-
VS Code (GitHub Copilot, Cline, Continue)
-
Zed
-
Ollama (via mcphost)

- Node.js 18+nodejs.org
- AnObsidian vault(a folder of.mdfiles — no Obsidian app required at runtime)

You don't run the server manually — your AI client (Claude Desktop, Cursor, etc.) launches it automatically when it starts. All you need to do is build the project once and point your client's config at the output file.

git clone <repo-url> obsidian-mcp cd obsidian-mcp npm install npm run build

This producesdist/index.js— the file every client config will reference.

2. Find your vault path.This is the folder Obsidian opens as your vault, e.g./Users/yourname/Documents/MyVault.

3. Follow the setup for your client below.Each config tells the client:

- where the built file is (dist/index.js)
- what vault to use (OBSIDIAN_VAULT_PATH)

All clients usestdio transport— the server runs as a local subprocess on your machine. No hosting required.

Edit~/Library/Application Support/Claude/claude_desktop_config.json(macOS) or%APPDATA%\Claude\claude_desktop_config.json(Windows):

{ "mcpServers": { "obsidian": { "command": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } } }

Quit and relaunch Claude Desktop. A hammer icon (🔨) in the chat input confirms the server is connected.

Register the server with theclaude mcp addcommand:

claude mcp add obsidian \ node /absolute/path/to/obsidian-mcp/dist/index.js \ -e OBSIDIAN_VAULT_PATH=/path/to/your/vault

The tools are now available in any Claude Code session.

OpenSettings → Cursor Settings → MCP(or edit~/.cursor/mcp.json):

{ "mcpServers": { "obsidian": { "command": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } } }

Restart Cursor. The tools appear automatically in Cursor's AI chat and Composer.

VS Code supports MCP servers through several extensions. Configuration goes in.vscode/mcp.json(project-scoped) or your usersettings.json(global).

Create.vscode/mcp.jsonin your project, or add toUser Settings (JSON):

{ "servers": { "obsidian": { "type": "stdio", "command": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } } }

In GitHub Copilot Chat, switch toAgent mode(@workspace) — the obsidian tools will be available automatically.

Open Cline's settings panel →MCP ServersAdd Server→ paste:

{ "obsidian": { "command": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } }
{ "mcpServers": [ { "name": "obsidian", "command": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } ] }
{ "context_servers": { "obsidian": { "command": { "path": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } } } }

The tools are available in Zed's AI Assistant panel.

Ollama doesn't support MCP natively. Usemcphostas a bridge — it wraps any MCP server and connects it to a local Ollama model.

go install github.com/mark3labs/mcphost@latest

2. Create a config file(~/.mcphost/config.json):

{ "mcpServers": { "obsidian": { "command": "node", "args": ["/absolute/path/to/obsidian-mcp/dist/index.js"], "env": { "OBSIDIAN_VAULT_PATH": "/path/to/your/vault" } } } }

3. Start a chat sessionwith any Ollama model:

Tool-use quality depends heavily on the model. Recommended:qwen2.5:14b,llama3.1:8b,mistral-nemo. Models need to support function/tool calling to use MCP tools reliably.

All tools accept aresponse_formatparameter:"markdown"(default, human-readable) or"json"(structured, for programmatic use).

"Summarise everything in my projects folder" "Create a note called 'Meeting Notes 2025-04-11' with today's agenda" "Find all notes tagged #todo and list what's incomplete" "What notes link back to my 'Home' note?" "Search for anything mentioning the Q2 launch" "Append '- [ ] Follow up with design team' to my Daily Note"

- Path traversal protection— all paths are validated to stay withinOBSIDIAN_VAULT_PATH
- Symlink protection— symlinks inside the vault that point outside it are blocked
- File size limit— notes larger than 5 MB are rejected to prevent memory exhaustion
- Response size limit— responses are truncated at 25,000 characters with a clear notice
- No network access— the server reads and writes local files only; no outbound requests

The codebase is modular by design. To add a new set of tools:
- Createsrc/tools/my-feature.tsand export aregisterMyFeatureTools(server, vault)function
- Add it tosrc/tools/index.ts:

import { registerMyFeatureTools } from './my-feature.js'; export function registerAllTools(server: McpServer, vault: VaultService): void { registerNoteTools(server, vault); registerSearchTools(server, vault); registerFolderTools(server, vault); registerMyFeatureTools(server, vault); // ← add this }

To add vault capabilities (e.g. reading canvas files, template expansion), extendVaultServiceinsrc/services/vault.tsand call the new methods from your tool handlers.

MCP server for Apple Notes with semantic search and CRUD operations. Claude searches, reads, creates, updates, and manages your Apple Notes through natural language.

Integrates Model Context Protocol (MCP) with Obsidian, allowing AI assistants to interact with your notes and vault.

A Model Context Protocol (MCP) Server for https://joplinapp.org/ that enables note access through the https://modelcontextprotocol.io. Perfect for integration with AI assistants like Claude.

A service for reading, writing, and managing markdown documentation with frontmatter metadata.

Connect your AI assistant to your personal knowledge base. Search, save links, create notes and to-dos. AI processes everything automatically.

An MCP server for interacting with Obsidian notes. Requires the OBSIDIAN_VAULT_PATH environment variable to be set.

Interact with your Obsidian vault using natural language.

Interact with your Obsidian vault using the Local REST API plugin, enabling LLMs to access and manage your notes.

Interact with your Obsidian notes and vaults using the Local REST API plugin.

A server for interacting with your Obsidian vault.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.