Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BASIC_MEMORY_READ_ONLYNoSet to '1' to expose only read-only tools.
BASIC_MEMORY_HARD_DELETENoSet to '1' to unlink files instead of moving them to trash.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
discover_topicsA

List available topics. Call this before read/write/edit/delete/append/rename/sweep.

Returns a JSON list of {id, title, tags, updated, size, snippet, outbound_links, expires, match_reason}, newest first. With a query, snippets are centered on the first body match. Expired topics are hidden by default; pass include_expired=true to reveal them, marked with "expired": true. Reports when results are truncated by limit or when expired topics were hidden.

readA

Read a single topic in full, including its YAML frontmatter.

Errors with a clear message if the topic does not exist; call discover_topics first. Expired topics are still readable by id.

relatedA

Report outbound and inbound wiki-link relationships for a topic.

Returns {id, outbound, inbound}. outbound lists [[topic-id]] links in this topic; inbound lists topics that link to this topic. Errors if the topic does not exist.

writeA

Create or replace a topic. Overwrites existing topics without asking; use edit for targeted changes.

Parent folders are created implicitly. Returns the resolved id and whether the topic was created or replaced. Rejects content over approximately 1 MB; split large memories into multiple topics. Retention controls expiry: permanent means never; session/today means 24 hours; week means 7 days; month means 30 days.

editA

Exact-string replacement inside an existing topic, like the Claude Code Edit tool.

Fails if the topic does not exist. Fails if 'old' is not found. Fails if 'old' appears more than once and replace_all is false. Bumps the 'updated' timestamp. To change title, tags, or expiry, use write instead.

appendA

Append text to an existing topic without rewriting the whole body.

Inserts with exactly one blank line between the old body and the new text. If heading is supplied, appends under an existing ## heading or creates it at the end. Fails if the topic does not exist. Bumps the 'updated' timestamp. A retention argument only extends the current expiry; it never shortens it.

renameA

Move a topic and rewrite wiki links that pointed to it.

Also rewrites prefix links: renaming scratch/archive/scratch/ fixes [[scratch/x]] links. Refuses if new_id already exists. Returns the count of rewritten links so the model knows the blast radius.

deleteA

Soft-delete a topic, moving it to /.trash//.md.

Returns the trash path so it can be manually restored. Parent folders are pruned if empty. Topics are never unlinked.

sweepA

List or soft-delete topics whose expiry has passed.

dry_run=true returns the list without changing anything; the model should review it and then call sweep(dry_run=false) to move the topics into .trash.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/garland3/basic-memory-mcp'

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