Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

MCP AutoMem

NPM · @VERYGOODPLUGINS/MCP-AUTOMEM · 3 COMPONENTS · SCANNED AUG 3

Graph-vector memory for AI assistants using FalkorDB and Qdrant

+21 this week 62 Trust /100
Trust breakdown (6 categories)

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 →

Supply Chain Security87
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (101 of 105), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (101 of 105), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability58
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2153 tokens (~358/item across 6 items; 6 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 Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
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
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.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.

Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @verygoodplugins/mcp-automem

# add to Claude Code
claude mcp add verygoodplugins-mcp-automem -- npx -y @verygoodplugins/mcp-automem
# add to Codex CLI
codex mcp add verygoodplugins-mcp-automem -- npx -y @verygoodplugins/mcp-automem
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "verygoodplugins-mcp-automem": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@verygoodplugins/mcp-automem"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add verygoodplugins-mcp-automem --command npx --arg -y --arg @verygoodplugins/mcp-automem
# ~/.hermes/config.yaml
mcp_servers:
  verygoodplugins-mcp-automem:
    command: "npx"
    args: ["-y", "@verygoodplugins/mcp-automem"]
// mcp.json
{
  "mcpServers": {
    "verygoodplugins-mcp-automem": {
      "command": "npx",
      "args": [
        "-y",
        "@verygoodplugins/mcp-automem"
      ]
    }
  }
}
Changelog

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.

  • 2 Aug 26 +56
    • Provenance: unverified → fail security
    • Known CVEs: unverified → partial security
    • Install scripts: unverified → pass security
    • Malware scan: unverified → pass security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Dependency health: partial → unverified functional
    • MCP protocol: unverified → pass functional
    • Schema quality: unverified → excellent functional
    • Tool coverage: unverified → 100 functional
    • License: unverified → pass functional
    • Maintenance: unverified → pass functional
    • Licence: MIT functional
  • 1 Aug 26 −11
    • Tool coverage: 100 → unverified functional
    • Dependency health: unverified → partial functional
  • 31 Jul 26 −6
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −1
    • Malware scan: pass → unverified security
    • Tool coverage: unverified → 100 functional
  • 28 Jul 26 −17
    • Tool coverage: 100 → unverified functional
    • First check of Schema quality: unverified functional
  • 27 Jul 26 41

    First indexed and scored.

Diagnostics

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 3 Aug 2026 · Analysed npm/@verygoodplugins/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 101 packages

101 packages in the resolved dependency tree · 101 deprecated · 32 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 6 exposed · ~2,153 tokens

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.

Tool Tokens
associate_memories ~389

Create a typed relationship between two memories. This builds a knowledge graph that improves recall by surfacing related context. **When to use:** - After storing a new memory: link it to related existing memories - When a bug fix relates to an original feature implementation - When a new decision updates or invalidates a previous one - To connect patterns with their concrete examples **Relationship types:** - RELATES_TO: General relationship (default) - LEADS_TO: Causal relationship (A caused B) - DERIVED_FROM: Implementation of a decision/pattern - EXEMPLIFIES: Concrete example of a pattern - EVOLVED_INTO: Updated version of a concept - INVALIDATED_BY: Superseded by another memory - CONTRADICTS: Conflicts with another memory - REINFORCES: Strengthens another memory's validity - PART_OF: Component of a larger effort - PREFERS_OVER: Chosen alternative - OCCURRED_BEFORE: Temporal ordering **Examples:** - associate_memories({ memory1_id: "bug-fix-123", memory2_id: "feature-456", type: "RELATES_TO", strength: 0.9 }) - associate_memories({ memory1_id: "new-decision", memory2_id: "old-decision", type: "EVOLVED_INTO", strength: 0.8 })

NameTypeReqDescription
memory1_idstringyesID of the source memory (from store_memory response or recall results)
memory2_idstringyesID of the target memory to link to
strengthnumberyesRelationship strength: 0.9+ direct causation, 0.7-0.9 strong relation, 0.5-0.7 moderate
typestringyesRelationship type (see tool description for meanings)
NameTypeReqDescription
messagestringyesConfirmation message
successbooleanyesWhether the association was created

No examples provided.

check_database_health ~75

Check the health status of the AutoMem service and its connected databases (FalkorDB graph + Qdrant vectors). **When to use:** - Before a session to verify the memory service is available - When memory operations are failing unexpectedly - To check storage statistics **Example:** - check_database_health({})

Input schema present but exposes no named parameters.

NameTypeReqDescription
backendstringyesBackend type (automem)
errorstringError message if status is error
statisticsobjectDatabase statistics (memory counts, etc.)
statusstringyesOverall health status

No examples provided.

delete_memory ~105

Permanently delete a memory and its embedding. Use sparingly - consider updating instead. **When to use:** - Memory contains incorrect information that can't be corrected - Memory is a duplicate - Memory contains sensitive information that shouldn't persist - Memory is no longer relevant and clutters recall results **Example:** - delete_memory({ memory_id: "abc123" })

NameTypeReqDescription
memory_idstringyesID of the memory to delete (from store_memory or recall results)
NameTypeReqDescription
memory_idstringyesID of the deleted memory
messagestringyesConfirmation message

No examples provided.

recall_memory ~884

Search and retrieve relevant memories using semantic search, keywords, tags, time filters, and graph expansion. This is the primary tool for accessing stored knowledge. **When to use:** - At conversation start: recall context about the current project/topic - Before making decisions: check for past decisions on similar topics - When debugging: search for similar past errors and their solutions - When implementing: find established patterns and preferences - For complex questions: use expand_entities for multi-hop reasoning **Search strategies:** - Semantic: Use natural language queries like "authentication timeout issues" - Tags: Filter by project or category with tags: ["my-project", "bug-fix"] - Time: Use time_query for recency like "last 7 days" or "today" - Multi-query: Pass multiple queries in 'queries' array for broader recall - Multi-hop: Use expand_entities=true for questions requiring connected reasoning **Examples:** - recall_memory({ query: "database architecture decisions", tags: ["my-project"], limit: 5 }) - recall_memory({ queries: ["auth patterns", "login flow", "JWT tokens"], limit: 10 }) - recall_memory({ tags: ["bug-fix"], time_query: "last 30 days", limit: 5 }) - recall_memory({ query: "What is Sarah's sister's job?", expand_entities: true }) // Multi-hop - recall_memory({ query: "Python style preferences", language: "python", context: "coding-style" })

NameTypeReqDescription
active_pathstringCurrent file path for language auto-detection (e.g., "src/auth.ts")
auto_decomposebooleanAuto-extract entities and topics from query to generate supplementary searches.
contextstringContext label (e.g., "coding-style", "architecture"). Boosts matching preferences.
context_tagsarrayPriority tags to boost in results (e.g., ["coding-style", "preferences"])
context_typesarrayPriority memory types to boost (e.g., ["Style", "Preference"])
embeddingarrayOptional embedding vector for direct similarity search
endstringISO timestamp upper bound
expand_entitiesbooleanEnable multi-hop reasoning via entity expansion. Finds memories about people/places mentioned in seed results. Use for "What is X's sister's job?" type questions.
expand_min_importancenumberMinimum importance score for expanded results. Filters out low-relevance memories during graph/entity expansion. Recommended: 0.3-0.5 for broad context, 0.6-0.8 for focused results. Seed results are…
expand_min_strengthnumberMinimum relation strength to follow during graph expansion. Only traverses edges above this threshold. Recommended: 0.3 for exploratory, 0.6+ for high-confidence connections only. Does not affect ent…
expand_relationsbooleanFollow graph relationships from seed results to find related memories.
expansion_limitintegerMax total expanded memories (default: 25)
languagestringProgramming language hint (e.g., "python", "typescript"). Prioritizes language-specific memories.
limitintegerMax memories to return (default: 5, increase for broader context)
priority_idsarraySpecific memory IDs to ensure are included in results
queriesarrayMultiple queries for broader recall. Results are deduplicated server-side.
querystringSemantic search query (natural language). Describe what you're looking for.
relation_limitintegerMax relations to follow per seed memory (default: 5)
startstringISO timestamp lower bound (alternative to time_query)
tag_matchstring"exact" for exact tag match (default), "prefix" for starts-with matching
tag_modestring"any" matches memories with any tag (default), "all" requires all tags
tagsarrayFilter by tags. Use project name as first tag for scoping.
time_querystringNatural language time filter: "today", "yesterday", "last week", "last 30 days"
NameTypeReqDescription
countintegeryesNumber of memories returned
dedup_removedintegerNumber of duplicate results removed (when using multiple queries)
resultsarrayyesArray of matching memories with scores

No examples provided.

store_memory ~418

Store a memory with optional tags, importance score, and metadata. Use this to persist important information for future recall. **Content size guidelines:** - Target: 150-300 characters (one meaningful paragraph) - Maximum: 500 characters (auto-summarized if exceeded) - Hard limit: 2000 characters (rejected) - Format: "Brief title. Context and details. Impact/outcome." **When to use:** - After making a decision: store the reasoning and outcome - When discovering a pattern: store the pattern and where it applies - After fixing a bug: store the root cause and solution - When learning user preferences: store what they prefer and why **Examples:** - store_memory({ content: "Chose PostgreSQL over MongoDB for user service. Need ACID for transactions.", tags: ["architecture", "database"], importance: 0.9 }) - store_memory({ content: "User prefers early returns over nested conditionals in validation code.", tags: ["code-style", "preferences"], importance: 0.7 }) - store_memory({ content: "Auth timeout fixed by adding retry with exponential backoff. Root cause: flaky network.", tags: ["bug-fix", "auth"], importance: 0.8 })

NameTypeReqDescription
contentstringyesThe memory content to store. Be specific: include context, reasoning, and outcome.
embeddingarrayOptional embedding vector for semantic search (auto-generated if omitted)
importancenumberImportance score: 0.9+ critical decisions, 0.7-0.9 patterns/bugs, 0.5-0.7 minor notes
metadataobjectOptional structured metadata (e.g., { files_modified: ["auth.ts"], error_type: "timeout" })
tagsarrayTags to categorize the memory (e.g., ["project-name", "bug-fix", "auth"])
timestampstringOptional ISO timestamp (defaults to now)
NameTypeReqDescription
memory_idstringyesUnique ID of the stored memory (use this for associations)
messagestringyesConfirmation message

No examples provided.

update_memory ~282

Update an existing memory's content, tags, importance, or metadata. Use this to correct or enhance memories rather than storing duplicates. **When to use:** - To correct inaccurate information in a memory - To add tags that were forgotten - To adjust importance based on new understanding - To add metadata after the fact **Examples:** - update_memory({ memory_id: "abc123", importance: 0.95 }) // Increase importance - update_memory({ memory_id: "abc123", tags: ["project-x", "critical", "auth"] }) // Add tags - update_memory({ memory_id: "abc123", content: "Updated: PostgreSQL chosen for ACID + team expertise" })

NameTypeReqDescription
confidencenumberConfidence score for the memory
contentstringNew content (replaces existing)
importancenumberNew importance score
last_accessedstringLast access timestamp
memory_idstringyesID of the memory to update (from store_memory or recall results)
metadataobjectNew metadata (merged with existing)
tagsarrayNew tags (replaces existing)
timestampstringOverride creation timestamp
typestringMemory type classification
updated_atstringExplicit update timestamp
NameTypeReqDescription
memory_idstringyesID of the updated memory
messagestringyesConfirmation message

No examples provided.