Obsidian Semantic MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OLLAMA_URL | No | Ollama API endpoint. | http://localhost:11434 |
| POSTGRES_DB | No | Database name. | obsidian_brain |
| DATABASE_URL | No | Full connection string (overrides POSTGRES_* vars). | |
| RERANK_MODEL | No | Optional Ollama model for cross-encoder re-ranking. Disabled when empty. | |
| EMBED_WORKERS | No | Parallel threads for bulk indexing. | 4 |
| POSTGRES_HOST | No | PostgreSQL host. | localhost |
| POSTGRES_PORT | No | PostgreSQL port. | 5432 |
| POSTGRES_USER | No | Database user. | obsidian |
| OBSIDIAN_VAULT | No | Absolute path to your Obsidian vault. Required if OBSIDIAN_VAULTS is not set. | |
| EMBEDDING_MODEL | No | Ollama model for embeddings. | nomic-embed-text |
| OBSIDIAN_VAULTS | No | Comma-separated list of vault paths for multi-vault mode. Overrides OBSIDIAN_VAULT when set. | |
| POSTGRES_PASSWORD | No | PostgreSQL password (required for Docker mode). | |
| RERANK_CANDIDATES | No | Candidate pool size fetched before re-ranking. | 20 |
| OBSIDIAN_IGNORE_PATHS | No | Comma-separated vault-relative path segments to skip during indexing and watching. | archive |
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
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_vaultA | Search across your Obsidian vault(s). Three modes: 'hybrid' (default) combines semantic meaning with keyword matching for best results; 'semantic' searches by meaning only; 'keyword' matches exact words using full-text search. Use this to retrieve context, past decisions, notes, or research from the vault. |
| list_indexed_notesA | List all notes that have been indexed, with their last indexed timestamp. |
| reindex_vaultA | Force a full re-index of all notes in the vault. Runs in the background — use list_indexed_notes to check progress. |
| list_filesB | List all files and directories in a vault directory. Defaults to vault root. |
| get_fileB | Read the full content of a file in the vault. |
| get_files_batchC | Read the contents of multiple files at once. |
| append_contentA | Append content to the end of a file. Creates the file if it doesn't exist. |
| write_fileA | Write or overwrite a file in the vault. Creates parent directories if needed. WARNING: overwrites existing content without confirmation — use append_content if you want to add to an existing file without replacing it. |
| simple_searchA | Text/keyword search across vault files. Use search_vault for semantic/meaning-based search, use this for exact text matching. |
| get_note_connectionsA | Return all notes connected to a given note via wikilinks — both notes it links to (outgoing) and notes that link back to it (incoming). Useful for exploring your knowledge graph and finding related notes. |
| 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 11 tools
Tools are generally distinct with clear purposes. However, simple_search and search_vault's keyword mode overlap; agents may be unsure which to use for exact keyword searches, though descriptions help differentiate.
Most tools follow a verb_noun pattern (append_content, get_file, search_vault), but 'recent_changes' and 'simple_search' deviate as adjective_noun. Overall consistent but not perfect.
11 tools is well-scoped for an Obsidian vault management server, covering file operations, search, indexing, and connections without excess.
Covers core read/write/search operations, but lacks delete and rename/move functionality, which are notable gaps for file management in a vault.