obsidian-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OBSIDIAN_DAILY_DIR | No | Subdirectory for daily notes (default: 'Daily') | |
| OBSIDIAN_VAULT_PATH | Yes | Absolute path to the Obsidian vault on this device | |
| OBSIDIAN_DAILY_FORMAT | No | Date format for daily notes (default: 'YYYY-MM-DD') | |
| OBSIDIAN_TEMPLATES_DIR | No | Directory for templates (default: 'Templates') | |
| OBSIDIAN_AUTO_PULL_MINUTES | No | Interval in minutes for auto pull from git (optional) | |
| OBSIDIAN_AUTO_PUSH_MINUTES | No | Interval in minutes for auto commit and push if changes exist (optional) |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| obsidian_readA | Read a note from the Obsidian vault by path (e.g. 'School/Notes' or 'School/Notes.md'). |
| obsidian_writeA | Create or overwrite a note in the vault. Auto-commits and pushes to git. |
| obsidian_appendA | Append content to an existing note. Creates the note if it doesn't exist. Auto-commits and pushes to git. |
| obsidian_deleteA | Delete a note from the vault. Auto-commits and pushes to git. |
| obsidian_moveA | Move or rename a note within the vault. Auto-commits and pushes to git. |
| obsidian_listA | List all notes in the vault or a specific subdirectory. |
| obsidian_searchA | Search all notes for a text string. Short notes are returned in full; longer ones show surrounding context. |
| obsidian_findA | Fuzzy search for a note by title. Returns the best matching note paths. More natural than knowing exact paths. |
| obsidian_tagsA | List all tags in the vault and the notes that use them. Scans frontmatter 'tags:' fields and inline #hashtags. |
| obsidian_queryC | Find notes by frontmatter field values. E.g. find all notes where status = 'in-progress'. |
| obsidian_todayA | Get or create today's daily note. Creates it from a template if one exists in the Templates folder. |
| obsidian_templateC | Create a new note from a template in the Templates folder. |
| obsidian_frontmatterA | Read or update the YAML frontmatter of a note (tags, status, date, etc.). |
| obsidian_linksA | Get all [[wikilinks]] in a note (outgoing) and all notes that link to it (incoming backlinks). |
| obsidian_pullA | Pull the latest changes from git. Run this when switching devices or after editing notes elsewhere. |
| obsidian_pushA | Manually commit and push all vault changes to git. |
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 16 tools
Most tools target clearly distinct operations such as read, write, delete, move, append, and link analysis. Some confusion is possible among the retrieval tools (list, search, find, query) and note-creation tools (write, template, today), but the descriptions clarify their different purposes.
All tools follow the same obsidian_verb naming pattern with snake_case verbs. This makes the toolset predictable and easy to navigate.
16 tools is slightly above the ideal range, but each tool maps to a meaningful Obsidian workflow: editing, searching, linking, templates, frontmatter, and git sync. A couple of tools like pull and push are peripheral, but the count is still reasonable.
The toolset provides thorough coverage for Obsidian note management: read, write, append, delete, move, list, search, frontmatter editing, backlinks, tags, templates, daily notes, and git synchronization. There are no major dead ends for common note-taking workflows.