obsidian-vault-mcp
Provides controlled access to a local Obsidian vault, enabling AI agents to list, read, search, create, update, rename, and delete markdown notes.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@obsidian-vault-mcpsearch my vault for 'action items'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Obsidian Vault MCP
HTTP Model Context Protocol server that gives AI agents controlled access to a local Obsidian vault.
Built for agent runtimes (Grok bots, Claude, OpenClaw, custom MCP clients) that need to list, read, search, create, update, rename, and carefully delete markdown notes.
Features
Streamable HTTP MCP endpoint (
/mcp)Bearer / API-key auth
Full-vault mode (
ALLOWLIST=*) or folder allowlistsRead tools:
list_notes,list_folder,read_note,search_notesWrite tools:
create_note,append_note,update_note,create_folder,rename_path,delete_pathBlocks
.obsidian,.git, dotfiles,.env, and key materialAtomic writes + size limits
Health endpoint for ops:
/healthz
Related MCP server: obsidian-autom8
Quick start
npm install
export VAULT_ROOT="/absolute/path/to/your/vault"
export BEARER_TOKEN="$(openssl rand -hex 32)"
export ALLOWLIST="*"
export WRITE_ALLOWLIST="*"
export MODE="read-write"
export PORT=8790
export BIND=127.0.0.1
export PUBLIC_BASE="http://127.0.0.1:8790"
npm startHealth check:
curl -s http://127.0.0.1:8790/healthz | jq .Environment variables
Variable | Required | Default | Description |
| yes | — | Absolute path to the Obsidian vault |
| yes | — | Shared secret for MCP clients |
| no | sample folders | Comma list of relative folders, or |
| no | same as | Write scope; |
| no |
|
|
| no |
| Listen port |
| no |
| Bind address |
| no |
| Public base URL advertised in metadata |
| no |
| Search result cap |
| no |
| Max note size for reads |
| no |
| Max note size for writes |
Auth headers accepted:
Authorization: Bearer <token>X-Api-Key: <token>X-Obsidian-Token: <token>
MCP tools
Read
list_notes— list markdown paths (optional prefix)list_folder— list files/dirs (recursiveoptional)read_note— read one note + simple frontmattersearch_notes— case-insensitive substring search
Write (when MODE=read-write)
create_note— create markdown note (overwriteoptional)append_note— append to noteupdate_note— replace full notecreate_folder— create folder treerename_path— rename/move file or folderdelete_path— delete markdown file or folder (recursivefor non-empty)
Safety:
never serves
.obsidian,.git, hidden paths,.env, or key fileswrite limited to
.md/.markdown/.txtprotected top-level structure anchors cannot be deleted wholesale
no secrets belong in the vault or this server config committed to git
Reverse proxy example (nginx)
location ^~ /obsidian-mcp/ {
proxy_pass http://127.0.0.1:8790/;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header Authorization $http_authorization;
proxy_set_header X-Api-Key $http_x_api_key;
proxy_buffering off;
}Expose only over HTTPS and keep BIND=127.0.0.1 on the Node process.
Grok / agent prompt snippet
You have MCP tools for an Obsidian vault via obsidian-vault-mcp.
Rules:
1. First call list_folder path="" to see top-level structure.
2. Read OBSIDIAN-STRUCTURE.md if present before reorganizing.
3. Prefer append_note for changelogs; do not rewrite history casually.
4. Create notes only as .md under clear topic folders.
5. Never store secrets, tokens, private keys, or .env values.
6. Use search_notes before creating near-duplicate docs.
7. Use rename_path to organize; use delete_path only for clearly obsolete drafts.Security notes
This server is powerful. Treat
BEARER_TOKENlike a password.Prefer network isolation + reverse proxy auth in production.
Full-vault write mode is intentional for trusted internal agents; tighten
WRITE_ALLOWLISTfor less-trusted bots.Do not commit
.env, tokens, or real vault contents.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search, read, and append content to notes in an Obsidian vault via the MCP protocol.2,472BSD Zero Clause
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to remotely access and interact with Obsidian vaults via MCP, supporting note operations, tag management, graph queries, and command execution.4GPL 3.0
- AlicenseNot gradedqualityCmaintenanceExposes an Obsidian notes vault as MCP services, enabling AI assistants to search, read, create, update, and delete notes and folders.241MIT
- FlicenseNot gradedqualityCmaintenanceEnables reading, writing, searching, and managing Obsidian vault notes through MCP tools and prompts, allowing AI agents to interact with local knowledge bases.
Related MCP Connectors
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JulioMCruz/obsidian-vault-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server