# @memstack/mcp

MCP server for MemStack — AI agent memory via Model Context Protocol

- **Type:** MCP server
- **Trust:** 85/100 (A), scored on the package rubric
- **Verification:** verified (build provenance)
- **Version:** 0.7.2
- **Author:** Unknown
- **License:** MIT
- **npm:** @memstack/mcp
- **Source:** https://github.com/isiomaC/memstack
- **Compatible clients:** claude-code, cursor, copilot, gemini (basis: transport)

## Trust

85/100 (A), scored on the package rubric
- Publisher verified: no
- Build provenance: verified attestation
- npm trusted publishing (OIDC): yes
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 0 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-09-06T10:51:38.100Z
- **Version scanned:** 0.7.2
- **CVEs:** none found by OSV at scan time
**Findings**
- injection-shaped content (note) in the `memory_compile_context` tool: References the system prompt

## Tools

20 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `memory_process` — Store a memory with auto-enrichment (importance scoring, tag extraction, auto-summarization, auto-pruning). This is the primary method for recording interaction
- `memory_store` — Store a memory directly without enrichment. Use this when you already have importance/tags or want precise control.
- `memory_store_batch` — Store multiple memories in one call, directly without enrichment. Embeddings (if configured) are computed in a single batched call for efficiency.
- `memory_get` — Get a single memory by ID. Returns null if not found.
- `memory_retrieve` — Retrieve memories for an actor with optional filtering, semantic search, and date range constraints.
- `memory_compile_context` — Compile memories into an LLM-ready system prompt (markdown formatted, token-budgeted, split into important and recent sections).
- `memory_summarize` — Summarize old memories into a single summary memory. Compresses N interactions into 1 summary via LLM.
- `memory_prune` — Prune (delete) memories matching the given strategy. Scoped to a single actor — defaults to the current session actor. Returns the pruned memory IDs and count. 
- `memory_purge_actor` — Delete ALL memories belonging to a specific actor. Irreversible.
- `memory_merge` — Merge multiple memories into one. Uses the highest-importance memory as the base and appends content from the rest.
- `memory_stats` — Get memory statistics: total count, by type, by actor, average importance, and more.
- `memory_delete` — Delete a single memory by ID.
- `memory_delete_many` — Delete multiple memories by ID in one call. Returns the number actually deleted.
- `memory_touch` — Bump a memory's recency (last-accessed timestamp) without changing its content, id, or createdAt.
- `memory_export` — Export a snapshot of memories for backup or migration. Returns { version, memories, exportedAt }.
- `memory_import` — Import memories from a snapshot previously produced by memory_export. Restores each memory as-is, including its original ID.
- `memory_health` — Check the health of storage, LLM, and embedding connections.
- `memory_dry_run_prune` — Preview what would be pruned by a given strategy WITHOUT actually deleting. Scoped to a single actor — defaults to the current session actor. Returns the memory
- `memory_context` — Injects compiled memory context for the current actor
- `actorId` — Actor ID (defaults to session actor)

## Install

**Verdict: install** — No blocking findings and no open coverage gaps — safe to install as configured.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"@memstack/mcp\"\n      ]\n    }\n  }\n}"
```

## Blast radius

Extensive to critical — no credential declaration found, from the publisher, the upstream registry, or the README. Known so far: deletes data; runs on your machine.
- Floor 37, ceiling 61 (tier: unknown)
- `unknown` means the floor and ceiling land in different bands — not measured enough to name one. It does not mean low.
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/%40memstack%2Fmcp
- Install plan: https://forgeregistry.com/api/v1/packages/%40memstack%2Fmcp/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/%40memstack%2Fmcp
- HTML page: https://forgeregistry.com/registry/%40memstack%2Fmcp
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
