obsidian_status
Retrieve current server configuration, vault root paths, write safety flags, and tool capabilities summary.
Instructions
Return server configuration, vault roots, write safety flags, and tool capability summary.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools.ts:62-89 (handler)The handler function for the 'obsidian_status' tool. It takes no schema arguments and returns the server configuration, vault roots, write safety flags, and tool capability summary.
tool( "obsidian_status", "Return server configuration, vault roots, write safety flags, and tool capability summary.", {}, () => ({ name: "obsidian-mcp-complete", version: "0.1.0", readOnly: config.readOnly, deleteEnabled: config.enableDelete, defaultVault: config.defaultVault, vaults: vaults.listVaults().map((vault) => ({ name: vault.name, root: vault.root })), capabilities: [ "multi-vault filesystem access", "read/write/append/upsert notes", "frontmatter and tag management", "section/block/frontmatter patching", "full-text search with snippets", "BM25 smart search and TF-IDF theme mapping", "semantic RAG via local obsidian-rag CLI", "graph traversal, backlinks, broken links, orphans, shortest path", "batch rename, regex replace, link repair, directory pruning", "task listing and task line updates", "periodic notes, templates, attachments, JSON Canvas auto-layout", "optional Obsidian Local REST API bridge for active note, commands, Dataview, JSONLogic", ], }), { readOnlyHint: true }, ); - src/tools.ts:62-89 (registration)Registration of the 'obsidian_status' tool via the local 'tool' helper function, which wraps server.tool with readOnlyHint, destructiveHint, and idempotentHint annotations.
tool( "obsidian_status", "Return server configuration, vault roots, write safety flags, and tool capability summary.", {}, () => ({ name: "obsidian-mcp-complete", version: "0.1.0", readOnly: config.readOnly, deleteEnabled: config.enableDelete, defaultVault: config.defaultVault, vaults: vaults.listVaults().map((vault) => ({ name: vault.name, root: vault.root })), capabilities: [ "multi-vault filesystem access", "read/write/append/upsert notes", "frontmatter and tag management", "section/block/frontmatter patching", "full-text search with snippets", "BM25 smart search and TF-IDF theme mapping", "semantic RAG via local obsidian-rag CLI", "graph traversal, backlinks, broken links, orphans, shortest path", "batch rename, regex replace, link repair, directory pruning", "task listing and task line updates", "periodic notes, templates, attachments, JSON Canvas auto-layout", "optional Obsidian Local REST API bridge for active note, commands, Dataview, JSONLogic", ], }), { readOnlyHint: true }, ); - src/tools.ts:65-65 (schema)The schema for 'obsidian_status' is an empty object (no arguments required).
{}, - src/tools.ts:41-60 (helper)The 'tool' helper function that wraps each tool registration with readOnlyHint, destructiveHint, idempotentHint annotations and formats results via jsonResult.
const tool = <S extends ToolShape>( name: string, description: string, schema: S, handler: (args: z.objectOutputType<S, z.ZodTypeAny>) => Promise<unknown> | unknown, annotations: { readOnlyHint?: boolean; destructiveHint?: boolean; idempotentHint?: boolean } = {}, ) => { (server.tool as any)( name, description, schema, { readOnlyHint: annotations.readOnlyHint ?? false, destructiveHint: annotations.destructiveHint ?? false, idempotentHint: annotations.idempotentHint ?? false, openWorldHint: false, }, async (args: unknown) => jsonResult(await handler(args as z.objectOutputType<S, z.ZodTypeAny>), pretty), ); };