Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoserve only. The HTTP port.3000
RAGDOWN_TOKENNoserve: the bearer token /mcp and /api/context require. Hook: the token it sends.
RAGDOWN_WATCHNoWatch the folder; without a watcher, sync on start and on ragdown_reindex only.true
RAGDOWN_MODELSNoModel cache, shared by every folder.~/.cache/ragdown/models
RAGDOWN_THREADSNoONNX Runtime threads for bge-small.half the cores
RAGDOWN_DATA_DIRNoThe index. Deleting it only costs a rebuild.~/.cache/ragdown/<hash of docs dir>
RAGDOWN_DOCS_DIRYesThe Markdown folder, walked recursively. Dot-folders and node_modules are skipped, and symlinks are not followed. Indexes .md, .markdown and .mdx.
RAGDOWN_EMBEDDERNobge-small, openai:<model> (any OpenAI-compatible /embeddings endpoint, such as Ollama or llama.cpp), or hash (tests only).bge-small
SECURE_LOCAL_NETNoserve only. Skip the token on a trusted network. serve refuses to start with neither.false
RAGDOWN_NOTES_DIRNoWhere ragdown_remember writes. Must be inside the docs folder.notes
RAGDOWN_READ_ONLYNoHide the write tools.false
RAGDOWN_HOOK_TOP_KNoMost sections injected per prompt.4
RAGDOWN_TEXT_LIMITNoCharacters per hit in text output. Every cut names the ragdown_read_doc call that returns the rest.2000
RAGDOWN_EMBEDDING_URLNoFor openai:<model>. The URL of the OpenAI-compatible embeddings endpoint.OpenAI
RAGDOWN_HOOK_MAX_CHARSNoMost characters injected per prompt.6000
RAGDOWN_HOOK_MIN_SCORENoLowest cosine similarity the hook injects.0.7
RAGDOWN_HOOK_TIMEOUT_MSNoHow long the hook waits for the server.5000
RAGDOWN_EMBEDDING_API_KEYNoFor openai:<model>. The API key for the OpenAI-compatible embeddings endpoint.OpenAI

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": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
ragdown_recallA

Hybrid (semantic + keyword) search over the user's Markdown notes. Returns the most relevant sections with file path, line range, heading breadcrumb and cosine similarity (above ~0.8 is usually on topic). Use it before answering anything the notes may cover; follow up with ragdown_read_doc for the surrounding text.

ragdown_contextA

For hooks that run before a turn: the notes related to a user prompt, as a ready-to-inject block, or empty text when nothing is similar enough. Unlike ragdown_recall it filters by min_score, skips short prompts and slash commands, and never returns a section twice for the same session_id.

ragdown_read_docA

Read a Markdown file from the notes folder, whole or by line range, straight from disk. Never clipped. Use it to see the context around a ragdown_recall hit, or to follow a [[wikilink]] in a note. The result's hash is the whole file's, for ragdown_edit's base_hash.

ragdown_backlinksA

The notes that link to a note — by [[wikilink]], alias, or relative Markdown link — each with the lines the links are on. Use it to find what depends on or refers to a note, e.g. before changing or superseding it.

ragdown_listA

Browse the notes rather than search them: every note's path, title, tags and last change, optionally under a subfolder or with a tag. sort: 'recent' puts the most recently changed first.

ragdown_statsA

The notes folder, index size (files, chunks), embedder, whether this process is the indexing primary, and the last sync. include_files lists every indexed file.

ragdown_rememberA

Save something worth keeping (a decision, a fix, a how-to) as a new Markdown note in the notes folder, indexed immediately so later searches find it. Never overwrites an existing file. When this note replaces an earlier one, pass that note's path as supersedes so searches stop returning the old version.

ragdown_editA

Change an existing note, or create one at a path you choose. By default text replaces the whole file (frontmatter included), which for an existing note needs base_hash: the hash ragdown_read_doc returned, so you never overwrite a version you have not read. append: true adds text at the end of the note, or with heading at the end of that section, leaving the rest as it is. If the file changed since base_hash, nothing is written: read it again and redo the edit.

ragdown_reindexA

Bring the index up to date with the folder now. Changes are normally picked up automatically within a second; use this after bulk edits made while no server was running, or full: true to re-embed everything.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 9 tools

Disambiguation4/5

Recall and context both perform similarity retrieval, but their descriptions clearly separate ad-hoc search from pre-turn hook injection; remember and edit also overlap in creating notes but are distinguished by auto-named immutable notes vs explicit path/update. The remaining tools map cleanly to distinct actions.

Naming Consistency4/5

All tools share the ragdown_ prefix and are readable, but the second part mixes verb forms like reindex, remember, read_doc, and recall with noun forms like stats, backlinks, and context. This is a minor inconsistency rather than a chaotic pattern.

Tool Count5/5

Nine tools is well within the ideal range for a notes-RAG server. Each tool covers a distinct function—indexing, adding, reading, editing, browsing, backlinks, stats, search, and context injection—so none feels redundant.

Completeness4/5

The surface covers the core notes lifecycle plus retrieval and context integration: create via remember/edit, read via read_doc/list, update via edit, search via recall/context, and note graph via backlinks. The main gap is an explicit delete/remove operation, though supersede and empty edits provide partial workarounds.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive