external-memory — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited external-memory (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill provides access to a persistent, searchable semantic memory system via the MCP (Model Context Protocol) server.
The external-memory MCP server provides these tools:
| Tool | Description |
|---|---|
memory_store | Persist text with optional namespace/tags/metadata |
memory_search | Semantic search using cosine similarity |
memory_get | Retrieve a single memory by ID |
memory_delete | Delete a memory by ID |
memory_list | List memories with filtering and pagination |
memory_stats | Get statistics (counts, namespaces) |
memory_update | Update an existing memory |
Call memory_store to persist information:
# Basic storage
memory_store(content="Alice prefers dark mode", namespace="users")
# With tags
memory_store(
content="The API endpoint is https://api.example.com/v1",
namespace="config",
tags=["api", "production"]
)
# With metadata
memory_store(
content="Meeting with Bob at 3pm",
namespace="meetings",
metadata={"date": "2026-04-13", "attendees": ["alice", "bob"]}
)Parameters:
content (required): The text to storenamespace: Logical collection (default: "default")tags: Optional list of tags for filteringmetadata: Arbitrary JSON metadataid: Optional stable ID for upsertsCall memory_search for semantic similarity search:
# Basic search
memory_search(query="what does Alice prefer?")
# With filters
memory_search(
query="API configuration details",
namespace="config",
tags=["api"],
top_k=10,
min_score=0.7
)Returns results sorted by cosine similarity score.
# By ID
memory_get(id="uuid-here")
# List with filtering
memory_list(namespace="users", tags=["alice"], limit=20, offset=0)# Update
memory_update(id="uuid", content="new content", tags=["updated"])
# Delete
memory_delete(id="uuid")memory_stats()
# Returns: {"total": 150, "namespaces": {"users": 50, "config": 100}, "db_path": "..."}Set environment variables to customize behavior:
MEMORY_DB_PATH: Database file path (default: ~/.memory/memory.db)MEMORY_EMBED_BACKEND: Embedding backend (tfidf, openai, ollama)MEMORY_OPENAI_MODEL: OpenAI model (default: text-embedding-3-small)MEMORY_OLLAMA_URL: Ollama server URLMEMORY_DEFAULT_TOP_K: Default search results (default: 5)MEMORY_MIN_SCORE: Minimum similarity threshold (default: 0.0)text-embedding-3-small model~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.