MCP AutoMem
NPM · @VERYGOODPLUGINS/MCP-AUTOMEM · 3 COMPONENTS · SCANNED AUG 3
Graph-vector memory for AI assistants using FalkorDB and Qdrant
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 →
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
- 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
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 37 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
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.
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
claude mcp add verygoodplugins-mcp-automem -- npx -y @verygoodplugins/mcp-automem
codex mcp add verygoodplugins-mcp-automem -- npx -y @verygoodplugins/mcp-automem
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"verygoodplugins-mcp-automem": {
"type": "local",
"command": [
"npx",
"-y",
"@verygoodplugins/mcp-automem"
],
"enabled": true
}
}
} openclaw mcp add verygoodplugins-mcp-automem --command npx --arg -y --arg @verygoodplugins/mcp-automem
mcp_servers:
verygoodplugins-mcp-automem:
command: "npx"
args: ["-y", "@verygoodplugins/mcp-automem"] {
"mcpServers": {
"verygoodplugins-mcp-automem": {
"command": "npx",
"args": [
"-y",
"@verygoodplugins/mcp-automem"
]
}
}
} 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.
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.
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.
associate_memories 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 })
| Name | Type | Req | Description |
|---|---|---|---|
| memory1_id | string | yes | ID of the source memory (from store_memory response or recall results) |
| memory2_id | string | yes | ID of the target memory to link to |
| strength | number | yes | Relationship strength: 0.9+ direct causation, 0.7-0.9 strong relation, 0.5-0.7 moderate |
| type | string | yes | Relationship type (see tool description for meanings) |
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | yes | Confirmation message |
| success | boolean | yes | Whether the association was created |
No examples provided.
check_database_health 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.
| Name | Type | Req | Description |
|---|---|---|---|
| backend | string | yes | Backend type (automem) |
| error | string | — | Error message if status is error |
| statistics | object | — | Database statistics (memory counts, etc.) |
| status | string | yes | Overall health status |
No examples provided.
delete_memory 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" })
| Name | Type | Req | Description |
|---|---|---|---|
| memory_id | string | yes | ID of the memory to delete (from store_memory or recall results) |
| Name | Type | Req | Description |
|---|---|---|---|
| memory_id | string | yes | ID of the deleted memory |
| message | string | yes | Confirmation message |
No examples provided.
recall_memory 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" })
| Name | Type | Req | Description |
|---|---|---|---|
| active_path | string | — | Current file path for language auto-detection (e.g., "src/auth.ts") |
| auto_decompose | boolean | — | Auto-extract entities and topics from query to generate supplementary searches. |
| context | string | — | Context label (e.g., "coding-style", "architecture"). Boosts matching preferences. |
| context_tags | array | — | Priority tags to boost in results (e.g., ["coding-style", "preferences"]) |
| context_types | array | — | Priority memory types to boost (e.g., ["Style", "Preference"]) |
| embedding | array | — | Optional embedding vector for direct similarity search |
| end | string | — | ISO timestamp upper bound |
| expand_entities | boolean | — | Enable 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_importance | number | — | Minimum 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_strength | number | — | Minimum 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_relations | boolean | — | Follow graph relationships from seed results to find related memories. |
| expansion_limit | integer | — | Max total expanded memories (default: 25) |
| language | string | — | Programming language hint (e.g., "python", "typescript"). Prioritizes language-specific memories. |
| limit | integer | — | Max memories to return (default: 5, increase for broader context) |
| priority_ids | array | — | Specific memory IDs to ensure are included in results |
| queries | array | — | Multiple queries for broader recall. Results are deduplicated server-side. |
| query | string | — | Semantic search query (natural language). Describe what you're looking for. |
| relation_limit | integer | — | Max relations to follow per seed memory (default: 5) |
| start | string | — | ISO timestamp lower bound (alternative to time_query) |
| tag_match | string | — | "exact" for exact tag match (default), "prefix" for starts-with matching |
| tag_mode | string | — | "any" matches memories with any tag (default), "all" requires all tags |
| tags | array | — | Filter by tags. Use project name as first tag for scoping. |
| time_query | string | — | Natural language time filter: "today", "yesterday", "last week", "last 30 days" |
| Name | Type | Req | Description |
|---|---|---|---|
| count | integer | yes | Number of memories returned |
| dedup_removed | integer | — | Number of duplicate results removed (when using multiple queries) |
| results | array | yes | Array of matching memories with scores |
No examples provided.
store_memory 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 })
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | The memory content to store. Be specific: include context, reasoning, and outcome. |
| embedding | array | — | Optional embedding vector for semantic search (auto-generated if omitted) |
| importance | number | — | Importance score: 0.9+ critical decisions, 0.7-0.9 patterns/bugs, 0.5-0.7 minor notes |
| metadata | object | — | Optional structured metadata (e.g., { files_modified: ["auth.ts"], error_type: "timeout" }) |
| tags | array | — | Tags to categorize the memory (e.g., ["project-name", "bug-fix", "auth"]) |
| timestamp | string | — | Optional ISO timestamp (defaults to now) |
| Name | Type | Req | Description |
|---|---|---|---|
| memory_id | string | yes | Unique ID of the stored memory (use this for associations) |
| message | string | yes | Confirmation message |
No examples provided.
update_memory 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" })
| Name | Type | Req | Description |
|---|---|---|---|
| confidence | number | — | Confidence score for the memory |
| content | string | — | New content (replaces existing) |
| importance | number | — | New importance score |
| last_accessed | string | — | Last access timestamp |
| memory_id | string | yes | ID of the memory to update (from store_memory or recall results) |
| metadata | object | — | New metadata (merged with existing) |
| tags | array | — | New tags (replaces existing) |
| timestamp | string | — | Override creation timestamp |
| type | string | — | Memory type classification |
| updated_at | string | — | Explicit update timestamp |
| Name | Type | Req | Description |
|---|---|---|---|
| memory_id | string | yes | ID of the updated memory |
| message | string | yes | Confirmation message |
No examples provided.