User configuration
The only runtime configuration is <Vault>/.obsidian-vault-mcp.json. Its schemaVersion is an independent data-format version, not package version 3.0.1.
config init creates it, config get reads it, and config validate validates it. Its top-level domains are:
literature identity naming attachments frontmatter note
zotero bibtex mineru analysis index base safety
{"analysis":{"folder":"Literature/Analysis","base":"Literature/Analysis/Analysis.base","fullReadsFolder":"Literature/Analysis/full-reads","reviewsFolder":"Literature/Analysis/reviews","passageQaFolder":"Literature/Analysis/qa/passages","figureQaFolder":"Literature/Analysis/qa/figures","conceptsFolder":"Literature/Analysis/concepts"}}
Every Vault-visible path is relative and stays inside the Vault. There is no defaultDryRunForMigration field.
Analysis intent
Express the focus naturally, for example: “Focus on catalytic mechanism, characterization evidence, and experimental conditions; do not repeat the introduction at length.” Workflow outputs such as analysisFocus are written by the workflow; users do not maintain complex custom templates.
Skill customizations
Each SKILL.md has a ## User Customizations area for lasting preferences. The installer replaces only its managed section, preserving that area. It stores hashes for managed text and references, refusing to overwrite modified user content. The actual OpenCode target is <project>/.opencode/skills/; other targets are returned by their installer and must not be guessed from documentation.