@dan_cmos/obsidian-vault-mcp
v0.1.1
Published
MCP server for an authenticated local Obsidian bridge
Maintainers
Readme
Obsidian Vault MCP
@dan_cmos/obsidian-vault-mcp is an MCP server for an authenticated local Obsidian bridge.
It preserves the existing obsidian_* tool contract and OBSIDIAN_BRIDGE_* environment variables while allowing each consuming project to scope itself to a stable root inside a shared vault.
Security Model
- the MCP only knows a bridge URL, a bearer token, and an optional project root
- no absolute vault path is stored in git
- the bridge token is generated and stored inside the Obsidian plugin
- the bridge host is configurable for local Windows and WSL setups
Install
From npm:
npm install -g @dan_cmos/obsidian-vault-mcpThe package currently targets the npm scope @dan_cmos.
Or run without a global install from a compatible MCP client:
{
"mcpServers": {
"obsidian-vault": {
"command": "npx",
"args": ["-y", "@dan_cmos/obsidian-vault-mcp"],
"env": {
"OBSIDIAN_BRIDGE_BASE_URL": "http://127.0.0.1:27124",
"OBSIDIAN_BRIDGE_TOKEN": "<copied-from-plugin>",
"OBSIDIAN_BRIDGE_PROJECT_ROOT": "Central Vault/Example Project"
}
}
}
}For local development from this repository:
{
"mcpServers": {
"obsidian-vault": {
"command": "node",
"args": ["/absolute/path/to/apps/obsidian-mcp/dist/index.js"],
"env": {
"OBSIDIAN_BRIDGE_BASE_URL": "http://127.0.0.1:27124",
"OBSIDIAN_BRIDGE_TOKEN": "<copied-from-plugin>",
"OBSIDIAN_BRIDGE_PROJECT_ROOT": "Central Vault/Example Project"
}
}
}
}Required Local Environment
Default local setup:
OBSIDIAN_BRIDGE_BASE_URL=http://127.0.0.1:27124
OBSIDIAN_BRIDGE_TOKEN=<copied-from-plugin>
OBSIDIAN_BRIDGE_PROJECT_ROOT=Central Vault/Example ProjectWindows Obsidian plus WSL MCP client:
OBSIDIAN_BRIDGE_BASE_URL=http://<windows-wsl-host-ip>:27124
OBSIDIAN_BRIDGE_TOKEN=<copied-from-plugin>
OBSIDIAN_BRIDGE_PROJECT_ROOT=Central Vault/Example ProjectOBSIDIAN_BRIDGE_PROJECT_ROOT is optional. When set, the MCP automatically scopes:
obsidian_list_notesobsidian_search_notesobsidian_upsert_noteobsidian_patch_headingobsidian_patch_frontmatterobsidian_read_noteobsidian_resolve_note
Compatibility notes:
OBSIDIAN_PROJECT_ROOTis accepted as an alias forOBSIDIAN_BRIDGE_PROJECT_ROOT- the legacy bin alias
multify-obsidian-mcpremains available obsidian_*tool names are unchanged
Tools
obsidian_healthobsidian_list_notesobsidian_resolve_noteobsidian_read_noteobsidian_search_notesobsidian_upsert_noteobsidian_patch_headingobsidian_patch_frontmatter
Development
npm install --package-lock=false
npm test
npm run check
npm run buildSemantic Versioning
This package uses semantic versioning for the MCP surface:
major: breaking changes to MCP tool names, environment variables, output contracts, or runtime requirementsminor: new backward-compatible MCP capabilitiespatch: backward-compatible fixes, packaging fixes, and security fixes- prereleases: use
prepatch,preminor,premajor, orprereleasewhen you want an-rc.Nstyle publish first
Version management commands:
npm run version:patch
npm run version:minor
npm run version:major
npm run version:prepatch
npm run version:preminor
npm run version:premajor
npm run version:prereleaseEach command updates:
package.jsonsrc/version.tsCHANGELOG.md
Release
This package is released from the monorepo via .github/workflows/release-mcp.yml.
Before cutting a release:
npm run version:patch # or minor / major / prereleaseThen review CHANGELOG.md, run the repo release gate, and push the matching mcp-vx.y.z tag.
