← Back to search

io.github.billy12151/memory-arbiter-mcp

billy12151 Scanned 5h ago

Shared memory store for AI coding tools with dual-timeline conflict arbitration.

C
65.5 / 100

Versions

0.1.1latest
first seen Jul 8, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 4

memory
annotations: none low

Daily memory operations: remember, find, batch_find, read, update, judge, status, help. Call memory(action="help") to discover accepted fields, judge requirements, value enums, update modes, and action_required paths before relying on a result that requests attention. update edits in place: <=3 local edits use patches=[{old_text,new_text}] (atomic all-or-nothing, one version bump); full rewrites use new_content; a single small edit may use old_text/new_text. batch_find runs up to 8 queries in one call and returns one merged index page (dedup by memory_id, matched_query_ids per item). find is an index page: results carry metadata + content_chars + a bounded outline (offsets usable directly as read span starts), not full content — content_mode (v0.15.10, preview default) is a single-choice enum: "hits" adds hit_spans (vector-matched unit text + span coordinates, never truncated; >=50% coverage upgrades an item to full text), "full" returns whole texts. Score compares only within the page; if the top page misses, reword the query or add tags_filter instead of deep paging. The size block meters the returned page (tokens_estimate + display_hint).

data string action str
memory_review
annotations: none low

Read-only inspection: overview, doctor, conflicts, conflict_detail, history, expired, audit, entities, help. Use memory_review(view="help") for accepted fields. Inspect conflict_detail before judging a conflict so its members, value groups, revision, and apply state are visible.

data string view str
memory_govern
annotations: none low

Authorized governance: retire, merge near-duplicates, apply/replan/resolve conflicts, confirm, and manage workspaces. Every state-changing action requires explicit user authorization for that action, then authorized=true. Call memory_govern(action="help") for exact actions, accepted fields, impact notes, and confirmation semantics.

data string action str
memory_repair
annotations: none low

Maintenance: evidence rebuild, conflict scans (scheduled-task spec under help topic scheduled_tasks), full-library duplicate sweeps (scan_duplicates), history cleanup, entity assignment, pending activation, backup replay, notices, and semantic runtime control. Use memory_repair(task="help") for notice handling and semantic_control actions. Semantic notices are advisory; read both memories before dismiss or resolve, and never pass a notice directly to judge or resolve_conflict.

data string task str

Permissions 5

network medium
Server uses network capabilities via: http, urllib
filesystem low
Server uses filesystem capabilities via: open(), os, pathlib, shutil, tempfile
shell high
Server uses shell capabilities via: subprocess
database medium
Server uses database capabilities via: sqlite3
env_vars low
Server uses env_vars capabilities via: os.environ, os.getenv()

Scan Findings 62

low
Tool 'memory' has no annotations annotation_checker · 100%
low
Tool 'memory_review' has no annotations annotation_checker · 100%
low
Tool 'memory_govern' has no annotations annotation_checker · 100%
low
Tool 'memory_repair' has no annotations annotation_checker · 100%
medium
OAuth implementation without PKCE auth_checker · 75%
high
Remote transport without authentication auth_checker · 70%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: pytest@8.0.0 (GHSA-6w46-j5rx-g56g) dependency_analyzer · 95%
medium
Vulnerable dependency: pytest@8.0.0 (PYSEC-2026-1845) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (GHSA-3qhf-m339-9g5v) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (GHSA-9h52-p55h-vw2f) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (GHSA-j975-95f5-7wqh) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (GHSA-jpw9-pfvf-9f58) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (GHSA-vj7q-gjh5-988w) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (PYSEC-2026-1616) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (PYSEC-2026-1617) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (PYSEC-2026-1618) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (PYSEC-2026-3482) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.29.0,<2 (PYSEC-2026-3483) dependency_analyzer · 95%
medium
High-entropy string (6.68 bits/char) in billy12151-memory-arbiter-mcp-3956106/memory_arbiter/semantic_conflict.py:60 entropy_analyzer · 65%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/memory_arbiter/surfaces.py:228 entropy_analyzer · 70%
medium
High-entropy string (6.68 bits/char) in billy12151-memory-arbiter-mcp-3956106/scripts/eval_grammar_free_matrix.py:44 entropy_analyzer · 65%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:37 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:42 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:45 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:46 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:47 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:48 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:49 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:50 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:51 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:52 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:53 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:54 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:55 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:56 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:57 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:58 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:59 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:60 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:61 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:62 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:63 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:64 entropy_analyzer · 70%
medium
Hex string literal (>50 chars) in billy12151-memory-arbiter-mcp-3956106/scripts/backfill_subjects.py:65 entropy_analyzer · 70%
medium
High-entropy string (5.75 bits/char) in billy12151-memory-arbiter-mcp-3956106/tests/test_internal_noise_rule.py:40 entropy_analyzer · 51%
medium
High-entropy string (5.76 bits/char) in billy12151-memory-arbiter-mcp-3956106/tests/test_recall_blacklist.py:321 entropy_analyzer · 51%
info
pyproject.toml metadata manifest_parser · 100%
info
Tool: memory manifest_parser · 90%
info
Tool: memory_review manifest_parser · 90%
info
Tool: memory_govern manifest_parser · 90%
info
Tool: memory_repair manifest_parser · 90%
info
Transport: streamable-http manifest_parser · 80%
info
Required env vars (3) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 80%
low
Permission: filesystem access detected permission_analyzer · 90%
high
Permission: shell access detected permission_analyzer · 95%
medium
Permission: database access detected permission_analyzer · 90%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 3 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%