agent-working-memory (CompleteIdeas/agent-working-memory) is an MCP server listed on the M8ven Trust Index. It scores 66 out of 100, grade C. It declares 13 tools. No publisher has claimed this listing.

C
Caution
66/100

agent-working-memory

Persistent, local-first memory for AI agents. Selective by design: filters what's worth keeping, links what's related, and says nothing when it doesn't know. SQLite + ONNX, no cloud, no API keys.

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

CompleteIdeas

Source: github_repo_search

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
🚨
Known vulnerabilities in dependencies: 1 critical, 2 high
Affects packages this MCP installs at runtime. Upgrade or remove the affected dependency.
🔐
You'll be asked for 2 credentials: AWM_API_KEY, AWM_HOOK_SECRET
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes32 tools · 19 behind config

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

coord_checkin

Register or heartbeat an agent in the hive. Call at session start and periodically.

coord_checkout

Sign off from the hive. Releases all locks and marks agent as dead. Call at session end.

coord_assign

Create a task assignment. Orchestrator uses this to dispatch work to agents.

coord_assignment

Get your current assignment, or auto-claim the next pending task. Call this to find out what to work on.

coord_assignment_update

Report progress or completion of an assignment. Set status to in_progress, completed, failed, or blocked.

coord_lock

Acquire a file lock to prevent concurrent edits by other agents.

coord_unlock

Release a file lock you hold.

coord_locks

List all currently held file locks across all agents.

coord_command

Issue a broadcast command to all agents. Orchestrator only. Commands: BUILD_FREEZE, PAUSE, RESUME, SHUTDOWN.

coord_command_poll

Check for active commands from the orchestrator. Call periodically to stay responsive to BUILD_FREEZE, PAUSE, etc.

coord_workers

List available workers in the hive. Filterable by capability, status, and workspace.

coord_finding

Report a finding (bug, issue, suggestion) discovered during work.

coord_status

Get a full dashboard view of the hive: agents, assignments, locks, findings, and stats.

memory_writebehind config

Store a memory. The salience filter decides whether it's worth keeping (active), needs more evidence (staging), or should be discarded. CALL THIS PROACTIVELY — do not wait to be asked. Write memories when you: - Discover something about the codebase, bugs, or architecture - Make a decision and want

memory_recallbehind config

Recall memories relevant to a query. Uses cognitive activation — not keyword search. ALWAYS call this when: - Starting work on a project or topic (recall what you know) - Debugging (recall similar errors and solutions) - Making decisions (recall past decisions and outcomes) - The user mentions a to

memory_feedbackbehind config

Report whether a recalled memory was actually useful. This updates the memory's confidence score — useful memories become stronger, useless ones weaken. Always call this after using a recalled memory so the system learns what's valuable.

memory_retractbehind config

Retract a memory that turned out to be wrong. Creates a correction and reduces confidence of related memories. Use this when you discover a memory contains incorrect information.

memory_supersedebehind config

Replace an outdated memory with a newer one. Unlike retraction (which marks memories as wrong), supersession marks the old memory as outdated but historically correct. Use this when: - A status or count has changed (e.g., "5 reviews done" → "7 reviews done") - Architecture or infrastructure evolved

memory_whoamibehind config

Identify THIS AWM instance — agent id, mode (standalone/hive), backend, store path, code provenance, ports, and the sibling agent spaces present in the same store. Call when unsure which AWM instance or memory space you are talking to.

memory_statsbehind config

Get memory health stats — how many memories, confidence levels, association count, and system performance. Also shows the activity log path so the user can tail it to see what's happening.

memory_checkpointbehind config

Save your current execution state so you can recover after context compaction. ALWAYS call this before: - Long operations (multi-file generation, large refactors, overnight work) - Anything that might fill the context window - Switching to a different task Also call periodically during long sessio

memory_restorebehind config

Restore your previous execution state after context compaction or at session start. Returns: - Your saved execution state (task, decisions, next steps, files) - Recently recalled memories for context - Your last write for continuity - How long you were idle Use this at the start of every session o

onboard_scanbehind config

Scan a project's documentation + repository and return CANDIDATE memories to seed a cold store. Use this when the store is empty / you're new to a project. The scan is deterministic (real file contents, not guesses) — YOUR job is to refine the candidates into atomic, recall-shaped memories, run the

onboard_questionsbehind config

Return the onboarding interview questions. Ask the user ONE at a time, starting with the goal of the memory system, and ask follow-ups for clarity. Turn each answer into a canonical memory.

memory_task_addbehind config

Create a task that you need to come back to. Tasks are memories with status and priority tracking. Use this when: - You identify work that needs doing but can't do it right now - The user mentions something to do later - You want to park a sub-task while focusing on something more urgent Tasks aut

memory_task_updatebehind config

Update a task's status or priority. Use this to: - Start working on a task (open → in_progress) - Mark a task done (→ done) - Block a task on another (→ blocked) - Reprioritize (change priority) - Unblock a task (clear blocked_by)

memory_task_listbehind config

List tasks with optional status filter. Shows tasks ordered by priority (urgent first). Use at the start of a session to see what's pending, or to check blocked/done tasks.

memory_task_nextbehind config

Get the single most important task to work on next. Prioritizes: in_progress tasks first (finish what you started), then by priority level, then oldest first. Skips blocked and done tasks. Use this when you finish a task or need to decide what to do next.

memory_task_beginbehind config

Signal that you're starting a significant task. Auto-checkpoints current state and recalls relevant memories. CALL THIS when starting: - A multi-step operation (doc generation, large refactor, migration) - Work on a new topic or project area - Anything that might fill the context window This ensur

memory_task_endbehind config

Signal that you've finished a significant task. Writes a summary memory and auto-checkpoints. CALL THIS when you finish: - A multi-step operation - Before switching to a different topic - At the end of a work session This captures what was accomplished so future sessions can recall it.

compress_outputbehind config

Compress a STRUCTURED tool output (JSON object/array, query rows, log records) into TOON — a compact, schema-aware tabular encoding — before putting it in your context. Cuts ~50-65% of the tokens on uniform arrays at zero comprehension cost (validated: models read TOON as accurately as JSON). Use th

retrieve_originalbehind config

Retrieve the verbatim original text for a 'ref' returned by compress_output. Use this when you need the exact, uncompressed source (e.g. to pass it to another tool unchanged). Returns an error if the ref has expired (originals are kept for the most recent compressions only).

// known CVEs in dependencies1 critical2 high3 low

Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.

criticalvitest@4.0.18GHSA-5xrq-8626-4rwp

When Vitest UI server is listening, arbitrary file can be read and executed

high@toon-format/toon@2.3.0GHSA-p95v-992w-h6c3

TOON: Prototype pollution when decoding untrusted TOON input

highfastify@5.8.2GHSA-247c-9743-5963

Fastify has a Body Schema Validation Bypass via Leading Space in Content-Type Header

lowfastify@5.8.2GHSA-444r-cwp2-x5xf

fastify: request.protocol and request.host Spoofable via X-Forwarded-Proto/Host from Untrusted Connections

lowfastify@5.8.2GHSA-w2qp-rph6-63g4

fastify vulnerable to schema validation bypass via root primitive coercion mismatch

Depend on this server? Get alerted when its CVEs change.Watch this server free →
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configAWM_ABSTAIN_GATE_K
configAWM_AGENT_ID
configAWM_ALIASES
configAWM_ALIAS_MAP
configAWM_ALIAS_QUERY_CAP
🔐 secretAWM_API_KEY
configAWM_BIND
configAWM_BROAD_EDGES
configAWM_BROAD_EDGES_MAX
configAWM_CACHE_DIR
configAWM_CLIENT
configAWM_CONF_CLIFF_W
configAWM_CONF_FLOOR_W
configAWM_CONF_SHARPNESS_W
configAWM_CONNECTION_COLD_START_THRESHOLD
configAWM_CONSOLIDATION_CRON
configAWM_COORDINATION
configAWM_COORD_REQUIRE_TOKENS
configAWM_DATABASE_URL
configAWM_DB_PATH
configAWM_DEFAULT_EXPANSION
configAWM_DISABLE_EXPANSION_CACHE
configAWM_DISABLE_POOL_FILTER
configAWM_DISABLE_SCHEDULER
configAWM_DISABLE_SLIM_CACHE
configAWM_EMBED_DIMS
configAWM_EMBED_MODEL
configAWM_EMBED_POOLING
configAWM_ENTITY_FETCH_CAP
configAWM_ENTITY_FETCH_SEEDS
configAWM_ENTITY_INDEX_CAP
configAWM_FADE_DAYS_SINCE_ACCESS
configAWM_FADE_KEEP_CHARS
configAWM_FADE_MAX_PER_CYCLE
configAWM_FADE_MIN_CONTENT_LEN
configAWM_FEEDBACK_NAMES
configAWM_FEEDBACK_VERBS
configAWM_GRANULARITY_AUTO_THRESHOLD
configAWM_GRANULARITY_COMPACT_LEN
configAWM_GRANULARITY_FULL_LEN
configAWM_HOOK_PORT
configAWM_HOOK_PORT_RANGE
🔐 secretAWM_HOOK_SECRET
configAWM_INCOGNITO
configAWM_IVFFLAT_PROBES
configAWM_PACKAGE_ROOT
configAWM_PGLITE_BM25_M
configAWM_PG_POOL_MAX
configAWM_PLUGINS
configAWM_PORT
configAWM_PROFILE_WRITE
configAWM_QUERY_BRIDGE_CAP
configAWM_QUERY_BRIDGE_FLOOR
configAWM_QUERY_BRIDGE_WEIGHT
configAWM_REINFORCE_MAX_CONTENT_LEN
configAWM_RERANK2
configAWM_RERANK2_K
configAWM_RERANKER_MODEL
configAWM_RERANK_POOL
configAWM_RERANK_TAGS
configAWM_RERANK_TAGS_LEN
configAWM_RERANK_TRUNC
configAWM_RETRIEVAL_TEXT
configAWM_SETUP_HOME
configAWM_SIM_CANDIDATE_FLOOR_EXPLORATORY
configAWM_SIM_CANDIDATE_FLOOR_TARGETED
configAWM_SIM_FLOOR_EXPLORATORY
configAWM_SIM_FLOOR_TARGETED
configAWM_SLOW_WRITE_MS
configAWM_SNIPPET_WEIGHT
configAWM_SPREAD_BOOST
configAWM_SPREAD_BUDGET
configAWM_SPREAD_DAMPING
configAWM_SPREAD_INHIBIT
configAWM_SPREAD_INJECT
configAWM_SPREAD_INJECT_CAP
configAWM_SPREAD_INJECT_MIN
configAWM_SPREAD_INJECT_SCALE
configAWM_SPREAD_ITERS
configAWM_STORE_BACKEND
configAWM_TEMPORAL
configAWM_TEMPORAL_BOOST
configAWM_TOPN_MULT
configAWM_WORKSPACE
configAWM_WRITE_PIPELINE
configCLAUDE_PROJECT_DIR
configHF_HOME
configWORKER_NAME
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

32/32 tools missing one or more hints — coord_checkin (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); coord_checkout (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); coord_assign (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +29 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tool test coverage

21/32 tools referenced in tests (66%)

Write tests that reference each tool by name so every tool has at least one test.

No eval / new Function

6 eval() or new Function() calls — dynamic code execution

Replace eval / Function with explicit parsing or safer alternatives.

Shell command execution

1 call in production code run through a shell (src/cli.ts:310)

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Production dependencies are patched

0 critical, 2 high severity in production deps — @toon-format/toon@2.3.0 (high), fastify@5.8.2 (high)

Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.

Dev dependencies

1 critical/high in dev-only deps (does not ship to users)

Upgrade dev dependencies when convenient.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 7 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/completeideas/agent-working-memory?variant=verified)](https://m8ven.ai/mcp/completeideas/agent-working-memory)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 985417f6718c018d88efd2ff6f949350dfc9460d
code hash: eca6aec37cae5f78b70710de1ee399042f05358e02a368ceb1c70b7e83cc1850
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client