Local-first MCP server for durable agent memory
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution in MK-986123/server-memory
transport stdio counts 20 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
add_observations
-
backup_memory
-
create_entities
-
create_relations
-
delete_entities
-
delete_observations
-
delete_relations
-
export_graph
-
get_observation_history
-
import_graph
-
log_activity
-
manage_tags
-
memory_context
-
memory_context_full
-
memory_stats
-
merge_entities
-
open_nodes
-
query_timeline
-
read_graph
-
search_nodes
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 20cccc4 · analyzer v28 · 2h ago
skills & prompt files 1
- agent-rules MK-986123-server-memory-20cccc4/AGENTS.md
danger signals1
- dynamic code execution eval()/exec() MK-986123-server-memory-20cccc4/tests/test_tools.py :1064
monkeypatch.setattr(server_module, "EmbeddingEngine", lambda model_name: exec("raise(RuntimeError('Embedding init failed'))"))
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 30
filesystem 7
- fs MK-986123-server-memory-20cccc4/src/server_memory/config.py :8
from pathlib import Path - fs MK-986123-server-memory-20cccc4/src/server_memory/db.py :9
from pathlib import Path - fs MK-986123-server-memory-20cccc4/src/server_memory/graph.py :2480
db.open() - fs MK-986123-server-memory-20cccc4/src/server_memory/local_auth.py :9
from pathlib import Path - fs MK-986123-server-memory-20cccc4/src/server_memory/paths.py :9
from pathlib import Path - fs MK-986123-server-memory-20cccc4/src/server_memory/server.py :10
from pathlib import Path - fs MK-986123-server-memory-20cccc4/src/server_memory/stdio_proxy.py :11
from pathlib import Path
network 1
- net MK-986123-server-memory-20cccc4/src/server_memory/stdio_proxy.py :14
import httpx
secrets 1
- secrets MK-986123-server-memory-20cccc4/src/server_memory/local_auth.py :38
override = os.environ.get("MEMORY_HTTP_AUTH_TOKEN", "").strip()
database 2
- db MK-986123-server-memory-20cccc4/src/server_memory/db.py :6
import sqlite3 - db MK-986123-server-memory-20cccc4/src/server_memory/graph.py :8
import sqlite3
tool registrations 20
- create_entities MK-986123-server-memory-20cccc4/src/server_memory/server.py :396
- create_relations MK-986123-server-memory-20cccc4/src/server_memory/server.py :442
- add_observations MK-986123-server-memory-20cccc4/src/server_memory/server.py :473
- delete_entities MK-986123-server-memory-20cccc4/src/server_memory/server.py :525
- delete_observations MK-986123-server-memory-20cccc4/src/server_memory/server.py :555
- delete_relations MK-986123-server-memory-20cccc4/src/server_memory/server.py :584
- read_graph MK-986123-server-memory-20cccc4/src/server_memory/server.py :613
- search_nodes MK-986123-server-memory-20cccc4/src/server_memory/server.py :663
- open_nodes MK-986123-server-memory-20cccc4/src/server_memory/server.py :716
- memory_context MK-986123-server-memory-20cccc4/src/server_memory/server.py :745
- log_activity MK-986123-server-memory-20cccc4/src/server_memory/server.py :790
- query_timeline MK-986123-server-memory-20cccc4/src/server_memory/server.py :851
- manage_tags MK-986123-server-memory-20cccc4/src/server_memory/server.py :896
- merge_entities MK-986123-server-memory-20cccc4/src/server_memory/server.py :981
- export_graph MK-986123-server-memory-20cccc4/src/server_memory/server.py :1018
- import_graph MK-986123-server-memory-20cccc4/src/server_memory/server.py :1051
- memory_stats MK-986123-server-memory-20cccc4/src/server_memory/server.py :1077
- backup_memory MK-986123-server-memory-20cccc4/src/server_memory/server.py :1096
- get_observation_history MK-986123-server-memory-20cccc4/src/server_memory/server.py :1149
- memory_context_full MK-986123-server-memory-20cccc4/src/server_memory/server.py :1183
declared dependencies 11
- mcp@>=1.0.0
- platformdirs@>=4.3.8
- httpx@>=0.27.0
- sentence-transformers@>=2.0.0
- numpy@>=1.24.0
- build@>=1.2.2
- pip-audit@>=2.7.0
- pytest@>=8.0.0
- pytest-asyncio@>=0.23.0
- ruff@>=0.6.0
- twine@>=5.0.0