website/public/SKILL.md
# Obsidian Skill Combines MCP server safety with Obsidian CLI context. One skill that routes each operation to the right backend. ## Install ``` npx skills add bitbonsai/mcpvault ``` ### What can you do with it? - **Find any note instantly** — Full-text search with relevance ranking across your entire vault. - **Organize with smart tags** — Add, remove, and bulk-manage tags and frontmatter across hundreds of notes. - **Edit notes safely** — Atomic read/write/patch operations with path sandb
npx skillsauth add bitbonsai/mcp-obsidian website/publicInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Combines MCP server safety with Obsidian CLI context. One skill that routes each operation to the right backend.
npx skills add bitbonsai/mcpvault
Each operation maps to exactly one backend. The skill picks the right one automatically.
| Operation | MCP | Obsidian CLI | Git | Notes | |-----------|-----|-------------|-----|-------| | Read note | yes | — | — | Safe, sandboxed read via MCP | | Write / patch note | yes | — | — | Atomic writes with validation | | Search vault | yes | — | — | BM25-ranked full-text search | | Manage tags / frontmatter | yes | — | — | Safe YAML merge | | List all tags with counts | yes | — | — | Filesystem scan, works headless | | Move / rename files | yes | — | — | Path-confirmed moves | | Get active file | — | yes | — | Currently focused file in Obsidian | | Open note in Obsidian | — | yes | — | Open by path in editor | | Daily notes | — | yes | — | Create/read/append with template expansion | | Backlinks | — | yes | — | Incoming links to a note | | Trigger plugin commands | — | yes | — | Workspace actions, plugin APIs | | Sync vault across devices | — | — | yes | Plain git, no Obsidian Sync needed | | Automated backup | — | — | yes | Cron / launchd, no UI needed |
The skill routes by intent:
git add -A -> git commit (if changes) -> git pull --rebase -> git push.git --version
git rev-parse --is-inside-work-tree
git config user.name
git config user.email
git remote -v
If any check fails, ask one targeted setup question with a recommended default.
User: Use git to store my vault and keep it synced.
Skill: I will run a git preflight first (git, repo, identity, remote), then set up anything missing with one targeted question.
Skill: Preflight OK. Running sync: git add -A -> git commit (if changes) -> git pull --rebase -> git push.
Skill: Done. Vault synced to origin/main. No force push used.
MCP Server — Handles all file I/O: reading, writing, searching, patching, and organizing notes. Enforces path sandboxing, validates inputs, and performs atomic operations. The safe default for any vault mutation.
Obsidian CLI — Bridges the gap for operations that need the running desktop app: opening notes in the editor, triggering plugin commands, exporting to PDF via Obsidian URI schemes.
Git Sync — Plain git for vault syncing across devices. No Obsidian Sync subscription required. Works headlessly via cron, launchd, or CI — no app needs to be running.
An Obsidian vault is just a folder of markdown files. You can git init inside it, add a remote, and push/pull like any repo. No proprietary format, no paid service.
# cron job or launchd plist
cd /path/to/vault
git add -A
git commit -m "backup $(date +%Y-%m-%d)"
git push
No Obsidian CLI required. Works on servers, NAS, or any headless machine.
The Obsidian Git community plugin (8k+ stars) adds GUI-driven auto-sync from within the app: auto-commit on interval, pull on startup, push on close, and a source control sidebar.
.gitignore or Git LFS.obsidian/workspace.json to .gitignoreRecommended .gitignore:
.obsidian/workspace.json
.obsidian/workspace-mobile.json
.obsidian/plugins/obsidian-git/data.json
.trash/
Trigger phrases:
Not a fit for:
Chain MCP reads into app actions. Search for a note via MCP, then open it in Obsidian for visual editing.
Steps: search_notes → read_note → open in Obsidian
The skill picks the right backend automatically. File operations route through MCP; app-context actions use Obsidian URI schemes.
Steps: Analyze user intent → Route to MCP or App → Execute with safety checks
Write a draft via MCP, review in Obsidian, then patch corrections back through MCP.
Steps: write_note → review in editor → patch_note
Skill folder structure:
.claude/
skills/
obsidian/
SKILL.md # Gotchas, error recovery, index
resources/
tool-patterns.md # Per-tool response shapes and recipes
obsidian-conventions.md # Vault structure, wikilinks, tags
git-sync.md # Git backup/sync workflows
SKILL.md frontmatter:
---
name: obsidian
description: >
Activate when the user mentions their
Obsidian vault, notes, tags, frontmatter,
daily notes, backup, or sync. Route
operations across MCP, Obsidian CLI/app
actions, and git sync with safe defaults.
metadata:
version: "2.0"
author: bitbonsai
---
tools
Activate when the user mentions their Obsidian vault, notes, tags, frontmatter, daily notes, backup, or sync. Route operations across MCP, Obsidian CLI/app actions, and git sync with safe defaults.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------