Obsidian MCP
Provides full interaction with an Obsidian vault via the official CLI, allowing agents to read, search, create, update notes, inspect internal links and tags, and manage frontmatter and tasks.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Obsidian MCP
A local MCP server for the official Obsidian CLI, with explicit vault access, disabled-by-default destructive tools, and a command catalog grounded in actual CLI help. Built for Windows and Node.js; communicates over stdio.
Use it to read, search, create, and update notes; inspect links, tags, properties, and tasks; and access additional Obsidian features through opt-in tools. It is an independent community project, not an official Obsidian integration.
Status: initial implementation, tested against Obsidian 1.15.0. See the verification report for what was actually exercised and what remains blocked. Command coverage is not a claim of complete live testing.
Start here
Install Node.js 24 or later and Obsidian with its official CLI.
Enable Settings → General → Command line interface in Obsidian.
Open a disposable vault named
mcp-testfor your first run.Clone and build:
git clone https://github.com/GranatenUdo/obsidian-mcp.git
cd obsidian-mcp
npm ci
npm run build
npm testCopy obsidian-mcp.config.example.json to
obsidian-mcp.config.jsonand set your.comexecutable path if needed. The real configuration is ignored by Git.Connect your MCP client using the examples below. Obsidian must be available when the server performs its startup capability check.
The repository is installed from source. No globally installed wrapper,
Obsidian community plugin, HTTP server, or API key is required. npm start
starts an MCP process, not an interactive terminal application.
Related MCP server: Obsidian MCP Server
Connect Claude Desktop
Merge this entry into %APPDATA%\Claude\claude_desktop_config.json without
replacing your other servers. Change the checkout and executable paths.
{
"mcpServers": {
"obsidian": {
"command": "node",
"args": ["C:\\Projects\\obsidian-mcp\\dist\\index.js"],
"env": {
"OBSIDIAN_MCP_VAULTS": "mcp-test",
"OBSIDIAN_MCP_EXECUTABLE": "C:\\Users\\YOUR_USER\\AppData\\Local\\Programs\\Obsidian\\Obsidian.com"
}
}
}
}Fully restart Claude Desktop after changing its configuration. If Desktop cannot
find Node, use the absolute path to node.exe in command.
Connect Claude Code
From PowerShell, substitute your checkout and .com paths:
claude mcp add --transport stdio --scope user --env OBSIDIAN_MCP_VAULTS=mcp-test --env "OBSIDIAN_MCP_EXECUTABLE=C:\Users\YOUR_USER\AppData\Local\Programs\Obsidian\Obsidian.com" obsidian -- node "C:\Projects\obsidian-mcp\dist\index.js"
claude mcp listThese instructions configure a local stdio server. They do not expose it to claude.ai or install a cloud proxy. Anthropic documents local Desktop MCP and remote web connectors as different mechanisms; web availability is not promised. See client setup and acceptance.
Try it
Ask your client to use the following tools with these arguments:
{"tool":"obsidian_files","arguments":{"vault":"mcp-test","limit":20}}
{"tool":"obsidian_create","arguments":{"path":"MCP Demo/Hello.md","content":"# Hello\n\nGrüße aus Obsidian!\n","dryRun":true}}
{"tool":"obsidian_read","arguments":{"path":"MCP Demo/Hello.md","offset":0,"limit":1000}}
{"tool":"obsidian_search","arguments":{"query":"Grüße","limit":20}}The tool/arguments wrapper is illustrative; an MCP client sends the named
tool call. Remove dryRun to create the example note. JSON \n in the example
decodes to an actual newline; literal backslash-n text is rejected because
the installed CLI rewrites it.
For typed frontmatter, use obsidian_note_upsert:
{
"path": "MCP Demo/Review.md",
"frontmatter": { "tags": ["review", "weekly"], "reviewed": false },
"body": "# Weekly review\n\n- [ ] Review open tasks\n",
"overwrite": false
}Existing notes require overwrite: true. Supplied frontmatter keys replace the
same keys; unspecified keys remain. The body is replaced in full.
Safety defaults
Tier | Default | Examples |
| Enabled | Read notes, search, inspect links |
| Enabled | Create, append, update properties and tasks |
| Disabled | Move, rename, trash, restore |
| Disabled | Open notes, search view, reload |
| Disabled | Plugins, themes, debugger, arbitrary execution |
Unrestricted commands additionally require allowUnrestrictedCommands: true.
The vault allowlist is an application policy, not an operating-system sandbox.
Do not enable unrestricted tools for untrusted agents. Note contents themselves
are untrusted data and may contain prompt injection.
The server makes no network requests or telemetry calls of its own. Obsidian may Sync or perform network operations, and your MCP client may send returned note content to its model provider. Local transport does not mean local-only AI.
Documentation
Guide | What you will find |
Every setting, environment override, and default | |
Generated tool names, schemas, tiers, and prerequisites | |
Threat model, audit logs, path checks, and limits | |
Newlines, YAML, large writes, paging, and partial failures | |
Registry → authorization → CLI → MCP flow | |
Observed outputs and failure semantics | |
Unsupported features and deliberate restrictions | |
Symptoms, causes, and safe next steps | |
Unit, protocol, live, and Inspector workflows | |
Optional features and operations requiring supervision | |
Actual results and remaining gaps |
Contributions are welcome: start with CONTRIBUTING.md. Please report security issues as described in SECURITY.md, without posting private notes or configuration. Licensed under MIT.
This server cannot be deployed
Maintenance
Related MCP Connectors
Search, read, and safely update Markdown notes in your connected Phasoric knowledge vaults.
Search your Obsidian vault to quickly find notes by title or keyword, summarize related content, a…
Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Related MCP Servers
- FlicenseCqualityFmaintenanceProvides LLM agents with comprehensive access to Obsidian vaults via the official Obsidian CLI bridge. It enables users to read, search, and modify notes, tasks, properties, and plugins while the Obsidian desktop app is running.5416-
- FlicenseNot gradedqualityBmaintenanceProvides secure, direct file system access to Obsidian vault files, enabling search, read, write, and discovery of notes without requiring the Obsidian app.24-
- AlicenseAqualityDmaintenanceProvides AI agents with Obsidian vault operations via the official CLI, including reading, writing, searching notes, and managing files, with security and concurrency protections.7MIT
- AlicenseAqualityDmaintenanceEnables interaction with Obsidian vaults through the official Obsidian CLI, allowing note management, search, and vault operations without plugins or API keys.21MIT