UNPKG

obsidian-mcp-server

Version:

MCP server for Obsidian vaults — read, write, search, and surgically edit notes, tags, and frontmatter via the Local REST API plugin. STDIO or Streamable HTTP.

33 lines 1.95 kB
/** * @fileoverview obsidian_open_in_ui — open a file in the Obsidian app UI. * Defaults to `failIfMissing: true` because Obsidian silently creates files on * open otherwise; opt out for an "open or create" flow. * @module mcp-server/tools/definitions/obsidian-open-in-ui.tool */ import { z } from '@cyanheads/mcp-ts-core'; import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors'; export declare const obsidianOpenInUi: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{ path: z.ZodString; failIfMissing: z.ZodDefault<z.ZodBoolean>; newLeaf: z.ZodDefault<z.ZodBoolean>; }, z.core.$strip>, z.ZodObject<{ path: z.ZodString; opened: z.ZodBoolean; createdIfMissing: z.ZodBoolean; }, z.core.$strip>, readonly [{ readonly reason: "path_forbidden"; readonly code: JsonRpcErrorCode.Forbidden; readonly when: "The target path is outside OBSIDIAN_READ_PATHS (and OBSIDIAN_WRITE_PATHS, since write paths imply read access)."; readonly recovery: "Use a path inside the configured read scope. The error data echoes the active scope."; }, { readonly reason: "note_missing"; readonly code: JsonRpcErrorCode.NotFound; readonly when: "`failIfMissing: true` (default) and the path does not exist in the vault. Pass `failIfMissing: false` to allow Obsidian to create the file on open."; readonly recovery: "Verify the path with obsidian_list_notes or obsidian_search_notes first — a typo would otherwise materialize as an empty file. If creation is intended, retry with failIfMissing: false."; }, { readonly reason: "ambiguous_path"; readonly code: JsonRpcErrorCode.Conflict; readonly when: "The parent directory contains multiple files whose names differ only in case (case-sensitive filesystems only)."; readonly recovery: "Retry with one of the exact paths listed in `matches` on the error data."; }], undefined>; //# sourceMappingURL=obsidian-open-in-ui.tool.d.ts.map