So far you've been pointing Claude Code at your vault as a plain directory. MCP (Model Context Protocol) servers give you structured tool access through dedicated commands instead of raw file reads.
You have main options:
StevenStavrakis/obsidian-mcp is a Node.js server that reads vault files directly from disk. Obsidian doesn't need to be running. It gives you tools for full CRUD and tag management.
iansinnott/obsidian-claude-code-mcp is an Obsidian plugin that runs an MCP server inside the app. Claude Code auto-discovers it via WebSocket on port . Obsidian must stay open the entire time.
To set up the first option, add this to your Claude Code settings:
{
"mcpServers": {
"obsidian": {
"command": "npx",
"args": ["-y", "obsidian-mcp", "/path/to/your/vault"]
}
}
}
I'd avoid Python-based MCP servers like MarkusPfundstein/mcp-obsidian in Claude Code CLI. They hit a known BrokenPipeError that kills the connection mid-session.
Each connected MCP server preloads its full tool manifest, so the tools from StevenStavrakis add token overhead to every request. Only connect the server when you're about to work with your vault.