A universal AI bridge for Obsidian vaults using the Model Context Protocol (MCP) standard. Connect any MCP-compatible AI assistant to your knowledge base - works with Claude, ChatGPT, and future AI tools. This server provides safe read/write access to your notes while preventing YAML frontmatter corruption.
Works with any MCP-compatible AI assistant including Claude Desktop, Claude Code, ChatGPT Desktop (Enterprise+), OpenCode, Gemini CLI, OpenAI Codex, IntelliJ IDEA 2025.1+, Cursor IDE, Windsurf IDE, Ontheia, and future AI platforms that adopt the MCP standard.
https://github.com/user-attachments/assets/657ac4c6-1cd2-4cc3-829f-fd095a32f71c
bash
# Download from https://nodejs.org (v18.0.0 or later)
# or use a package manager like nvm, brew, apt, etc.
If using the published package:
bash
npx @modelcontextprotocol/inspector npx @bitbonsai/mcpvault@latest /path/to/your/vault
Claude Desktop - Copy this to claude_desktop_config.json:
json
{
"mcpServers": {
"obsidian": {
"command": "npx",
"args": ["@bitbonsai/mcpvault@latest", "/path/to/your/vault"]
}
}
}
Claude Code - Copy this to ~/.claude.json:
json
{
"mcpServers": {
"obsidian": {
"command": "npx",
"args": ["@bitbonsai/mcpvault@latest", "/path/to/your/vault"],
"env": {}
}
}
}
OpenCode - Copy this to ~/.config/opencode/opencode.json
json
{
"mcp": {
"obsidian": {
"type": "local",
"command": [
"npx",
"@bitbonsai/mcpvault@latest",
"/path/to/your/vault/"
],
"enabled": true
}
}
}
Replace /path/to/your/vault with your actual Obsidian vault path.
For other platforms, see detailed configuration guides below.
Success indicators: Your AI should be able to list files and read notes from your vault.
Built on the open Model Context Protocol standard, MCPVault is not locked to any single AI provider. As more AI assistants adopt MCP, your investment in this tool grows more valuable. Today it works with Claude and ChatGPT - tomorrow it will work with whatever AI tools emerge.
Instead of waiting for each AI company to build Obsidian integrations, MCPVault provides a universal adapter that works with any MCP-compatible assistant. One tool, endless possibilities.
MCP is an open protocol. You're not tied to any specific vendor or platform. Your notes remain yours, accessible through any compatible AI assistant.
.obsidian directory and other system filesread_note, write_note, patch_note, delete_note, move_note, move_filelist_directoryread_multiple_notessearch_notes with multi-word matching and BM25 relevance rerankingget_frontmatter, update_frontmatter, get_notes_info, get_vault_statsmanage_tags (add, remove, list)overwrite, append, prepend for flexible content editingprettyPrint: true for human-readable debugging.md, .markdown, .txt, .base, or .canvas files)No installation needed! Use npx to run directly:
npx @bitbonsai/mcpvault@latest /path/to/your/obsidian/vault
If you omit the vault path, the server uses your current working directory as the vault root.
nvm use # Uses Node 24 from .nvmrc
npm install # Corepack automatically uses npm 10.9.0
npx @modelcontextprotocol/inspector npm start /path/to/your/vault
Pro tip: Use MCP Inspector to test all server functionality before configuring with AI clients:
# Install globally for easier access
npm install -g @modelcontextprotocol/inspector
# Test with any vault
mcp-inspector npx @bitbonsai/mcpvault@latest /path/to/your/vault
End users:
npx @bitbonsai/mcpvault@latest
npx @bitbonsai/mcpvault@latest /path/to/your/obsidian/vault
npx @bitbonsai/mcpvault@latest ./Vault
Developers:
npm start
npm start /path/to/your/obsidian/vault
npm start ./Vault
Add to your Claude Desktop configuration file:
Single Vault:
{
"mcpServers": {
"obsidian": {
"command": "npx",
"args": [
"@bitbonsai/mcpvault@latest",
"/Users/yourname/Documents/MyVault"
]
}
}
}
Multiple Vaults:
{
"mcpServers": {
"obsidian-personal": {
"command": "npx",
"args": [
"@bitbonsai/mcpvault@latest",
"/Users/yourname/Documents/PersonalVault"
]
},
"obsidian-work": {
"command": "npx",
"args": [
"@bitbonsai/mcpvault@latest",
"/Users/yourname/Documents/WorkVault"
]
}
}
}
Configuration File Locations:
~/Library/Application Support/Claude/claude_desktop_config.jsonC:\Users\{username}\AppData\Roaming\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonYou can also access this through Claude Desktop → Settings → Developer → Edit Config
Requirements: ChatGPT Enterprise, Education, or Team subscription (not available for individual Plus users)
ChatGPT uses MCP through Deep Research and developer mode. Configuration is done through the ChatGPT interface:
Note: ChatGPT Desktop's MCP integration is currently limited to enterprise subscriptions and uses a different setup process than file-based configuration.
Claude Code uses .claude.json configuration file:
User-scoped (recommended):
Edit ~/.claude.json:
{
"mcpServers": {
"obsidian": {
"command": "npx",
"args": ["@bitbonsai/mcpvault@latest", "/path/to/your/vault"],
"env": {}
}
}
}
Project-scoped:
Edit .claude.json in your project or add to the projects section:
{
"projects": {
"/path/to/your/project": {
"mcpServers": {
"obsidian": {
"command": "npx",
"args": ["@bitbonsai/mcpvault@latest", "/path/to/your/vault"]
}
}
}
}
}
Using Claude Code CLI:
claude mcp add obsidian --scope user npx @bitbonsai/mcpvault /path/to/your/vault
On Goose Desktop settings, click Add custom extension, and on the command field add:
npx @bitbonsai/mcpvault@latest /path/to/your/vault
Confirmed MCP Support:
Most modern MCP clients use similar JSON configuration patterns. Refer to your specific client's documentation for exact setup instructions.
npm install -g @bitbonsai/mcpvault.obsidian/** patternsRun with error logging:
npx @bitbonsai/mcpvault /path/to/vault 2>debug.log
Run the test suite:
npm test
read_noteRead a note from the vault with parsed frontmatter.
Request:
{
"name": "read_note",
"arguments": {
"path": "project-ideas.md",
"prettyPrint": false
}
}
Response (optimized for tokens):
{
"fm": {
"title": "Project Ideas",
"tags": ["projects", "brainstorming"],
"created": "2023-01-15T10:30:00.000Z"
},
"content": "# Project Ideas\n\n## AI Tools\n- MCP server for Obsidian\n- Voice note transcription\n\n## Web Apps\n- Task management system"
}
Response (with prettyPrint: true):
```json { "fm": { "title": "Project Ideas", "tags": ["projects", "brainstorming"], "created": "2023-01-15T10:30:00.00
$ claude mcp add mcpvault \
-- python -m otcore.mcp_server <graph>