basic-memory-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BASIC_MEMORY_READ_ONLY | No | Set to '1' to expose only read-only tools. | |
| BASIC_MEMORY_HARD_DELETE | No | Set to '1' to unlink files instead of moving them to trash. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| 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
| Name | Description |
|---|---|
| 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 |
| 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
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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