Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TDAI_QUIETNoSuppress hook feedback (set to 1 to enable)
TDAI_DB_PATHNoDB path (default ~/.local/share/remem-mcp/memory.db)~/.local/share/remem-mcp/memory.db
TDAI_CORE_ONLYNoCore-only mode, disables advanced tools (set to 1 to enable)
TDAI_RETRO_DAYSNoRetro window in days (default 7)7
TDAI_LLM_API_KEYNoLLM API key for pipeline (unset by default)
TDAI_GLOBAL_ERRORSNoCross-project errors (set to 1 to enable)
TDAI_GLOBAL_SESSION_KEYNoCross-project memory (unset by default)

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
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
recallA

Retrieve relevant past memory. Call this tool before you answer the user. Use it when the user references past work or when the task needs project context. Automatically searches both project memory and global cross-project memory (rules, learnings) when REMEM_GLOBAL_SESSION_KEY is configured.

captureA

Store a decision, a learning, or a task outcome to memory. Call this tool after you complete a non-trivial task, make a decision, or fix a bug with a known root cause. You can capture a single text string, or a list of role-based conversation messages. Captures are project-local by default. Write to global memory ONLY when the user explicitly asks to remember something across projects/globally; then pass session_key="global".

feedbackA

Record a quality signal for a recalled memory. Call this AFTER using a recall result: use 'helpful' if the memory answered your question, 'not_helpful' if it was irrelevant, 'stale' if the information is outdated, or 'wrong' if it is incorrect. This creates a feedback flywheel — useful memories rise, unhelpful ones fade. Do not call this for memories you have not actually used.

searchA

Search memory by keyword or by semantic similarity. Use this tool when recall is too broad and you need specific facts. Automatically searches both project and global cross-project memory when REMEM_GLOBAL_SESSION_KEY is configured.

explain_recallA

Explain WHY a memory was recalled for a given query. Shows the BM25 score, vector score, RRF fused score, rank, and matching keywords for each result. Use this to debug unexpected recall results or to understand the retrieval pipeline. If you provide a capture_id, the tool explains why that specific capture was or was not retrieved.

relatedA

Find memories connected to a given memory by shared tags, project, or co-occurrence. Use this after recall or search to discover related context you might have missed. Inspired by graph spreading-activation (Mnema pattern).

forgetB

Delete specific memory entries. Use this tool only when the user requests a deletion. Do not auto-forget.

resolveA

Resolve a conflict between two captures. Mark one as the winner and the other as stale. Call this tool when capture reports a conflict between two memories.

handoffA

Write a structured handoff packet for the next agent session. Call this tool at the end of a session, or before you switch to a different agent. The next agent calls recall to load this packet and continue without re-reading files. This saves 60-85% of tokens compared to re-discovering context.

adrA

Record an Architecture Decision Record (ADR). Use this tool when you make a technical decision that future agents should know about. The ADR is stored as a structured capture and can be recalled by any agent working on the same project.

knowledge_createA

Register a knowledge asset (wiki or code-graph) for the team. The asset metadata is stored locally. The actual content is processed by an external knowledge service.

knowledge_getA

Get a single knowledge asset by ID.

knowledge_listB

List knowledge assets for a team. Optionally filter by type.

knowledge_deleteB

Delete one or more knowledge assets by ID.

scenario_createA

Consolidate multiple L1 atoms into an L2 scenario summary. Call this when you have 5+ atoms about the same topic — it creates a high-signal summary that recall injects in ~100 tokens instead of 5+ individual atoms. No LLM needed — you write the summary yourself based on the atoms you've seen.

persona_updateA

Update the L3 persona profile for this user/team. Call this when you notice a user preference or pattern (e.g., 'prefers concise output', 'works in Vietnamese', 'uses AZR project'). Persona is injected at SessionStart — every session gets it automatically in ~50 tokens. No LLM needed — you write the trait/value yourself.

skill_getA

Get a single skill by ID, including its full content and version.

skill_listA

List skills bound to a team. Optionally filter by agent.

skill_searchA

Search skills by keyword. Returns matching skills with descriptions.

codegraph_indexA

Index a file or directory into the code graph. Extracts symbols (functions, classes, methods), call relationships, and imports. Supports TypeScript, JavaScript, Python, Go, Rust, Java, C, C++, C#. Note: codegraph_search auto-indexes on first use, so you only need this for explicit re-indexing or custom paths.

codegraph_searchA

Search for code symbols by name. Returns matching functions, classes, methods, etc. with file paths and line numbers. Use this INSTEAD of grep when looking for function/class/method definitions. If the codebase hasn't been indexed yet, this starts background indexing and asks you to retry in a few seconds — non-blocking, so you can continue working while indexing runs.

codegraph_callersA

Find all callers of a symbol — who calls this function? Returns the calling functions with file paths and line numbers. Requires the symbol ID from codegraph_search.

codegraph_calleesA

Find all callees of a symbol — what does this function call? Returns the called functions with file paths and line numbers. Requires the symbol ID from codegraph_search.

codegraph_impactA

Perform impact analysis: if I change this symbol, what else might be affected? Traverses the call graph upward (callers of callers) to find all potentially impacted code. Requires the symbol ID from codegraph_search.

codegraph_listA

List all symbols in a file or directory. Returns symbols sorted by line number. Use this to get an overview of what a file contains.

codegraph_detect_changesA

Detect uncommitted git changes and map them to affected symbols with blast radius. Runs git diff --name-only to find changed files, finds symbols in those files, then traces callers to determine impact. Returns affected symbols + risk classification.

codegraph_statsA

Return indexed CodeGraph statistics: total symbols, calls, resolved calls, imports, and file counts. Optionally scoped to a repo_path. Use this to check indexing coverage before searching.

wiki_ingestA

Ingest markdown documentation files into the wiki. Parses frontmatter, headings, [[wikilinks]], and text links to build a structured page graph. Supports .md and .markdown files.

wiki_searchA

Search wiki pages by content. Returns matching pages with title, file path, and a snippet. Use this to find documentation relevant to a topic.

wiki_getA

Get a wiki page by ID, including its links and backlinks. Use this to read a specific page and see what it links to and what links to it.

wiki_outdatedA

Find wiki pages whose source file has changed since the last ingest. Returns pages that need re-ingesting because the source markdown was modified or deleted.

updateA

Update an existing memory entry. Use this when a capture needs corrections (wrong info, missing tags, needs rewording). Preserves the original ID and created_at.

consolidateA

Find and merge duplicate or near-duplicate memories. Use this when you suspect redundant captures (e.g. same decision captured twice). Returns groups of similar captures. Set confirm=true to merge them. Use batch_size to limit how many captures are processed in one call (cost control).

statsA

Query memory statistics: total captures, breakdown by type, top tags, session count, date range, and database size. Use this to understand memory health and coverage. No arguments needed — returns a summary.

confirmA

Confirm that a memory is accurate. Increments the Bayesian confirmation count, raising its confidence score in future searches. Use when a recalled memory proved helpful and correct.

correctA

Mark a memory as inaccurate or outdated. Increments the Bayesian correction count, lowering its confidence score in future searches. Use when a recalled memory was wrong, misleading, or superseded by newer information.

supersedeA

Mark an old memory as superseded by a newer one. The old memory's superseded_by field is set, and it will be filtered out of search results (unless explicitly requested). Use when a fact has changed (e.g. 'database is MySQL' → 'database is PostgreSQL').

record_outcomeA

Record whether a correction was heeded (agent followed the advice) or recurred (same error happened again). This tracks correction effectiveness over time. Call after applying a correction to a recalled memory.

correction_kpisA

Get correction learning metrics: total corrections, average precision, heed rate, noise candidates (precision < 0.3), and high-signal candidates (precision >= 0.8). Use this to evaluate memory quality and identify unhelpful corrections to prune.

session_startA

Open a session and return recent context. Call this at the start of a multi-turn conversation to get a summary of recent captures and correction alignment metrics. Returns both project-specific and global cross-project memory when configured.

session_endA

Close a session and optionally capture a summary. Call this at the end of a conversation to record what was accomplished.

session_checkpointA

Create a checkpoint of the current session state. Returns a checkpoint ID that can be used to resume later. Stores recent captures as a named snapshot.

healthA

Diagnose memory server health: DB integrity, index status, capture count, schema version, embedding model.

canvas_getA

Get the Mermaid task canvas for the current session. The canvas is a symbolic graph of tool calls and state transitions — it replaces verbose tool logs in your context with a compact Mermaid diagram. Use this to see the task structure without re-reading full tool outputs. Requires REMEM_OFFLOAD_ENABLED=true and pipeline=mermaid.

ref_readA

Read the raw tool output for a specific canvas node by node_id. Use this to drill down from the Mermaid canvas to the full output when you need details. Requires REMEM_OFFLOAD_ENABLED=true and pipeline=mermaid.

skill_createA

Create a reusable skill (SOP) from a successful task or conversation. Skills are injected into recall when matching trigger conditions are met. Use this after completing a non-trivial task to capture the workflow for reuse.

skill_archiveA

Archive a skill — forces it to always be injected into recall, even when the query doesn't strongly match. Use this for critical SOPs that must always be available.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Recent capturesThe 20 most recent memory captures.
Memory statisticsSummary statistics for the memory database.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tinhien11/remem-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server