Skip to main content
Glama

rememb cover

Rememb MCP server MCP Badge

Operate AI agents without losing context between sessions. rememb is a local-first persistent memory layer: structured entries, keyword search, versioning, diff, restore, and audit trail — no cloud service required.

rememb chat demo

Related MCP server: engram-mcp

The problem

Teams using agents at real velocity rarely fail because they lack generation. They fail because operating agents every day creates context debt:

  • too much re-explaining project facts every session

  • too little durable memory outside the chat window

  • too little audit trail for why something changed

  • too much noise when recalling the right context

Every team or solo developer operating agents professionally hits this wall:

Session 1: "We're using PostgreSQL, auth at src/auth/, prefer async patterns."
Session 2: Agent starts from zero. You explain everything again.
Session 3: Same thing.

Existing solutions often center on hosted memory layers, API keys, or opaque context pipelines. What you actually need is to resume the next session with the minimum correct context and a trail you can inspect.

rememb is built around four memory problems:

  • durable facts and decisions instead of session-only chat memory

  • keyword search instead of rereading everything (agents judge relevance)

  • non-destructive versioning instead of silent overwrites

  • local-first audit trail for AI work, not opaque cloud logs


Install

pip install rememb

Quick Start

Zero friction. No CLI commands. Native IDE integration.

1. Add to your IDE's MCP config:

{
  "mcpServers": {
    "rememb": {
      "command": "rememb",
      "args": ["mcp"]
    }
  }
}

2. Restart your IDE.

The agent can read stored context at session start, write durable memory when something changes, and search only when targeted recall is needed.

If you want rememb usage to stay consistent, add a rememb-specific instruction block in your IDE custom instructions or in the MCP client prompt that wraps the agent. The point is to make the agent route reads, writes, search, recovery, and maintenance through rememb instead of ad hoc prompt memory.

You can place that block in either of these places:

  • IDE-level custom instructions

  • the system prompt or instruction field of the MCP client that is calling rememb

In both cases, keep the scope explicit: these rules are about how the agent should use rememb, not about replacing the rest of your coding instructions.

For the exact copy-paste block, use the canonical rules section in MCP_TOOLS.md.

No extra storage setup, server config, or schema migration is required. In MCP mode, rememb resolves storage home-first and auto-initializes ~/.rememb when needed.

For the current public MCP tool list (17 tools) and descriptions, see MCP_TOOLS.md.

If you want multiple MCP clients on the same machine to reuse one already-running rememb process, start a persistent local SSE transport:

rememb mcp --transport sse --host 127.0.0.1 --port 8765

This keeps one MCP process alive, so repeated clients can connect through http://127.0.0.1:8765/sse and http://127.0.0.1:8765/messages/.

Do not put --transport sse inside a stdio MCP client config. stdio clients expect JSON-RPC on stdin/stdout; the SSE mode exposes an HTTP endpoint and must be started separately.

Local usage without MCP

rememb                    # Open the web UI (http://localhost:18181)
rememb --port 9000        # Custom port

How it works

~/.rememb/                 ← default store location (MCP and Web UI)
  entries.json             ← default JSON backend (or entries.db with SQLite)
  meta.json                ← project metadata
  config.json              ← limits, sections, storage backend, UI paging

A local store on disk. Your agent can read prior decisions, search by keywords and tokens, update entries without losing history, and restore previous versions without depending on a cloud memory service. Copy ~/.rememb/ anywhere to move the store.

User: "We're using PostgreSQL, auth at src/auth/, async patterns"
Agent: [rememb_write] → Saved

[New session]
Agent: [rememb_read]  → Context loaded
Agent: "I see you're using PostgreSQL with auth at src/auth/..."

These map to rememb_write, rememb_edit, and rememb_delete. For the full MCP surface, see MCP_TOOLS.md.

Search uses keyword and token matching over entry content and tags. rememb returns full matches; the agent applies semantic relevance judgment. No API keys, no cloud, no embedding model download at runtime.

config.json is written during initialization with all supported knobs:

{
  "max_content_length": 1000000,
  "max_tag_length": 500,
  "max_tags_per_entry": 100,
  "max_entries": 100000,
  "sections": ["project", "actions", "systems", "requests", "user", "context"],
  "section_colors": {
    "project": "#d84848",
    "actions": "#d08020",
    "systems": "#d4c430",
    "requests": "#40c040",
    "user": "#20d4c4",
    "context": "#c060f0"
  },
  "entry_batch_size": 24,
  "entry_load_threshold": 6,
  "storage_backend": "json"
}

Set storage_backend to sqlite for larger stores. The Web UI and MCP migrate existing JSON entries automatically when you switch backends.

entry_batch_size and entry_load_threshold control pagination in the web UI — how many cards load at once and when to trigger "load more".

Section names are normalized to lowercase, duplicates are ignored after normalization, and removing a section with existing entries automatically migrates those entries to uncategorized. meta.json is kept in sync with the current effective section list.

Older stores may still contain legacy embedding-related config keys; they are dropped the next time configuration is loaded or saved.


Memory sections

Section

What to store

project

Tech stack, architecture, goals

actions

What was done, decisions made

systems

Services, modules, integrations

requests

User preferences, recurring asks

user

Name, style, expertise, preferences

context

Anything else relevant


Web UI

rememb includes a local web interface for supervision — browse memory, inspect history, and tune runtime settings. Entry writes and edits go through MCP; the Web UI does not expose create/edit/delete controls for entries.

rememb                       # Open the web UI (http://localhost:18181)
rememb --host 0.0.0.0        # Bind to all interfaces
rememb --port 9000           # Custom port
rememb --no-browser          # Start server without opening the browser

rememb web UI

Overview with entry totals and recent memory activity.

rememb stats view

Stats with totals, section breakdown, date range, and recent entries.

rememb settings view

Settings for limits, storage backend, section colors, and maintenance actions.

rememb skills view

Skills browser for bundled agent skills included with rememb.

Views:

  • Overview — entry totals, deleted count, store size, and recent memory

  • Memory — browse, keyword search, filter by section, sort, and include deleted entries

  • Stats — totals, backend, section bars, oldest/newest timestamps, and recent entries

  • Settings — edit limits, storage backend, section colors, consolidate duplicates, and save runtime config

  • Skills — browse bundled agent skills (60 skills shipped in the package)

Entry inspection from the UI includes version history and side-by-side diff. Restore is available through MCP (rememb_restore); the Web UI is read-only for entry mutations.

rememb_search accepts an optional exact tag filter, so IDE clients can restrict keyword matches before ranking.


CLI

rememb                                                      # Open the web UI (http://localhost:18181)
rememb --host 0.0.0.0 --port 18181 --no-browser            # Custom bind, no auto-open
rememb mcp                                                  # Start MCP server over stdio
rememb mcp --transport sse --host 127.0.0.1 --port 8765    # One persistent local MCP process
rememb --version, -v                                        # Show version
rememb --help, -h                                           # Show help

Compatibility

The current compatibility surface is tracked explicitly in COMPATIBILITY.md.

Short version:

  • Python 3.10 to 3.12 are covered by CI

  • CLI contract and MCP tool schema (17 tools) have automated test coverage

  • stdio MCP is the primary documented integration path

  • SSE MCP is documented and partially tested at the route level

  • release automation and Trusted Publishing are documented in RELEASE.md


Design

  • Local first — plain JSON or SQLite on disk

  • Portable — copy ~/.rememb/ anywhere, it works

  • Agnostic — any agent, any IDE (MCP or CLI)

  • No lock-in — no servers, no API keys, no accounts

Core capabilities:

  • structured memory with sections and tags

  • keyword search with agent-side relevance judgment

  • non-destructive versioning, diff, restore, and soft delete

  • duplicate consolidation (exact content) and store stats

  • config and maintenance via Web UI (settings only; entry writes via MCP)

  • 60 bundled agent skills via Web UI and MCP


Contributing

git clone https://github.com/LuizEduPP/Rememb
cd Rememb
pip install -e ".[dev]"

PRs welcome. Issues welcome. Stars welcome. 🌟


License

MIT

Available Tools

12 tools
rememb_clearA

Permanently delete ALL memory entries at once. Irreversible — no recovery is possible after this operation. Requires confirm=true as a safety guard. Use rememb_delete to remove a single entry by ID instead. Only use this to fully reset the memory store.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmYesMust be true to confirm deletion

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the tool's destructive nature ('Permanently delete', 'Irreversible — no recovery is possible'), safety mechanism ('Requires confirm=true as a safety guard'), and scope ('ALL memory entries at once'). However, it doesn't mention potential side effects like error handling or system state changes beyond deletion.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured with four sentences that each add value: stating the action and irreversibility, specifying the safety parameter, differentiating from the sibling tool, and providing usage context. There is no redundant or wasted information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with no annotations and no output schema, the description does well by covering purpose, guidelines, and behavioral transparency. It could be more complete by mentioning what 'memory entries' entail or potential confirmation feedback, but it adequately addresses the core context given the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the schema already documents the single parameter (confirm). The description adds context by explaining its purpose as a 'safety guard', but doesn't provide additional semantic details beyond what the schema states. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Permanently delete ALL memory entries at once') and distinguishes it from the sibling tool rememb_delete, which removes a single entry by ID. It explicitly identifies the resource (memory entries) and scope (all at once).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool ('Only use this to fully reset the memory store'), when not to use it (implied by the alternative), and names the alternative tool ('Use rememb_delete to remove a single entry by ID instead'). It also includes a prerequisite ('Requires confirm=true as a safety guard').

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_consolidateA

Consolidate duplicate entries and merge metadata (tags and access data). Supports exact mode (default, normalized content match) and semantic mode (cosine similarity threshold). This mutates storage by removing redundant entries and keeping one consolidated record per duplicate group.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoConsolidation mode: exact (normalized content) or semantic (similarity threshold)exact
sectionNoOptional section filter: project, actions, systems, requests, user, context
similarity_thresholdNoCosine similarity threshold used when mode is semantic (>0 and <=1)

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Explicitly states that the tool mutates storage by removing redundant entries, which is a critical behavioral trait. Without annotations, this disclosure is valuable. However, it does not cover potential side effects like irreversibility or what happens to merged metadata in conflicts.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, first sentence clearly states purpose, second adds behavioral note and modes. Efficient and front-loaded, though could mention return value or more details without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no output schema, the description explains the core action but omits details like how merged metadata is handled, conflict resolution, or what the tool returns. Could be more complete given the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since schema description coverage is 100%, the baseline is 3. The description repeats mode and threshold info already in the schema, adding little extra meaning. It does not clarify default values beyond what the schema says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool consolidates duplicate entries and merges metadata. Specifies two modes (exact and semantic) and their basis (normalized content match, cosine similarity). This distinguishes it from sibling tools like rememb_delete or rememb_clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Describes the two modes but does not explicitly state when to choose one over the other or when not to use this tool. Siblings such as rememb_delete exist for removing specific entries, but no guidance on consolidation vs deletion is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_deleteA

Permanently delete a single memory entry by its ID. Deletion is irreversible — the entry cannot be recovered. No cascading side effects. Use rememb_edit to update instead. Use rememb_clear to delete all entries at once.

ParametersJSON Schema
NameRequiredDescriptionDefault
entry_idYesEntry ID to delete

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and effectively discloses key behavioral traits: it specifies that deletion is 'permanent' and 'irreversible,' clarifies there are 'no cascading side effects,' and distinguishes it from update operations. It doesn't cover aspects like error handling or permissions, but provides substantial context for a destructive operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, followed by critical warnings and sibling comparisons. Every sentence earns its place: the first states the action, the second warns of irreversibility, the third clarifies side effects, and the last two provide usage alternatives. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (destructive operation with no annotations or output schema), the description is largely complete: it covers purpose, irreversible nature, lack of side effects, and sibling distinctions. It doesn't specify return values or error cases, but for a single-parameter delete tool, this is sufficient for safe use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents the 'entry_id' parameter. The description adds no additional semantic details about the parameter beyond implying it's used for deletion. This meets the baseline of 3 when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('permanently delete') and resource ('a single memory entry by its ID'), distinguishing it from siblings like rememb_edit (update) and rememb_clear (delete all). It avoids tautology by not just restating the tool name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance is provided on when to use this tool vs. alternatives: 'Use rememb_edit to update instead. Use rememb_clear to delete all entries at once.' This directly addresses sibling tools and clarifies the scope of deletion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_editA

Update an existing memory entry in-place by its ID. Modifies only the fields provided (content, section, or tags) — omitted fields are unchanged. Non-destructive: the entry is updated, not deleted and recreated. Use rememb_write to create new entries, rememb_delete to permanently remove one.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoReplace tags
contentNoNew content
sectionNoMove to different section
entry_idYesEntry ID (8 hex characters)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses key behavioral traits: the operation is 'non-destructive' (the entry is updated, not deleted and recreated), it modifies only provided fields, and it works on existing entries by ID. However, it doesn't mention potential errors (e.g., invalid ID), permissions, or rate limits, leaving some gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, followed by behavioral details and usage guidelines. Every sentence earns its place: the first defines the action, the second explains partial updates, the third clarifies non-destructiveness, and the fourth provides sibling alternatives. No wasted words, and structure supports quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description does well by covering purpose, behavior, and guidelines. However, as a mutation tool, it lacks details on error cases, response format, or side effects (e.g., whether updates are logged). It's mostly complete but could be enhanced with more operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters (entry_id, content, section, tags) with descriptions. The description adds marginal value by clarifying that omitted fields are unchanged and that section can be moved, but this mostly reinforces the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'update' and resource 'existing memory entry' with specific scope 'in-place by its ID', distinguishing it from siblings like rememb_write (create new) and rememb_delete (remove). It explicitly mentions what fields can be modified (content, section, or tags), making the purpose highly specific and differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool vs. alternatives: 'Use rememb_write to create new entries, rememb_delete to permanently remove one.' It also clarifies that omitted fields remain unchanged, helping the agent understand the partial update behavior. This gives clear context for tool selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_initA

Initialize rememb memory storage. Useful for explicit setup and recovery flows. Home-first root resolution also auto-initializes ~/.rememb when needed, and this tool remains idempotent and safe to call repeatedly.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_nameNoOptional project name

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behaviors. It states the tool is idempotent and safe to call repeatedly, which is helpful. However, it does not explain what exactly is initialized (e.g., files, directories), required permissions, or return values, leaving some behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three clear sentences, front-loaded with the core purpose, and no unnecessary words. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one optional parameter, no output schema, and no annotations, the description covers purpose, usage context, and safety. It could be more complete by hinting at return values, but overall it is adequate for a simple initialization tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (the single parameter 'project_name' is described as 'Optional project name'). The tool description adds no additional meaning or usage guidance for this parameter beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Initialize rememb memory storage' using a specific verb and resource. It distinguishes from siblings by focusing on initialization, but does not explicitly contrast with other tools like rememb_clear or rememb_delete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains it is 'useful for explicit setup and recovery flows' and notes that auto-initialization may cover needs, providing context on when to use. It also mentions idempotency, implying safe repeated calls, but lacks explicit when-not scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_list_skillsA

List bundled rememb skills discovered from the installed package contents. Safe, read-only operation.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It correctly declares the operation as 'Safe, read-only operation', but provides no additional behavioral details such as output format or potential side effects. Transparency is adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two sentences, no wasted words. The key action and safety trait are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description covers the essential purpose and safety. It could elaborate on what 'bundled rememb skills' are, but it is sufficiently complete for a simple list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the baseline is 4. The description does not add parameter semantics, but none are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'List bundled rememb skills' and specifies the source 'from the installed package contents'. It distinguishes itself from sibling tools like rememb_delete or rememb_write which are mutations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by stating it's a safe, read-only list operation, but does not explicitly state when to use it over alternatives like rememb_use_skill. However, given its unique purpose among siblings, it is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_readA

Read all memory entries or filter by section. Safe, read-only operation with no side effects. Use this at the start of every session to load context. Prefer rememb_search when looking for specific information by keyword or topic.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectionNoFilter by section: project, actions, systems, requests, user, context
max_charsNoMaximum characters of content to include per entry
summary_onlyNoRender a compact one-line summary per entry

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Declares the operation as safe and read-only with no side effects, which is sufficient given no annotations. Could mention response formatting or limits, but the parameter max_chars hints at content control.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences covering purpose, safety, usage guideline, and sibling differentiation. No superfluous text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (3 parameters, no output schema), the description provides adequate context: purpose, safety, usage recommendation, and comparison to sibling. Minor omission: default behavior when no section is specified (reads all) is implied but not explicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed parameter descriptions. The tool description only restates the filtering capability, adding no new semantic information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool reads memory entries, with optional filtering by section. Differentiates from sibling rememb_search by specifying its use for keyword search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use advice (start of every session to load context) and when to prefer alternative (rememb_search for specific keywords). This fully addresses usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_read_pageA

Read a paginated slice of entries with server-side truncation. Best for browsing large stores without flooding the context window.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoOptional exact tag filter applied before pagination
limitNoMaximum entries to return
offsetNoZero-based page offset
sectionNoOptional section filter: project, actions, systems, requests, user, context
sort_byNoSort order before paginationstorage
max_charsNoMaximum characters of content to include per entry
descendingNoReverse the selected sort order
summary_onlyNoRender a compact one-line summary per entry

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, description carries full burden. It mentions 'server-side truncation' and 'paginated slice', adding behavioral traits. However, it does not detail response format, error behavior, or permission requirements, leaving gaps for an 8-parameter tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, direct, no wasted words. Front-loaded with purpose and key benefit.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 8 parameters and no output schema, description is brief. Covers main purpose but lacks details on sort, filters, and output shape. Adequate but could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. Description adds no parameter-specific details beyond the schema, just reiterating the overall pagination concept.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Read a paginated slice of entries', giving a specific verb and resource. It distinguishes from sibling 'rememb_read' (likely non-paginated) through the pagination and 'best for browsing large stores' hint.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Best for browsing large stores without flooding the context window', providing clear context for when to use. Does not explicitly exclude small stores or name alternatives, but hints at alternatives via sibling context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_statsA

Return memory usage statistics: total entries, size in KB, oldest and newest entry dates, and count per section. Safe, read-only operation with no side effects. Use to give the user an overview of their memory store or to decide if cleanup is needed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states 'Safe, read-only operation with no side effects,' which covers safety and mutability. However, it lacks details on performance (e.g., response time) or potential errors, leaving some behavioral aspects unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose in the first sentence, followed by behavioral context and usage guidelines. Every sentence adds value without redundancy, and it's efficiently structured in two sentences, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (0 parameters, no output schema, no annotations), the description is mostly complete. It covers purpose, behavior, and usage. However, without an output schema, it could benefit from hinting at the return format (e.g., structured data with the listed metrics), leaving a minor gap in completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately adds no parameter details, focusing on the tool's purpose instead. A baseline of 4 is applied since no parameters exist, and the description doesn't introduce unnecessary complexity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('Return memory usage statistics') and resources ('memory store'), listing concrete metrics like total entries, size, dates, and counts. It distinguishes from siblings like rememb_clear (cleanup) and rememb_read (specific entries) by focusing on aggregate statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool: 'to give the user an overview of their memory store or to decide if cleanup is needed.' It distinguishes from alternatives by implying that other tools (e.g., rememb_clear for cleanup) are for actions based on this overview, providing clear context for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_use_skillA

Load one bundled rememb skill by identifier or exact declared name and return its instructions. Safe, read-only operation. Use rememb_list_skills first to inspect available skills.

ParametersJSON Schema
NameRequiredDescriptionDefault
skillYesSkill identifier (directory name) or exact declared skill name

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Explicitly declares 'Safe, read-only operation' in the absence of annotations, disclosing its non-destructive nature. Adds that it returns instructions, providing clear behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff. First sentence states purpose and behavior, second gives usage guidance. Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is sufficiently complete. It could mention the return format of instructions, but not required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no new information beyond what the schema already provides (skill identifier or exact name).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the specific action 'load' on a 'bundled rememb skill' and distinguishes between identifier and exact name. It clearly differentiates from sibling tools like rememb_list_skills, which inspects skills.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance to use 'rememb_list_skills first to inspect available skills', indicating when this tool should be used. Missing explicit exclusions but sufficient for the task.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rememb_writeA

Save a new memory entry. Creates a new entry and returns its ID — does not overwrite existing entries. Use when you learn something new worth remembering across sessions. Use rememb_edit instead to update an existing entry by ID. semantic_scope controls whether semantic duplicate blocking checks globally or only inside the target section.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoTags to categorize this entry
contentYesContent to remember (1-3 sentences)
sectionNoSection: project, actions, systems, requests, user, contextcontext
semantic_scopeNoSemantic duplicate guard scope: global (all sections) or section (target section only)global

TDQS

A4.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description carries full burden. Discloses creation, ID return, non-overwriting, and semantic duplicate blocking, but does not detail blocking behavior (e.g., whether it prevents creation or merely checks), nor any authorization or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences front-load purpose and usage, zero waste. Every sentence adds distinct value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers creation, ID return, duplicate blocking scope. No output schema, but mentions return value ('returns its ID'). Sufficient for a 4-param tool with full schema docs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage (baseline 3). Description adds value by explaining that semantic_scope controls duplicate blocking behavior across sections, clarifying intent beyond enum values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb ('Save', 'Creates') and resource ('memory entry'), explicitly notes it does not overwrite, and implies returns ID. Distinguishes from sibling rememb_edit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Use when you learn something new worth remembering across sessions' and directs to rememb_edit for updating. Provides clear context and alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv0.4.11
    • Addedrememb_consolidate
    • Addedrememb_list_skills
    • Changedrememb_read2 fields changed
      • addedInput schema / properties / max_chars
        Added value: +{
        +  "description": "Maximum characters of content to include per entry",
        +  "type": "integer"
        +}
      • addedInput schema / properties / summary_only
        Added value: +{
        +  "default": false,
        +  "description": "Render a compact one-line summary per entry",
        +  "type": "boolean"
        +}
    • Addedrememb_read_page
    • Changedrememb_search4 fields changed
      • addedInput schema / properties / max_chars
        Added value: +{
        +  "description": "Maximum characters of content to include per entry",
        +  "type": "integer"
        +}
      • addedInput schema / properties / section
        Added value: +{
        +  "description": "Optional section filter: project, actions, systems, requests, user, context",
        +  "enum": [
        +    "project",
        +    "actions",
        +    "systems",
        +    "requests",
        +    "user",
        +    "context"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / summary_only
        Added value: +{
        +  "default": true,
        +  "description": "Render a compact one-line summary per entry",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / tag
        Added value: +{
        +  "description": "Optional exact tag filter applied before semantic search",
        +  "type": "string"
        +}
    • Addedrememb_use_skill
    • Changedrememb_write1 field changed
      • addedInput schema / properties / semantic_scope
        Added value: +{
        +  "default": "global",
        +  "description": "Semantic duplicate guard scope: global (all sections) or section (target section only)",
        +  "enum": [
        +    "global",
        +    "section"
        +  ],
        +  "type": "string"
        +}
  2. 1 tool updatev0.1.2
    • Addedrememb_stats
  3. 7 tool updatesv0.1.0
    • First observedrememb_clear
    • First observedrememb_delete
    • First observedrememb_edit
    • First observedrememb_init
    • First observedrememb_read
    • First observedrememb_search
    • First observedrememb_write

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose. Reading, searching, deleting, editing, and management operations are all uniquely defined without overlap.

Naming Consistency5/5

All tools follow the consistent 'rememb_verb_noun' pattern with underscore separation, making them predictable and easy to understand.

Tool Count5/5

12 tools cover the full lifecycle of memory management (CRUD, consolidation, statistics, skills) without being excessive or insufficient.

Completeness5/5

The tool set provides complete coverage for a memory store: create, read (with pagination and search), update, delete (single and bulk), initialization, statistics, and skill management.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Persistent semantic memory for AI agents. SQLite-backed, local-first, zero config. Semantic search via Ollama embeddings with keyword fallback. Tools: remember, recall, history, forget, stats.
    17
    37
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Self-hosted semantic memory for AI agents. Save worklogs, decisions, and notes via MCP, then recall them across sessions by meaning rather than keyword. Backed by Postgres + pgvector with local embeddings (multilingual-e5-base).
    1
    MIT

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/LuizEduPP/Rememb'

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