The vault to scan.
FrontmatterSearchArgs. key is required and
exactly one of equals / exists / contains must be set.
{ key, total_matches, matches } — total_matches equals
matches.length (counts the truncated result, not the full count).
Trust boundary — in-process API that trusts its key length.
The MCP boundary (obsidian_frontmatter_search in tool-registry.ts)
caps key at MAX_FRONTMATTER_KEY_LEN (256, rc.13 AUD-04) so a remote
bearer client cannot drive an unbounded multi-MB key through the
whole-vault per-note nfcLower(key) fold; direct internal callers are
not capped and must pass sane keys.
Find every note whose frontmatter matches a predicate.
Useful as a precursor to bulk operations like frontmatterSet: "find all notes with
status: draftand set their status topublished", or "find notes whosealiasesarray contains a typo". Single predicate per call by design — combine with multiple calls if you need AND/OR logic.