memex
OCI · GHCR.IO/KIOIE/MEMEX:0.6.0 · SCANNED SEP 20
Local MCP memory for coding agents. SQLite on your machine — preferences persist across chats.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security0
- Malware scan not yet available for this package.Unverified
- Known CVEs could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
- Install-script risk not yet assessed.Unverified
- Dependency health could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
Provenance & Transparency35
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: no license is declared. See how to fix → Fail
- Actively maintained (last published 117 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability85
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1423 tokens (~142/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management90
- Stability observed for 27 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_all_memories" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
How do I install the memex MCP server?
memex runs locally as a container image, launched with docker run --rm -i ghcr.io/kioie/memex:0.6.0. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.
oci · ghcr.io/kioie/memex:0.6.0
claude mcp add kioie-memex -- docker run --rm -i ghcr.io/kioie/memex:0.6.0
{
"mcpServers": {
"kioie-memex": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/kioie/memex:0.6.0"
]
}
}
} {
"servers": {
"kioie-memex": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/kioie/memex:0.6.0"
]
}
}
} codex mcp add kioie-memex -- docker run --rm -i ghcr.io/kioie/memex:0.6.0
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"kioie-memex": {
"type": "local",
"command": [
"docker",
"run",
"--rm",
"-i",
"ghcr.io/kioie/memex:0.6.0"
],
"enabled": true
}
}
} mcp_servers:
kioie-memex:
command: "docker"
args: ["run", "--rm", "-i", "ghcr.io/kioie/memex:0.6.0"] {
"McpServers": {
"kioie-memex": {
"Transport": "stdio",
"Command": "docker",
"Arguments": [
"run",
"--rm",
"-i",
"ghcr.io/kioie/memex:0.6.0"
]
}
}
} {
"mcpServers": {
"kioie-memex": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/kioie/memex:0.6.0"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 17 Sept 26 −3
- Stability: pass → 0.80 functional
- 16 Sept 26 +1
- Stability: 0.97 → pass security
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 10 Sept 26 −3
- Stability: pass → 0.80 functional
- 9 Sept 26 +1
- Stability: 0.97 → pass security
- 7 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed oci/ghcr.io/kioie/memex:0.6.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | oci |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
delete_all_memories ~64
Delete all memories for a user_id scope. Requires confirm=true. Destructive — use rarely.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | yes | Must be true to delete all memories in scope |
| user_id | string | – | User scope to wipe (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
delete_memories ~48
Delete multiple memories by ID list for a user scope.
| Name | Type | Req | Description |
|---|---|---|---|
| ids | null|array | yes | Memory IDs to delete (required) |
| user_id | string | – | Scope deletes to user_id |
No output schema declared.
No examples provided.
forget ~94
Soft-delete one active memory by ID (sets valid_to; row kept for audit). Use delete_memories for batch; use delete_all_memories only with explicit user confirmation.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Scope delete to agent_id when set |
| id | string | yes | Memory ID to delete (from remember or recall output) |
| user_id | string | – | Scope delete to user_id (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
get_memory ~71
Fetch one memory by exact ID. Use after recall/list returns an ID.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Scope fetch to agent_id when set |
| id | string | yes | Memory ID to fetch (required) |
| user_id | string | – | Scope fetch to user_id (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
list_memories ~171
List memories with filters and pagination without a search query. Use when browsing recent context; use recall when you have keywords.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Filter by agent_id |
| include_inactive | boolean | – | Include superseded or deleted memories (default false) |
| limit | integer | – | Maximum results (default 10, max 50) |
| metadata | object | – | Exact metadata key/value filters |
| offset | integer | – | Skip first N results |
| run_id | string | – | Filter by run_id |
| source | string | – | Filter by source: user, agent, or system |
| tags | null|array | – | Filter by tags (any match) |
| type | string | – | Filter by memory type |
| user_id | string | – | Scope list to user_id |
No output schema declared.
No examples provided.
memory_history ~56
Return ADD/UPDATE/DELETE audit trail for a memory ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Memory ID to fetch history for (required) |
| user_id | string | – | Scope history to user_id (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
recall ~267
Search active stored memories by keyword (FTS5 + BM25) fused with entity boost and optional hybrid vectors (MEMEX_HYBRID=1). Query is required — use list_memories to browse recent rows without keywords. Superseded and deleted rows are excluded by default. For bounded context size use retrieve_context instead.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Filter by agent_id (defaults to MEMEX_AGENT_ID when set) |
| include_inactive | boolean | – | Include superseded or deleted memories (default false) |
| limit | integer | – | Maximum results (default 10, max 50) |
| metadata | object | – | Exact metadata key/value filters (e.g. {"source":"agent"}) |
| offset | integer | – | Skip first N results for pagination |
| query | string | yes | Search text (required); use list_memories to browse without keywords |
| run_id | string | – | Filter by run_id (defaults to MEMEX_RUN_ID when set) |
| source | string | – | Filter by source: user, agent, or system |
| tags | null|array | – | Filter by tags (any match) |
| type | string | – | Filter by memory type |
| user_id | string | – | Scope search to user_id (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
remember ~255
Store durable agent memory (preferences, decisions, facts, commitments). Set source=agent for assistant-originated facts; commitment/recommendation/action_taken types default to agent. Duplicate content for the same user_id returns the existing active memory. Use recall or retrieve_context to read; use update_memory to supersede a fact; use forget/delete_memories to soft-delete.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Scope memory to an agent (defaults to MEMEX_AGENT_ID when set) |
| content | string | yes | Fact, preference, decision, or note to store (required) |
| metadata | object | – | Optional JSON metadata bag |
| run_id | string | – | Tag memory with a run/session id (defaults to MEMEX_RUN_ID when set) |
| source | string | – | Who originated the memory: user, agent, or system (defaults to user; agent types default to agent) |
| tags | null|array | – | Optional tags for filtering (e.g. user, project, preference) |
| type | string | – | Memory type: note, preference, decision, fact, procedure, commitment, recommendation, or action_taken |
| user_id | string | – | Scope memory to a user (defaults to MEMEX_USER_ID or default) |
No output schema declared.
No examples provided.
retrieve_context ~231
Search ranked memories and pack JSON output within max_tokens (greedy, highest fused rank first). Fuses keyword, entity, and optional hybrid vector signals via reciprocal rank fusion. Requires query. Set MEMEX_HYBRID=1 to enable local vector retrieval.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Filter by agent_id (defaults to MEMEX_AGENT_ID when set) |
| include_inactive | boolean | – | Include superseded or deleted memories (default false) |
| max_tokens | integer | – | Token budget for packed JSON output (default 4096, max 32768) |
| metadata | object | – | Exact metadata key/value filters |
| query | string | yes | Search text (required) |
| run_id | string | – | Filter by run_id (defaults to MEMEX_RUN_ID when set) |
| source | string | – | Filter by source: user, agent, or system |
| tags | null|array | – | Filter by tags (any match) |
| type | string | – | Filter by memory type |
| user_id | string | – | Scope search to user_id (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
update_memory ~166
Supersede an active memory by ID: closes the old row and appends a new one (returns a new ID). Prefer this over remember when revising an existing fact. Sibling: get_memory to read first.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_id | string | – | Scope update to agent_id when set |
| content | string | yes | New content (required) |
| id | string | yes | Memory ID to update (required) |
| metadata | object | – | Replace metadata when provided |
| source | string | – | Replace source when provided (user, agent, or system) |
| tags | null|array | – | Replace tags when provided |
| type | string | – | Replace memory type when provided |
| user_id | string | – | Scope update to user_id (defaults to MEMEX_USER_ID) |
No output schema declared.
No examples provided.
What is the memex MCP server?
memex is an MCP server listed in the public MCP registry as io.github.kioie/memex. Local MCP memory for coding agents. SQLite on your machine, preferences persist across chats. This page covers its container image (ghcr.io/kioie/memex:0.6.0).
Is the memex MCP server safe to use?
memex scores 51 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the memex MCP server expose?
memex exposes 10 tools: delete_all_memories, delete_memories, forget, get_memory, list_memories, and 5 more. Their descriptions and schemas cost roughly 1,423 tokens of context every time the server is loaded.
Is the memex MCP server still maintained?
memex is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.