obsidian-dev-memory
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OBSIDIAN_VAULT_PATH | Yes | Path to the local Obsidian vault directory (required). | |
| OBSIDIAN_MEMORY_ROOT | No | Folder name inside the vault where memory is stored. Defaults to 'AI Memory'. | AI Memory |
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 |
|---|---|
| get_project_contextA | Retrieve concise durable memory before substantial work. Reads Project State.md plus the newest session and decision notes. Returns empty sections when the project is new. Never returns the entire vault. |
| capture_work_sessionA | Capture meaningful work performed during a coding session. Appends a timestamped section to that day's session note. When repository_path is a Git repo, records branch, short SHA, and dirty state. Never persist secrets or full diffs. |
| record_decisionA | Store a durable architecture or engineering decision. Creates YYYY-MM-DD-.md. If that file already exists, a numeric suffix is added instead of overwriting. |
| update_project_stateA | Replace the concise durable Project State.md for a project. This is current state, not a session log. Omit empty sections. |
| search_memoryB | Search project state, sessions, and decisions with local text matching. |
| read_noteA | Read one Markdown note inside the configured Obsidian vault. The path must stay inside OBSIDIAN_VAULT_PATH. Absolute paths and traversal such as ../ are rejected. |
| append_daily_noteB | Append an item to Daily/YYYY-MM-DD.md without overwriting existing text. |
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 7 tools
Each tool targets a distinct memory artifact or action: context retrieval, session capture, decision recording, state updating, searching, reading, and appending to daily notes. Even though several tools involve notes, their purposes are clearly separated.
All tool names follow a consistent lowercase snake_case verb_noun pattern such as capture_work_session, record_decision, and append_daily_note. The naming is predictable and makes the tool's purpose immediately clear.
Seven tools is well-scoped for an Obsidian-based development memory server. Each tool covers a distinct need without unnecessary redundancy or bloat.
The toolkit covers core memory workflows: reading context, capturing sessions, recording decisions, updating state, searching, and appending daily notes. Minor gaps exist around deleting or listing notes, but these are not essential for the stated purpose.