List Known Vaults
vault.listList all known Obsidian vaults by scanning environment variables and the local Obsidian registry, merged and deduplicated. Optionally force a fresh scan with 'refresh: true'. Reports source, default, active, and existence status per vault.
Instructions
List every Obsidian vault kObsidian knows about, merged and deduplicated across three sources: the operator's OBSIDIAN_VAULT_PATH (the default — always included), any OBSIDIAN_VAULT_=path env vars (explicit named vaults), and — when KOBSIDIAN_VAULT_DISCOVERY is on (the default) — the user's local Obsidian application registry at obsidian.json. Each item reports its source, isDefault, isActive, and exists so the LLM can flag stale or missing vaults. Pass refresh: true to force a fresh scan instead of using the 30s cache. Read-only. NOTE: the obsidian-app source is EXPERIMENTAL — it parses Obsidian's undocumented obsidian.json registry (stable since 1.0 but internal to Obsidian) and may silently stop returning results if Obsidian changes the format; the env-var sources are the documented, stable path.
Examples:
Example 1 — List vaults using the 30-second cache:
{}Example 2 — Force a rescan (obsidian.json changed, new env vars added):
{
"refresh": true
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| refresh | No | When true, force a fresh scan of the filesystem and obsidian.json even if the cache is warm. Default false. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| total | Yes | ||
| items | Yes | ||
| activeVaultId | Yes | Id of the currently session-selected vault, or null when using the env default. | |
| obsidianConfigPath | Yes | Path to the obsidian.json file kObsidian successfully parsed, or null when no config file was found or discovery is disabled. | |
| obsidianConfigError | No | Present only when obsidian.json was located but could not be parsed. The string names the failure reason for debuggability. |