Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
VAULTS_ROOTNoRoot directory for vaults. Defaults to ~/.vaults. Can also be set via the --vaults-root command-line flag, but that is not an environment variable.
VAULTS_HUB_GITNoSet to '0' to disable git versioning; history and restore will then return errors.
VAULTS_HUB_DEBUGNoSet to '1' to enable debug file logging; anything else disables it.

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_vaultsA

List all project vaults with their note counts.

create_vaultA

Create a new vault (one subdirectory of the vaults root). Idempotent: returns created=False when the vault already exists.

delete_vaultA

Delete a whole vault: removes every note, lock file and the git history. Irreversible with no undo in this server; confirm must exactly equal the vault name.

list_notesA

List directories and notes under a vault path (vault-root-relative, '' for root). Pass recursive=True to list all descendant notes flat (dirs=[]). Paginate with offset/limit (default limit 200, max 500); the response carries total (full match count), truncated, and next_offset (None when done).

read_noteA

Read a note: frontmatter, content, wiki-links, backlinks, unresolved links.

write_noteA

Create or atomically overwrite a note (vault-root-relative path). Pass sha256 from a prior read/write as expected_sha256 to prevent overwriting a changed note. Refreshes the frontmatter updated: date (inserted when a frontmatter block exists without one); notes without a frontmatter block stay that way.

append_noteA

Append text to a note (created if missing) via an atomic write. Optionally pass expected_sha256 to prevent appending to a changed note. Refreshes the frontmatter updated: date (inserted when a frontmatter block exists without one).

delete_noteA

Delete a note file. Errors when missing unless missing_ok=True. Lock files are intentionally left in place.

move_noteA

Move/rename a note via copy+delete (not atomic): the destination is written atomically, then the source is unlinked, and a partial destination is cleaned up on failure. Errors if src is missing or dst exists. Honors expected_sha256 against src. Refreshes updated:.

historyA

Show version history for a note (or the whole vault) from the local git repo: [{sha, date, message}] with a truncated flag when more commits exist beyond limit (clamped 1-200). An untracked path returns an empty list with untracked:true.

restoreA

Restore a note's content from a past revision (git rev, e.g. a history sha); the response echoes the revision as restored_from. Snapshots dirty worktree state first; recreates deleted notes. Honors expected_sha256 against current content.

list_tagsA

List tag counts per vault from cached frontmatter. Pass vault for one vault, or omit for all vaults.

search_notesA

Search .md note contents with ripgrep across one vault or all vaults. regex=True uses ripgrep's Rust syntax (Python re when ripgrep is absent), so lookarounds and backreferences are not portable. limit is clamped 1-200 and the response carries a truncated flag; before/after (0-10) add context lines. With context each hit keeps text (= match_line) plus before_lines/match_line/after_lines, otherwise only text.

server_infoA

Report server version, Python/platform, git and ripgrep availability, whether git versioning is enabled, the local vaults root path, and the vault count. This is a local stdio server; the vaults root path is intentionally exposed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 14 tools

Disambiguation5/5

Each tool maps to a distinct operation: read/list per entity, create/delete/move notes, git history/restore, and search/tags. Overlaps like write_note vs append_note are clearly distinguished by overwrite semantics, and list_vaults/list_notes/list_tags target different scopes.

Naming Consistency5/5

Consistent verb_noun snake_case throughout (read_note, list_vaults, create_vault, delete_note, move_note, list_tags, search_notes). Single-word tools like history, restore, and server_info are intuitive and fit the pattern.

Tool Count5/5

14 tools is well-scoped for a vault/notes server, covering CRUD, navigation, versioning, and search without redundancy. Every tool earns its place.

Completeness5/5

Full lifecycle coverage: vault create/delete/list, note read/write/append/delete/move/list, git history/restore, tags, search, and server_info. No obvious dead ends for the stated domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues