Rule of thumb · Pick Obsidian for solo local-first PKM — it's free for work now, plugins solve almost any extension you need. Pick Bcontext when 2+ humans and agents share the same workspace via a hosted MCP with idempotent writes.
Markdown export at any time. Re-imports are idempotent — running the migration again updates in-place instead of duplicating.
Most tools support a markdown or JSON export. Drop the folder into the bcontext importer — sub-folders become folder nodes, pages become docs.
Run the auto-typer to suggest kinds — tasks, decisions, runbooks, meetings — based on title patterns and frontmatter. Review the diffs as proposals.
Side-by-side view of original + bcontext-typed nodes. Accept what's right, reject what's noise. The whole thing exports back to clean markdown anytime.
The local-first principle that makes Obsidian beloved — your vault is just a folder — comes with a tax on team work and on multi-device agent integration. To share a vault across teammates you bring in Sync (single-user across devices, ~$4–5/mo) plus a third-party plugin, or you self-manage a git workflow. To let Claude Code write into the vault you either expose the filesystem (security implications) or proxy through a community MCP plugin (varies in feature coverage and reliability). For a solo user this is all fine. For a small team building with AI, it's friction in the critical path.
Bcontext keeps the Markdown round-trip — every node exports cleanly, you can `git clone` your workspace export and read it in Obsidian — but adds the multi-user infrastructure on top: workspaces, memberships, RLS, agent tokens, MCP gateway, webhooks. The cost is that the source of truth lives in a Postgres database, not in a filesystem. The benefit is that 15 humans and 5 agents can write to the same workspace concurrently with idempotency and rate limits.
The community MCP plugins for Obsidian (obsidian-mcp-tools, obsidian-mcp-plugin with HTTP transport, Semantic Vault MCP) close part of the gap for solo users. They're impressive work — but they're community-built, scope varies, and the typing happens via plugin convention, not as a write-time guarantee. Bcontext was built MCP-first; the typed graph shape is exactly what an MCP server wants to expose; and the agent-write path is a documented HTTP endpoint with idempotency.
The importer runs both ways. Keep your existing tool live, add bcontext as the agent surface, decide later.