Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEBUG | No | Enable debug logging | false |
| MCP_PORT | No | Port for HTTP mode | 3000 |
| MCP_TRANSPORT | No | Transport mode for the server: 'stdio' or 'http' | stdio |
| OBSIDIAN_API_KEY | Yes | API Key from Obsidian's Local REST API settings | |
| OBSIDIAN_API_URL | No | Obsidian REST API URL | http://127.0.0.1:27123 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| vault_get_file | Get the content of a file from the Obsidian vault. Can return raw markdown, parsed JSON with metadata (tags, frontmatter, stats), or a document map showing headings, blocks, and frontmatter fields. |
| vault_create_file | Create a new file in the vault or completely replace an existing file's content. Use this when you want to write the entire file content at once. |
| vault_append_to_file | Append content to the end of an existing file. If the file doesn't exist, it will be created. Use this to add content without replacing existing content. |
| vault_patch_file | Partially update a file by inserting content relative to a heading, block reference, or frontmatter field. Operations: append (after target), prepend (before target), or replace. Useful for updating specific sections without rewriting the entire file. |
| vault_delete_file | Delete a file from the Obsidian vault. This operation cannot be undone. |
| vault_list | List files and directories in the Obsidian vault. Returns a formatted list showing directories (ending with /) and files. Use this to explore the vault structure. |
| search_simple | Perform a simple text search across all files in the vault. Returns matching files with context around each match. Best for straightforward text searches. |
| search_advanced | Perform an advanced search using Dataview DQL or JsonLogic. Dataview is best for querying metadata and frontmatter (e.g., "TABLE FROM #tag"). JsonLogic is best for complex logical queries on note properties. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |