MCP server for Obsidian
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OBSIDIAN_API_KEY | Yes | Your API key for the Obsidian REST API. This key can be found in the Obsidian plugin config. |
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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| obsidian_list_files_in_dirA | Lists all files and directories that exist in a specific Obsidian directory. |
| obsidian_list_files_in_vaultA | Lists all files and directories in the root directory of your Obsidian vault. |
| obsidian_get_file_contentsC | Return the content of a single file in your vault. |
| obsidian_simple_searchB | Simple search for documents matching a specified text query across all files in the vault. Use this tool when you want to do a simple text search |
| obsidian_patch_contentA | Insert content into an existing note relative to a heading, block reference, or frontmatter field. |
| obsidian_append_contentC | Append content to a new or existing file in the vault. |
| obsidian_put_contentC | Create a new file in your vault or update the content of an existing one in your vault. |
| obsidian_delete_fileC | Delete a file or directory from the vault. |
| obsidian_complex_searchA | Complex search for documents using a JsonLogic query. Supports standard JsonLogic operators plus 'glob' and 'regexp' for pattern matching. Results must be non-falsy. |
| obsidian_batch_get_file_contentsA | Return the contents of multiple files in your vault, concatenated with headers. |
| obsidian_get_periodic_noteB | Get current periodic note for the specified period. |
| obsidian_get_recent_periodic_notesC | Get most recent periodic notes for the specified period type. |
| obsidian_get_recent_changesB | Get recently modified files in the vault. |
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 13 tools
Most tools have distinct purposes targeting specific operations like reading, writing, searching, or listing files. However, obsidian_simple_search and obsidian_complex_search could cause confusion as both handle search functionality, though their descriptions clarify different use cases (simple text vs. complex JsonLogic queries).
All tool names follow a consistent snake_case pattern with the 'obsidian_' prefix and descriptive verb_noun combinations (e.g., obsidian_get_file_contents, obsidian_list_files_in_dir). This uniformity makes the tool set predictable and easy to navigate.
With 13 tools, the count is well-suited for an Obsidian vault management server. It covers a comprehensive range of operations without being overwhelming, including file CRUD, content manipulation, searching, and listing, which aligns with the domain's scope.
The tool set provides complete coverage for Obsidian vault operations, including CRUD (create/read/update/delete via tools like obsidian_put_content, obsidian_get_file_contents, obsidian_patch_content, obsidian_delete_file), searching (simple and complex), listing files, and handling periodic notes. No obvious gaps are present for typical agent workflows.