cog-brain
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| COG_BRAIN_VAULT | No | Vault root | ~/SECOND_BRAIN |
| COG_BRAIN_CONFIG | No | Config file path | ~/.config/cog-brain/config.toml |
| COG_BRAIN_OLLAMA | No | Embedding endpoint (qdrant backend only) | http://127.0.0.1:11434/api/embed |
| COG_BRAIN_BACKEND | No | Memory backend: sqlite, qdrant, or markdown | sqlite |
| COG_BRAIN_SQLITE_DB | No | SQLite database path | <state>/sqlite.db |
| COG_BRAIN_STATE_DIR | No | Index and manifest location | ~/.local/state/cog-brain |
| COG_BRAIN_COLLECTION | No | Qdrant collection (qdrant backend only) | cog_brain |
| COG_BRAIN_QDRANT_URL | No | Qdrant endpoint (qdrant backend only) | http://127.0.0.1:6333 |
| COG_BRAIN_EMBED_MODEL | No | Embedding model (qdrant backend only) | qwen3-embedding:0.6b |
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 |
|---|---|
| vault_statusA | Index health: notes on disk vs indexed, when the index last ran, and which notes changed since. Call this before trusting a search result: after a write the index is refreshed automatically, but a manual file edit from outside this server leaves it stale. |
| list_notesA | Cheap inventory of notes: file_path, title, type, status, tags. Filter by tag or folder prefix. |
| outlineA | Headings of a note with their levels — cheap context before reading the whole thing. |
| read_noteA | Read the full text of a vault note by its relative path (path from semantic_search/list_notes).
|
| semantic_searchB | Hybrid (dense+BM25, RRF) semantic search over the Obsidian vault. Returns chunks with file_path citations.
|
| find_relatedA | Find notes related to the given note: semantic neighbours + 1-hop wiki-link expansion. |
| backlinksB | Who links to this note ( Frontmatter links count: |
| broken_linksB | Wiki-links that resolve to no existing note (by stem or title), grouped by source note. |
| graph_overviewB | Knowledge-graph overview: hub notes (most outgoing wiki-links — MOC candidates) and orphans (no links at all). |
| write_noteB | Create a new vault note. Flat vault: file_path is kebab-case EN in the vault root.
|
| update_noteC | Patch an existing note in place: frontmatter fields and/or body, bumping Only the arguments you pass are changed. |
| index_nowA | Run the vault indexer now (incremental; Concurrent runs are safe: the indexer holds a lock and a second run exits immediately. |
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 12 tools
Each tool targets a distinct action or resource: status, inventory, outline, full read, search, related notes, backlinks, broken links, graph overview, create, update, and index. Overlaps are minimal and descriptions clearly differentiate.
Some tools use verb_noun (list_notes, read_note, write_note, update_note, find_related), while others are noun phrases (vault_status, semantic_search, backlinks, broken_links, graph_overview). The mix is readable but not a consistent pattern.
12 tools is well within the typical 3-15 range and each tool has a clear, non-redundant purpose for managing an Obsidian vault.
The surface covers create, read, update, search, linking, and indexing, but lacks a delete_note operation and any move/rename capability. These are notable gaps for full vault lifecycle management.