mcp-obsidian
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OBSIDIAN_VAULT_PATH | Yes | The absolute path to your Obsidian vault directory |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_filesA | List files and folders inside the vault (or a subdirectory of it). |
| read_noteB | Read the contents of a note in the vault. |
| write_noteA | Create or overwrite a note in the vault. |
| search_notesA | Full-text search across all markdown notes in the vault. |
| delete_noteB | Delete a note or folder from the vault. |
| move_noteB | Move or rename a note within the vault. |
| append_to_noteC | Append content to the end of an existing note. |
| get_frontmatterA | Parse and return the YAML frontmatter of a note as key-value pairs. |
| update_frontmatterB | Set or update a frontmatter field in a note. Creates frontmatter if absent. |
| get_backlinksA | Find all notes that link to the given note via [[wikilinks]]. |
| get_outlinksA | Extract all [[wikilinks]] from a note. |
| get_orphansA | Find notes with no incoming backlinks and no outgoing wikilinks. |
| get_daily_noteB | Read the daily note for a given date (defaults to today). |
| create_daily_noteB | Create a daily note for a given date, using a daily template if available. |
| list_tagsA | List all tags used across the vault with their usage counts. |
| search_by_tagB | Find all notes containing a specific tag. |
| get_recent_notesA | List the N most recently modified notes in the vault. |
| get_note_statsB | Return statistics about the vault: note count, word count, tag count, link count. |
| list_templatesA | List all available templates in the vault's Templates folder. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Most tools have distinct purposes targeting specific operations like reading, writing, searching, or managing metadata, with clear boundaries. However, some overlap exists between 'read_note' and 'get_daily_note' (which also reads a note), and 'write_note' and 'create_daily_note' (both create notes), though their specialized contexts help differentiate them.
All tool names follow a consistent verb_noun pattern using snake_case, such as 'append_to_note', 'delete_note', and 'search_notes'. This uniformity makes the set predictable and easy to navigate, with no deviations in style or convention.
With 19 tools, the count is slightly high but reasonable for a comprehensive note-taking system like Obsidian, covering operations from basic CRUD to advanced features like backlinks and templates. It might feel heavy but aligns well with the domain's complexity.
The toolset provides complete coverage for managing an Obsidian vault, including full CRUD for notes (create, read, update, delete), metadata handling (frontmatter), search capabilities (full-text, tags), and vault analytics (stats, orphans). No obvious gaps exist for core workflows.