Chat with your second brain — search, read and write vault notes through the Local REST API.
An Obsidian vault is years of thinking in markdown — and precisely because it's local plain files, no cloud AI can see it. The Obsidian MCP server bridges that gap on your terms: it talks to the community Local REST API plugin running inside your Obsidian, so your assistant can search, read, create and modify notes while everything stays on your machine.
The retrieval experience is the revelation. Vault search finds strings; an assistant with vault access finds ideas — "what have I written about spaced repetition, and did my opinion change?" gets synthesized from the four notes where you touched the topic, including the two you'd forgotten. Connections you didn't draw yourself surface for free, which is rather the promise of the tools-for-thought genre finally cashed out.
Writing workflows follow naturally: daily notes appended with captured thoughts, meeting transcripts distilled into permanent notes in your own format, messy fleeting notes reorganised, periodic reviews drafted from the week's activity. Since the server works through Obsidian itself, edits respect your vault exactly as if typed — no sync conflicts, no external mutation of files behind Obsidian's back.
Setup: install the Local REST API plugin, copy its API key, add the server via uvx. Two honest caveats. Obsidian must be running for the bridge to work — the REST API lives inside the app. And you're handing an assistant read/write over possibly your most personal corpus; the local-only architecture is exactly why this is tolerable, but keep vault backups regardless (you have git or sync on it anyway — right?).
obsidian_simple_search — Text search across the vaultobsidian_complex_search — Structured queries (e.g. by path pattern)obsidian_get_file_contents — Read a noteobsidian_append_content — Append to a note (daily-note friendly)obsidian_patch_content — Insert content relative to headings or blocksobsidian_list_files_in_vault — Browse the vault structureobsidian_get_periodic_note — Fetch today's daily (or other periodic) noteCompare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.
Questions answered across every note that touches a topic — including the ones you forgot.
Thoughts appended to today's note without leaving the conversation.
Fleeting notes distilled, structures reorganised, weekly reviews drafted.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| list_files_in_vault | Lists all files and directories in the root directory of your Obsidian vault |
| list_files_in_dir | Lists all files and directories in a specific Obsidian directory |
| get_file_contents | Return the content of a single file in your vault. |
| search | Search for documents matching a specified text query across all files in the vault |
| patch_content | Insert content into an existing note relative to a heading, block reference, or frontmatter field. |
| append_content | Append content to a new or existing file in the vault. |
| delete_file | Delete a file or directory from your vault. |
{
"mcpServers": {
"mcp-obsidian": {
"command": "uv",
"args": [
"--directory",
"<dir_to>/mcp-obsidian",
"run",
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY": "YOUR_OBSIDIAN_API_KEY",
"OBSIDIAN_HOST": "<your_obsidian_host>",
"OBSIDIAN_PORT": "<your_obsidian_port>"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
Obsidian running with the Local REST API community plugin enabled. Python with uv for the server.
| Variable | Description | Required |
|---|---|---|
| OBSIDIAN_API_KEY | Declared in the maintainer’s client configuration. | Check documentation |
| OBSIDIAN_HOST | Declared in the maintainer’s client configuration. | Check documentation |
| OBSIDIAN_PORT | Declared in the maintainer’s client configuration. | Check documentation |
Store entities, relations and observations in a local knowledge graph with the reference Memory MCP server.
A structured scratchpad for hard problems — stepwise reasoning with revisions, branches and visible logic.
A vector embedding-based code semantic search tool with MCP server and multi-model integration. Can be used as a pure CLI tool. Supports Ollama for
A comprehensive Go SDK for the Model Context Protocol (MCP) - simplifying AI application development by abstracting away protocol complexities.
Tencent Lexiang AI knowledge base MCP server for searching, managing entries, and editing docs.
This is the MCP-Hive Proxy. It can be loaded by any agentic host in order to access MCP-Hive and is a gateway to other MCP servers. To obtain