obsidian-mcp
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-mcpsearch my notes for references to quantum computing"
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-mcp
An MCP server that gives an AI agent read and write access to a folder of Markdown notes. Point it at an Obsidian vault, a Logseq graph, or any notes directory.
Four tools, no dependencies beyond the MCP SDK, one file.
search_notes full-text search with surrounding context
read_note read one note by relative path
list_notes enumerate notes, optionally under a subfolder
write_note create a note, or append to an existing oneSetup
pip install -r requirements.txtRegister it with Claude Code by adding a .mcp.json at the root of your
project:
{
"mcpServers": {
"vault": {
"command": "python",
"args": ["/path/to/server.py"],
"env": { "VAULT_ROOT": "/path/to/your/vault" }
}
}
}Restart your session. You'll be asked to approve the server on first use — it can write files, so that prompt is doing real work.
Related MCP server: mcp_notes
Configuration
variable | default | meaning |
| current directory | the folder to expose |
| unset | set to |
| 20 | search result cap |
| 100000 | truncation limit for |
VAULT_READONLY=1 removes the write tool from the advertised list rather than
just refusing calls, so an agent never sees a capability it can't use.
Two things worth knowing
Path traversal is checked properly. Every caller-supplied path is resolved and compared against the vault root:
p = (VAULT_ROOT / rel).resolve()
if not p.is_relative_to(VAULT_ROOT):
raise ValueError(...)Resolve-then-compare, not a string prefix test — .. and symlinks both defeat
string comparison, and without this ../../.ssh/id_rsa is a valid note path.
Errors are returned, not raised. A tool that throws takes the server down, and a dead MCP server is a silent one — the agent simply stops having the capability and carries on without mentioning it. Returning the error text means the agent can see what went wrong and tell you.
Scope
Deliberately small. No embeddings, no vector index, no frontmatter parsing, no graph traversal. Full-text search over Markdown covers most of what an agent actually needs, and it has no index to rebuild or fall out of date.
Search returns one hit per note, which keeps results readable when a term appears forty times in one file.
Licence
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
- Alicense-qualityCmaintenanceMCP server for AI agents to read, write, and organize notes in a local-first, human-in-the-loop note-taking app.Last updated41MIT
- FlicenseAqualityCmaintenanceMCP server for saving, reading, and listing Markdown notes in the filesystem. Enables agents to persistently store reports or notes as plain Markdown files.Last updated3
- Alicense-qualityBmaintenanceExposes a personal markdown-based second brain (Obsidian-style) as an MCP server, enabling agents to search, read, and write notes with privacy controls.Last updatedMIT
- Flicense-qualityBmaintenanceA fully offline, secure MCP server that enables AI agents to search, read, write, and list local markdown notes using SQLite FTS5, with directory traversal protection.Last updated1
Related MCP Connectors
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
MCP server for AgentDocs (agentdocs.eu): read, search, write, comment on & share Markdown docs.
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/dillonpcousins/obsidian-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server