{"id":"b0b0ce50-2f1e-4356-926c-ec67521593ba","shortId":"dyNSac","kind":"skill","title":"obsidian-mcp","tagline":"Vault operation safety layer for all Obsidian MCP operations. Load when any vault read/write/search/tag/edit/verify is needed. Do NOT use alone for workflow decisions; combine with companion skill.","description":"# obsidian-mcp\n\n## Constraints\n\n- NO write without fresh read first\n- NO completion claims without readback verification\n- EVERY changed line must trace to user request\n- This skill owns vault operations ONLY; workflow decisions belong to companion skills\n\n## Host Constraints (version-locked — re-verify on upgrade)\n\nThese are based on `obsidian-mcp-server@3.1.5`. They may be stale.\n\n**To re-verify:** call the forbidden API with a trivial test payload. If it returns -32602, constraint holds. If it succeeds, update this table and remove the ban.\n\n| Operation | Status | Alternative |\n|-----------|--------|-------------|\n| `obsidian_patch_note` | Forbidden (last verified: 2026-05-10) | `obsidian_replace_in_note` |\n| `obsidian_append_to_note` | Forbidden (last verified: 2026-05-10) | `obsidian_replace_in_note` or `obsidian_write_note overwrite:false` for new files |\n| `obsidian_write_note overwrite:true` | Forbidden by default | Surgical replace for existing files |\n| `obsidian_delete_note` | Requires user confirmation | List path + risk first |\n\nIf you suspect a constraint is stale, test it. A successful call means the ban should be lifted.\n\n## Tool Selection\n\n| Goal | Tool |\n|------|------|\n| Browse structure | `obsidian_list_notes` (depth 2-4) |\n| Search | `obsidian_search_notes` |\n| Read before edit | `obsidian_get_note format:\"document-map\"` then `content/full` |\n| Create note | `obsidian_write_note overwrite:false` → readback |\n| Edit existing | `obsidian_replace_in_note` → readback |\n| Frontmatter | `obsidian_manage_frontmatter` |\n| Tags | `obsidian_manage_tags` |\n\nWhen selecting tools, read `references/examples.md` for operation patterns.\n\n## Workflow\n\n1. **Locate**: identify targets, read before writing\n2. **Plan**: minimum change only; report unrelated issues, don't fix them\n3. **Write**: use appropriate tool from table above\n4. **Verify**: readback every write; compare actual vs expected\n\nWhen formatting completion reports, read `references/templates.md`.\n\n## Error Recovery\n\n| Error | Response |\n|-------|----------|\n| `-32602` schema error | Stop using that operation; switch to alternative |\n| `note_missing` | Search for candidates; ask user |\n| `file_exists` | Read existing; use surgical replace |\n| 3 repeated failures | Stop and report |\n\n## Trigger Boundary\n\n**Use when:** any vault read/write/search/tag/edit/verify operation.\n\n**Do NOT use for:** triage decisions, synthesis, relationship analysis, health diagnosis, promotion decisions — those belong to companion skills.\n\n## Boundaries\n\n- **Owns:** vault CRUD, frontmatter, tags, search, verification\n- **Delegates to:** all 6 workflow skills for decisions\n- **Never absorbs:** workflow decisions, knowledge interpretation\n\n## Continuations\n\n| Condition | Next |\n|-----------|------|\n| Operation complete | Return to calling workflow skill |\n| Repeated MCP failures | `vault-health-feedback` |\n| 3 failures on same op | Escalate to human |\n\n## Gotchas\n\n**Gotcha 1: Using forbidden APIs \"because they look right\"**\nCurrent host fails with -32602 regardless of intent. Use alternatives. But if you suspect the bug is fixed, test it first.\n\n**Gotcha 2: Trusting section reads as verification**\n`format:\"section\"` has schema issues on long content. Verify with `content/full`.\n\n**Gotcha 3: Making workflow decisions**\nThis skill executes operations, not decides what to do. Defer to companion skills.","tags":["obsidian","mcp","opencode","knowledge","workflow","r007b34r","agent-skills","ai-agents","ai-tools","claude-code-skills","digital-garden","knowledge-base"],"capabilities":["skill","source-r007b34r","skill-obsidian-mcp","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-claude-code-skills","topic-digital-garden","topic-knowledge-base","topic-knowledge-management","topic-knowledge-workflow","topic-llm","topic-mcp","topic-mcp-server","topic-model-context-protocol"],"categories":["opencode-obsidian-knowledge-workflow"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/r007b34r/opencode-obsidian-knowledge-workflow/obsidian-mcp","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add r007b34r/opencode-obsidian-knowledge-workflow","source_repo":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 6 github stars · SKILL.md body (3,399 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T13:22:59.447Z","embedding":null,"createdAt":"2026-05-18T13:22:59.447Z","updatedAt":"2026-05-18T13:22:59.447Z","lastSeenAt":"2026-05-18T13:22:59.447Z","tsv":"'-05':129,143 '-10':130,144 '-32602':106,305,422 '-4':210 '1':259,410 '2':209,266,440 '2026':128,142 '3':278,329,400,458 '3.1.5':85 '4':286 '6':372 'absorb':378 'actual':292 'alon':23 'altern':121,314,427 'analysi':351 'api':97,413 'append':136 'appropri':281 'ask':320 'ban':118,195 'base':79 'belong':63,357 'boundari':336,361 'brows':203 'bug':433 'call':94,192,390 'candid':319 'chang':48,269 'claim':43 'combin':27 'companion':29,65,359,473 'compar':291 'complet':42,297,387 'condit':384 'confirm':176 'constraint':34,68,107,185 'content':453 'content/full':226,456 'continu':383 'creat':227 'crud':364 'current':418 'decid':467 'decis':26,62,348,355,376,380,461 'default':165 'defer':471 'deleg':369 'delet':172 'depth':208 'diagnosi':353 'document':223 'document-map':222 'edit':217,235 'error':301,303,307 'escal':405 'everi':47,289 'execut':464 'exist':169,236,323,325 'expect':294 'fail':420 'failur':331,395,401 'fals':154,233 'feedback':399 'file':157,170,322 'first':40,180,438 'fix':276,435 'forbidden':96,125,139,163,412 'format':221,296,446 'fresh':38 'frontmatt':242,245,365 'get':219 'goal':201 'gotcha':408,409,439,457 'health':352,398 'hold':108 'host':67,419 'human':407 'identifi':261 'intent':425 'interpret':382 'issu':273,450 'knowledg':381 'last':126,140 'layer':7 'lift':198 'line':49 'list':177,206 'load':13 'locat':260 'lock':71 'long':452 'look':416 'make':459 'manag':244,248 'map':224 'may':87 'mcp':3,11,33,83,394 'mean':193 'minimum':268 'miss':316 'must':50 'need':19 'never':377 'new':156 'next':385 'note':124,134,138,148,152,160,173,207,214,220,228,231,240,315 'obsidian':2,10,32,82,122,131,135,145,150,158,171,205,212,218,229,237,243,247 'obsidian-mcp':1,31 'obsidian-mcp-serv':81 'op':404 'oper':5,12,59,119,256,311,342,386,465 'overwrit':153,161,232 'own':57,362 'patch':123 'path':178 'pattern':257 'payload':102 'plan':267 'promot':354 're':73,92 're-verifi':72,91 'read':39,215,253,263,299,324,443 'read/write/search/tag/edit/verify':17,341 'readback':45,234,241,288 'recoveri':302 'references/examples.md':254 'references/templates.md':300 'regardless':423 'relationship':350 'remov':116 'repeat':330,393 'replac':132,146,167,238,328 'report':271,298,334 'request':54 'requir':174 'respons':304 'return':105,388 'right':417 'risk':179 'safeti':6 'schema':306,449 'search':211,213,317,367 'section':442,447 'select':200,251 'server':84 'skill':30,56,66,360,374,392,463,474 'skill-obsidian-mcp' 'source-r007b34r' 'stale':89,187 'status':120 'stop':308,332 'structur':204 'succeed':111 'success':191 'surgic':166,327 'suspect':183,431 'switch':312 'synthesi':349 'tabl':114,284 'tag':246,249,366 'target':262 'test':101,188,436 'tool':199,202,252,282 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-claude-code-skills' 'topic-digital-garden' 'topic-knowledge-base' 'topic-knowledge-management' 'topic-knowledge-workflow' 'topic-llm' 'topic-mcp' 'topic-mcp-server' 'topic-model-context-protocol' 'trace':51 'triag':347 'trigger':335 'trivial':100 'true':162 'trust':441 'unrel':272 'updat':112 'upgrad':76 'use':22,280,309,326,337,345,411,426 'user':53,175,321 'vault':4,16,58,340,363,397 'vault-health-feedback':396 'verif':46,368,445 'verifi':74,93,127,141,287,454 'version':70 'version-lock':69 'vs':293 'without':37,44 'workflow':25,61,258,373,379,391,460 'write':36,151,159,230,265,279,290","prices":[{"id":"5b764f4f-5b64-4b35-828d-85fe39d193c0","listingId":"b0b0ce50-2f1e-4356-926c-ec67521593ba","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"r007b34r","category":"opencode-obsidian-knowledge-workflow","install_from":"skills.sh"},"createdAt":"2026-05-18T13:22:59.447Z"}],"sources":[{"listingId":"b0b0ce50-2f1e-4356-926c-ec67521593ba","source":"github","sourceId":"r007b34r/opencode-obsidian-knowledge-workflow/obsidian-mcp","sourceUrl":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow/tree/master/skills/obsidian-mcp","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:59.447Z","lastSeenAt":"2026-05-18T13:22:59.447Z"}],"details":{"listingId":"b0b0ce50-2f1e-4356-926c-ec67521593ba","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"r007b34r","slug":"obsidian-mcp","github":{"repo":"r007b34r/opencode-obsidian-knowledge-workflow","stars":6,"topics":["agent-skills","ai-agents","ai-tools","claude-code-skills","digital-garden","knowledge-base","knowledge-management","knowledge-workflow","llm","mcp","mcp-server","model-context-protocol","note-taking","obsidian","obsidian-mcp","opencode","opencode-skills","pkm","second-brain","zettelkasten"],"license":"apache-2.0","html_url":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow","pushed_at":"2026-05-14T11:39:07Z","description":"7 AKU-architected skills for OpenCode + Obsidian MCP: obsidian-mcp, inbox-triage, connection-review, weekly-synthesis, context-maintenance, vault-health-feedback, note-promotion. Knowledge Activation v4 with validators, EDD evals, and CI. Built on obsidian-mcp-server. Works with OpenCode and Claude Code.","skill_md_sha":"85825a236108c6ace55d2e759e92f9bbd4b3c938","skill_md_path":"skills/obsidian-mcp/SKILL.md","default_branch":"master","skill_tree_url":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow/tree/master/skills/obsidian-mcp"},"layout":"multi","source":"github","category":"opencode-obsidian-knowledge-workflow","frontmatter":{"name":"obsidian-mcp","license":"Apache-2.0","description":"Vault operation safety layer for all Obsidian MCP operations. Load when any vault read/write/search/tag/edit/verify is needed. Do NOT use alone for workflow decisions; combine with companion skill.","compatibility":"opencode; obsidian-mcp-server@3.1.5"},"skills_sh_url":"https://skills.sh/r007b34r/opencode-obsidian-knowledge-workflow/obsidian-mcp"},"updatedAt":"2026-05-18T13:22:59.447Z"}}