Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
JEVMEM_INDEXNoPluggable vector index backend, for example sqlite-vec, Qdrant, LanceDB or Postgres/pgvector.
JEVMEM_SCOPENoScope for notes. Defaults to global unless set, for example project:my-project.
JEVMEM_EMBEDDERNoEmbedder to use for semantic search, for example fastembed for a local model with no API.
TYPESAFE_API_KEYYesYour TypeSafe API key for Jev. Read automatically from ~/.jevmem/.env if present.

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
memory_writeA

Store ONE literal fact (decision, bugfix, convention, gotcha, preference, event). Use explicit entity names and ABSOLUTE dates (never 'yesterday'): the memory model reads literally. Content that looks like instructions to an agent is rejected. scope: 'global' (applies to every project: personal preferences, conventions) or e.g. 'project:'; omitted = this project. pinned=True only when the user says this must always be remembered: pinned notes open every session.

memory_recallA

Adaptive recall. Check sufficient/missing: if sufficient is false, the memory may lack the answer, so verify in code/docs rather than assuming. Searches scope (default: this project) plus global; scope='all' searches every project. mode: "auto" (default: lite first, escalates to full when lite finds nothing or the question looks multi-hop/time-related; stop_reason says which ran), "full" (always multi-hop graph expansion: use it when you know the answer joins several facts) or "lite" (vector top-20 + one Jev call that filters them and judges sufficiency: ~4x cheaper than full, no multi-hop).

memory_pinA

Pin (or unpin) a note the user wants in every session; SessionStart injects pinned notes first.

memory_listC

List stored memories (newest first) with their top memory types. scope: omitted = every scope.

memory_forgetC

Delete a memory and its edges.

memory_pending_synthesisA

Merge/promote proposals from consolidation. YOU are the writer: for each item follow instruction, then call memory_resolve(synthesis_id, text), or memory_dismiss if the proposal is wrong.

memory_resolveB

Store your synthesized fact for a pending proposal. Source notes are kept (merged ones rank lower).

memory_dismissC

Reject a merge/promote proposal.

memory_consolidateA

Run a consolidation pass now (also runs automatically every 20 writes). all_notes=True re-judges every stored note from scratch (slow: one Jev call per note); use it once after upgrading jevmem.

memory_statsB

Node counts, queued (degraded) writes and Jev usage for this server process.

memory_flush_pendingB

Retry writes queued while Jev was unreachable.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 11 tools

Disambiguation4/5

The core tools have distinct roles across writing, recall, browsing, deletion, consolidation, and maintenance. There is minor overlap because memory_write can also pin notes and memory_resolve is another storage path, but the descriptions clearly scope those special cases.

Naming Consistency5/5

All tools use snake_case and a consistent memory_ prefix. Action-oriented and resource-oriented suffixes remain predictable across both core and administrative operations.

Tool Count5/5

Eleven tools are well suited to a memory service with both core operations and an advanced consolidation lifecycle. Each tool supports a recognizable workflow, with no obvious filler.

Completeness5/5

The surface covers storage, retrieval, listing, deletion, pinning, consolidation, proposal resolution or dismissal, queued-write recovery, and operational statistics. These operations connect into complete workflows without an obvious lifecycle dead end.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive