Vault Cortex exposes a comprehensive suite of MCP tools organized into domain-specific modules under mcp-core/tools/. These tools are optimized against Glama's Tool Description Quality Score (TDQS) model to ensure LLM agents select and invoke the correct tool with high efficiency.
The registerTools function in tool-definitions.ts acts as the central orchestrator. It composes the full toolset by calling registration functions for each domain group. Notably, the Memory Layer tools are conditionally registered based on the memoryEnabled configuration flag src/vault-mcp/mcp-core/tool-definitions.ts38-40 Similarly, asset tools are registered only when fileToolsEnabled is true src/vault-mcp/mcp-core/tool-definitions.ts48-50
The following diagram illustrates how the registerTools function bridges the configuration and the protocol surface.
Diagram: Tool Registration and Composition
Sources: src/vault-mcp/mcp-core/tool-definitions.ts20-53 src/vault-mcp/mcp-core/__tests__/tool-definitions.test.ts14-37
Module: vault-crud-tools.ts
These tools handle direct filesystem operations, including reading, writing, and surgical modification of notes.
| Tool Name | Purpose | Implementation Reference |
|---|---|---|
vault_read_note | Read full content, properties, outline, or specific sections. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts51-119 |
vault_write_note | Create or overwrite a note with properties and body. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts14-24 |
vault_patch_note | Surgical H1-H6 heading-targeted edits (append/prepend/replace). | src/vault-mcp/vault-operations/vault-patcher.ts9 |
vault_replace_in_note | Find and replace text within a note in place. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts18 |
vault_delete_span | Delete a specific line range or heading section. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts19 |
vault_list_notes | List notes by folder or globally. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts20 |
vault_delete_note | Delete a note file. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts21 |
vault_move_note | Rename/move a note and rewrite incoming wikilinks. | src/vault-mcp/vault-operations/note-mover.ts8 |
vault_update_properties | Merge or delete specific frontmatter keys. | src/vault-mcp/mcp-core/tools/vault-crud-tools.ts23 |
vault_read_note supports an outline mode and a heading mode. This allows agents to fetch a note's structure (headings and leading callouts) before requesting a specific section, significantly reducing token consumption for large files. The modes properties_only, outline, and heading are mutually exclusive src/vault-mcp/mcp-core/tools/vault-crud-tools.ts66
Sources: src/vault-mcp/mcp-core/tools/vault-crud-tools.ts14-24 src/vault-mcp/mcp-core/tools/vault-crud-tools.ts51-119
Module: search-tools.ts
Provides access to the SQLite FTS5 search index, vector embeddings, and the link graph.
The vault_search tool is designed for hybrid queries. When embeddingEnabled is true, it combines full-text search with vector similarity via Reciprocal Rank Fusion (RRF) and an optional cross-encoder reranker src/vault-mcp/mcp-core/tools/search-tools.ts37-62
Diagram: Search Query Execution
vault_get_backlinks, vault_get_outgoing_links, and vault_find_orphans src/vault-mcp/mcp-core/tools/search-tools.ts20-22vault_list_tags, vault_list_property_keys, and vault_list_property_values src/vault-mcp/mcp-core/tools/search-tools.ts14-18vault_search_by_tag, vault_search_by_folder, and vault_search_by_property src/vault-mcp/mcp-core/tools/search-tools.ts13-19Sources: src/vault-mcp/mcp-core/tools/search-tools.ts11-23 src/vault-mcp/mcp-core/tools/search-tools.ts34-87
Module: task-tools.ts
Provides a Kanban-aware, vault-wide task index.
vault_list_tasksQueries the dedicated tasks table with structured filters for status, date fields (created, scheduled, start, due, done, cancelled), priority, and folder/tag/heading scope.
heading (lane) information src/vault-mcp/mcp-core/tools/task-tools.ts63vault_update_taskApplies status, priority, and/or lane changes in a single call.
taskUpdater src/vault-mcp/mcp-core/tools/task-tools.ts7Sources: src/vault-mcp/mcp-core/tools/task-tools.ts1-63 src/vault-mcp/mcp-core/tool-definitions.ts42-46
Module: memory-tools.ts
Manages structured context in the About Me/ (or configured MEMORY_DIR) directory. These tools are active only if MEMORY_ENABLED=true src/vault-mcp/config.ts108-112
vault_get_memory: Reads dated bullet entries from H2 sections. Organizes data newest-first by default src/vault-mcp/mcp-core/tools/memory-tools.ts31-35vault_update_memory: Appends new dated entries. It implements a "shrink-guard" safety check to prevent overwriting newer on-disk data with stale cached content src/vault-mcp/vault-operations/memory-store.ts28-43 It is idempotent; exact duplicates (same date + text) are no-ops src/vault-mcp/mcp-core/tools/memory-tools.ts100vault_memory_recall: Entry-granular retrieval over the memory layer src/vault-mcp/mcp-core/tools/memory-tools.ts13Sources: src/vault-mcp/mcp-core/tools/memory-tools.ts8-14 src/vault-mcp/vault-operations/memory-store.ts28-43
Module: daily-note-tools.ts
A specialized interface for Obsidian's Daily Notes plugin.
vault_get_daily_note:
path, content (string or null), and an exists boolean src/vault-mcp/mcp-core/tools/daily-note-tools.ts36Sources: src/vault-mcp/mcp-core/tools/daily-note-tools.ts1-71 src/vault-mcp/vault-operations/daily-notes.ts4
Module: asset-tools.ts
Handles reading and discovering non-markdown files like images, PDFs, and Canvases. Registered when FILE_TOOLS_ENABLED is true src/vault-mcp/config.ts114-118
vault_read_fileDispatches file reads to specialized handlers based on extension via assetOperations.readAssetContent src/vault-mcp/vault-operations/asset-operations.ts21-23:
maxImageOutputBytes budget src/vault-mcp/vault-operations/asset-operations.ts35-36.canvas files are linearized into a readable markdown-like structure src/vault-mcp/vault-operations/asset-operations.ts10raw: true is set. Uses unpdf for text and page rendering src/vault-mcp/vault-operations/asset-operations.ts123-163vault_list_filesBrowses non-markdown assets with folder and extension filters, providing per-extension counts to help agents navigate large attachment directories src/vault-mcp/vault-operations/asset-operations.ts24-28
Sources: src/vault-mcp/mcp-core/tools/asset-tools.ts80-115 src/vault-mcp/vault-operations/asset-operations.ts16-31
safeHandler WrapperAll tool handlers wrap their core logic in safeHandler or safeHandlerContent (defined in tool-helpers.ts). This utility ensures standardized error reporting and logging of tool_call and tool_result events src/vault-mcp/mcp-core/tools/tool-helpers.ts69-103
Tools are marked with annotations to help agents understand side effects:
readOnlyHint: true for tools like vault_read_note and vault_search src/vault-mcp/mcp-core/__tests__/tool-definitions.test.ts16-37destructiveHint: true for tools that delete or overwrite, such as vault_delete_note src/vault-mcp/mcp-core/__tests__/tool-definitions.test.ts39-46idempotentHint: true for tools where repeated calls with the same arguments are safe src/vault-mcp/mcp-core/__tests__/tool-definitions.test.ts116Sources: src/vault-mcp/mcp-core/tools/tool-helpers.ts1-104 src/vault-mcp/mcp-core/__tests__/tool-definitions.test.ts14-60
Refresh this wiki
This wiki was recently refreshed. Please wait 6 days to refresh again.