Total Agent Memory
PYPI · TOTAL-AGENT-MEMORY
Persistent local memory for coding agents: temporal knowledge graph, procedural and episodic recall
Available components
Last scanned (4 hours ago)
Scores higher than 0% of PyPI servers
Category Memory and Knowledge
Recent critical change
CVE-2026-112398 affects this package (29 Oct 2026). See the changelog before you install this server.
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 → Why this is hard to score →
Supply Chain Security74
- No malware found by supply-chain analysis.Pass
- CVE check failed: an unpatched critical CVE affects this package; the score is capped at 0. See how to fix → View diagnostics → Fail
- Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- Dependency health was assessed across the 119 of 121 dependencies we could resolve, so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency48
- 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 6 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability66
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 8844 tokens (~111/item across 79 items; 79 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 Coverage82
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 46% of tool parameters carry a description.Partial
Tool Safety79
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 1 of 7 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "memory_eval_locomo" implies "eval" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 80 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (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.
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.
- 5 Nov 26 0
- Stability: pass → unverified ▼ security
- Malware scan: unverified → pass ▲ security
- 4 Nov 26 0
- Malware scan: pass → unverified ▼ security
- 1 Nov 26 0
- Malware scan: unverified → pass ▲ security
- 31 Oct 26 0
- Malware scan: pass → unverified ▼ security
- Package version: 14.9.0 → 14.10.0 functional
- 30 Oct 26 0
- Malware scan: unverified → pass ▲ security
- 29 Oct 26 −32
- CVE-2026-112398 affects this package: none ▼ critical
- CVE-2026-112403 affects this package: none ▼ critical
- CVE-2026-96639 affects this package: none ▼ critical
- CVE-2026-112393 affects this package: none ▼ critical
- CVE-2026-112900 affects this package: none ▼ critical
- Score status: scored → failed ▼ critical
- Known CVEs: CVE check failed: an unpatched critical CVE affects this package; the score is capped at 0. critical
- Malware scan: pass → unverified ▼ security
- CVE-2026-45833 no longer affects this package ▲ security
- CVE-2026-45829 no longer affects this package ▲ security
- Injection markers: unverified → pass ▲ security
- Stability: unverified → pass ▲ security
- Schema quality: 8028 → 8844 ▼ functional
- Tool coverage: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Package version: 14.9.0 → 14.10.0 functional
- 28 Oct 26 +15
- Malware scan: unverified → pass ▲ security
- Package version: 14.7.0 → 14.9.0 functional
- 27 Oct 26 −15
- Malware scan: pass → unverified ▼ security
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 5 Nov 2026 · Analysed pypi/total-agent-memory@14.10.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | setuptools.build_meta |
Background: Why install scripts are a supply-chain risk →
Vulnerabilities 67 findings
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-2wm9-hf6c-p5cr | CVE-2026-45830 | high | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | no |
| GHSA-36p7-vc44-83pf | CVE-2026-45833 | critical | no | |
| GHSA-f4j7-r4q5-qw2c | CVE-2026-45829 | critical | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H | no |
| GHSA-xph7-9rjv-w5fr | CVE-2026-45831 | high | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | no |
| PYSEC-2026-311 | CVE-2026-45829 | none | no | |
| PYSEC-2026-3813 | CVE-2026-45830 | high | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | no |
| PYSEC-2026-3814 | CVE-2026-45833 | none | no | |
| PYSEC-2026-3815 | CVE-2026-45831 | high | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | no |
| GHSA-22hg-r758-rrw9 | CVE-2026-112390 | high | yes | |
| GHSA-24rc-8hj2-v98c | CVE-2026-96638 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H | yes |
| GHSA-254f-3936-288h | CVE-2026-112391 | medium | yes | |
| GHSA-27h8-gf7j-v5hc | CVE-2026-112392 | high | yes | |
| GHSA-332p-7hrc-92wf | CVE-2026-112393 | critical | yes | |
| GHSA-3j72-p6qg-6xp7 | CVE-2026-96642 | high | yes | |
| GHSA-4558-3h8r-v8xp | CVE-2026-112394 | medium | yes | |
| GHSA-462x-pgg6-55fp | CVE-2026-112395 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L | yes |
| GHSA-4rm8-3hmm-39fg | CVE-2026-96641 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H | yes |
| GHSA-4rr5-89j8-mwwm | CVE-2026-112396 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-58r4-6rv3-gfh8 | CVE-2026-112397 | high | yes | |
| GHSA-5x8w-8jj5-q52h | CVE-2026-112398 | critical | yes | |
| GHSA-5xm2-6676-qcp9 | CVE-2026-112399 | high | yes | |
| GHSA-654x-cwwv-5j9c | CVE-2026-114501 | medium | yes | |
| GHSA-65qm-jvmh-6pqg | CVE-2026-112400 | high | yes | |
| GHSA-74r2-7ff9-mjj2 | CVE-2026-112401 | medium | yes | |
| GHSA-78g4-xqwv-q3g8 | high | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | yes | |
| GHSA-7mwm-ghpf-9vrm | CVE-2026-112402 | high | yes | |
| GHSA-8g5g-8vmr-9782 | CVE-2026-112403 | critical | yes | |
| GHSA-9v9v-9qvf-h2hj | CVE-2026-96644 | high | yes | |
| GHSA-c6hw-5grf-ff96 | CVE-2026-112404 | high | yes | |
| GHSA-cp9v-662q-vvx9 | CVE-2026-112405 | high | yes | |
| GHSA-f2g6-542v-9j58 | CVE-2026-112406 | high | yes | |
| GHSA-fc9g-5qg7-mf45 | CVE-2026-112891 | medium | yes | |
| GHSA-g4qv-2jxx-769h | CVE-2026-96643 | high | yes | |
| GHSA-g7cr-3p24-7wf7 | CVE-2026-96778 | high | yes | |
| GHSA-g842-9rc4-69pw | CVE-2026-96637 | high | yes | |
| GHSA-gg2r-wvfm-q9rx | CVE-2026-112892 | high | yes | |
| GHSA-j4m9-6w36-pw47 | CVE-2026-112893 | high | yes | |
| GHSA-jg86-v3jv-hrpm | CVE-2026-112894 | high | yes | |
| GHSA-mrfp-p49p-3hf2 | CVE-2026-96640 | high | yes | |
| GHSA-p4wg-p73j-c528 | CVE-2026-112895 | high | yes | |
| GHSA-p8hx-v2p6-rp84 | CVE-2026-96636 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H | yes |
| GHSA-pchr-8j38-3x4p | CVE-2026-112896 | high | yes | |
| GHSA-q45j-58j2-45rg | CVE-2026-112897 | high | yes | |
| GHSA-rfgq-q3w2-pmv2 | CVE-2026-112898 | medium | yes | |
| GHSA-v9pv-5gc8-w2m6 | CVE-2026-96639 | critical | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | yes |
| GHSA-vx6w-vv9f-6gvg | CVE-2026-112899 | medium | yes | |
| GHSA-w889-685w-c8fh | CVE-2026-112900 | critical | yes | |
| GHSA-xgh8-jp6q-p5x8 | CVE-2026-112901 | medium | yes | |
| GHSA-xvh5-g6gv-559v | CVE-2026-112902 | high | yes | |
| PYSEC-2026-4326 | CVE-2026-112392 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
Showing 50 of 67 vulnerabilities.
Background: What a vulnerability scan can and cannot prove →
Dependencies 119 packages
| Packages resolved | 119 |
|---|---|
| Stale | 13 |
| No linked repository | 2 |
| Tree resolution | Partial |
The dependency tree was only partially resolved, so these counts may be incomplete.
Background: SBOMs and build attestations, explained →
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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
memory_search_by_tag ~57
Search knowledge by tag. Returns all active records with matching tag (partial match). Useful for categorical browsing.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | Filter by project (optional) |
| tag | string | yes | Tag to search for (partial match) |
No output schema declared.
No examples provided.
memory_search_fast ~116
v11.0: like memory_recall but with rerank=False, diverse=False forced. Deterministic fast path — zero LLM, FastEmbed-only.
| Name | Type | Req | Description |
|---|---|---|---|
| branch | string | – | – |
| detail | string | – | – |
| embedding_space | string|array | – | Filter to one or more embedding spaces (text|code|log|config). |
| fusion | string | – | – |
| limit | integer | – | – |
| project | string | – | – |
| query | string | yes | – |
| type | string | – | – |
No output schema declared.
No examples provided.
memory_self_assess ~57
Self-assessment: how competent am I in given domains? Shows level, confidence, blind spots.
| Name | Type | Req | Description |
|---|---|---|---|
| concepts | array | – | Domains/concepts to assess competency for |
| full_report | boolean | – | Return full self-model report |
No output schema declared.
No examples provided.
memory_skill_get ~57
Find skills matching a trigger. Skills are learned procedures — HOW to do things.
| Name | Type | Req | Description |
|---|---|---|---|
| list_all | boolean | – | – |
| name | string | – | Get skill by exact name |
| trigger | string | – | Natural language trigger to match |
No output schema declared.
No examples provided.
memory_skill_update ~79
Record skill usage or refine a skill. Updates success rate and metrics.
| Name | Type | Req | Description |
|---|---|---|---|
| new_anti_pattern | string | – | Anti-pattern learned from failure |
| new_steps | array | – | Additional steps to add |
| notes | string | – | – |
| skill_id | string | yes | Skill ID |
| success | boolean | yes | Was the skill application successful? |
No output schema declared.
No examples provided.
memory_stats ~65
Memory statistics with health metrics: sessions, knowledge by type/project, retention zones (active/archived/consolidated), stale records, storage size, config, write path (embedding backfill queue, outbox intents, swallowed errors by component over 24h, importance budget clamps).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
memory_temporal_query ~152
v11.0 W1-C: deterministic temporal reasoning — Allen interval relations, duration arithmetic (days/weeks/months/years), and natural-language date normalization (en + ru). Pass op=relation|duration_between|normalize.
| Name | Type | Req | Description |
|---|---|---|---|
| a | string | – | ISO datetime — duration_between |
| a_end | string | – | – |
| a_start | string | – | ISO datetime — relation only |
| anchor | string | – | ISO datetime anchor for relative phrases |
| b | string | – | – |
| b_end | string | – | – |
| b_start | string | – | – |
| lang | string | – | – |
| op | string | yes | – |
| phrase | string | – | Natural-language date — normalize |
No output schema declared.
No examples provided.
memory_timeline ~99
Browse session history. sessions_ago=N for 'N sessions ago', session_number=1 for first session, date_from/date_to for date ranges.
| Name | Type | Req | Description |
|---|---|---|---|
| date_from | string | – | YYYY-MM-DD |
| date_to | string | – | YYYY-MM-DD |
| limit | integer | – | – |
| project | string | – | – |
| query | string | – | – |
| session_number | integer | – | – |
| sessions_ago | integer | – | – |
No output schema declared.
No examples provided.
memory_update ~114
Update existing knowledge. Replaces the record `id`, or the best match for `find` (within `project` when given): supersedes it and creates a new version.
| Name | Type | Req | Description |
|---|---|---|---|
| find | string | – | Search query to find the old knowledge (when no id) |
| id | integer | – | Exact record to replace; takes precedence over find |
| new_content | string | yes | New content to replace with |
| project | string | – | Limit the find search to this project |
| reason | string | – | Why updating |
No output schema declared.
No examples provided.
memory_warmup ~40
v11.0: pre-load FastEmbed model and open the vector store, so the first save/search after process start doesn't pay model-load latency.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
memory_wiki_generate ~88
v10 — Render the per-project wiki digest (top decisions, active solutions, conventions, recent changes) as Markdown. Pass `project` to refresh one wiki, omit it to refresh all active projects. Files land in <MEMORY_DIR>/wikis/<project>.md and are deterministic (no LLM call).
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | Project to refresh (omit for all) |
No output schema declared.
No examples provided.
phase_transition ~51
v8.0: advance a task to the next phase.
| Name | Type | Req | Description |
|---|---|---|---|
| artifacts | object | – | – |
| new_phase | string | yes | – |
| notes | string | – | – |
| task_id | string | yes | – |
No output schema declared.
No examples provided.
rule_set_phase ~95
Attach or remove a phase scope on a rule (v8.0 lazy rule loading). Tag-based: manages 'phase:<X>' on the rule's tags. phase=null clears the phase tag (rule becomes core — applies to every phase). Valid phases: van, plan, creative, build, reflect, archive.
| Name | Type | Req | Description |
|---|---|---|---|
| phase | string|null | – | Phase name or null to clear. |
| rule_id | integer | yes | – |
No output schema declared.
No examples provided.
save_decision ~166
v8.0: save a structured architectural decision (options + criteria matrix + rationale + discarded). Adds `structured` tag and a JSON blob in context. Use for Creative-phase outputs; plain type=decision memory_save still works.
| Name | Type | Req | Description |
|---|---|---|---|
| criteria_matrix | object | yes | criterion -> {option_name: rating 0-5} |
| discarded | array | – | Option names rejected (subset of options - {selected}) |
| options | array | yes | Options considered: [{name, pros[], cons[], unknowns[]}, ...] |
| project | string | – | – |
| rationale | string | yes | Why this option was chosen |
| selected | string | yes | Chosen option name (must be in options) |
| tags | array | – | – |
| title | string | yes | Short decision title |
No output schema declared.
No examples provided.
save_intent ~94
Persist one user prompt into the `intents` table (same source as the UserPromptSubmit hook). Use when programmatically seeding intents — the hook covers normal interactive usage. Dedupes same prompt within 5 min per session.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | Project slug |
| prompt | string | yes | User prompt text as submitted |
| session_id | string | – | Session id (defaults to current MCP session) |
No output schema declared.
No examples provided.
search_intents ~65
Substring search over user prompts (LIKE). Returns newest match first. Useful for 'what did I ask about X' without mining transcripts.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| project | string | – | – |
| query | string | yes | Substring to match in prompt text |
No output schema declared.
No examples provided.
self_error_log ~139
Log an error/failure for pattern analysis. Call AUTOMATICALLY when: bash command fails, wrong assumption discovered, API returns error, config issue found, loop detected, or any mistake occurs. System detects patterns (3+ same category) and suggests insights.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | yes | Error category for pattern grouping |
| context | string | – | What was being done when error occurred |
| description | string | yes | What went wrong: symptom, expectation vs reality |
| fix | string | – | How it was fixed (empty if unresolved) |
| project | string | – | – |
| severity | string | – | – |
| tags | array | – | – |
No output schema declared.
No examples provided.
self_insight ~172
Manage insights from error patterns (ExpeL-style). Actions: add (create, importance=2), upvote (+1), downvote (-1, auto-archive at 0), edit, list, promote (to rule when importance>=5 AND confidence>=0.8). Call 'add' when pattern detected. Call 'upvote' when insight confirmed again.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | – |
| category | string | – | Error category (for add) |
| content | string | – | Insight text (for add/edit) |
| context | string | – | – |
| id | integer | – | Insight ID (for upvote/downvote/edit/promote) |
| project | string | – | – |
| source_error_ids | array | – | Error IDs that spawned this (for add) |
| tags | array | – | – |
No output schema declared.
No examples provided.
self_patterns ~85
Analyze error patterns and self-improvement stats. Views: error_patterns (frequency, repeating 3+), insight_candidates (ready for promotion), rule_effectiveness (success rates, stale rules), improvement_trend (weekly errors), full_report (all). Call periodically to track improvement.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | – |
| project | string | – | – |
| view | string | – | – |
No output schema declared.
No examples provided.
self_reflect ~107
Save a verbal self-reflection (Reflexion pattern). Call after completing a task or encountering difficulty. NOT for errors (use self_error_log). For meta-observations about strategy, approach effectiveness, process improvements.
| Name | Type | Req | Description |
|---|---|---|---|
| outcome | string | – | – |
| project | string | – | – |
| reflection | string | yes | What went well, what to improve, what to do differently |
| tags | array | – | – |
| task_summary | string | yes | Brief description of what was done |
No output schema declared.
No examples provided.
self_rules ~303
Manage behavioral rules (SOUL). Rules are promoted insights that shape agent behavior. Actions: list, fire (record relevance), rate (success=true/false), suspend, activate, retire, add_manual, followed (surface_id from self_rules_context(query=...): was the rule followed?), report (follow-rate effectiveness with Wilson CIs, measurement only). success_rate = success / (success + fail). Auto-suspend: 5+ ratings and the 95% upper bound of success_rate < 0.4.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | – |
| applicable | boolean | – | For followed: false marks the rule not applicable |
| category | string | – | Category (for add_manual) |
| content | string | – | Rule text (for add_manual) |
| followed | boolean|null | – | For followed: true followed, false ignored, null clears |
| id | integer | – | Rule ID (for fire/rate/suspend/activate/retire) |
| min_n | integer | – | For report: judged surfaces needed before a verdict |
| note | string | – | For followed: evidence note |
| priority | integer | – | 1-10 |
| project | string | – | – |
| scope | string | – | global | project:<name> | category:<name> |
| success | boolean | – | For rate: was rule helpful? |
| surface_id | string | – | For followed: surface_id returned by self_rules_context |
| tags | array | – | – |
No output schema declared.
No examples provided.
self_rules_context ~188
Get active behavioral rules for current session. Call at SESSION START to load rules. Returns rules filtered by project and scope. v8.0: pass `phase` to lazy-load rules relevant to current task phase — core rules (no phase tag) + rules tagged phase:<X>. Cuts prompt tokens ~70%. After task completion, rate rules: self_rules(action='rate', id=X, success=true/false).
| Name | Type | Req | Description |
|---|---|---|---|
| categories | array | – | Error categories relevant to current task |
| phase | string | – | Optional: lazy-load only rules relevant to this phase (core + phase-specific). Omit to get all rules. |
| project | string | – | – |
| query | string | – | Optional task text: rank rules by relevance and return a surface_id per rule for self_rules(action='followed'). |
| session_id | string | – | Optional session for the surfaces (default: current). |
No output schema declared.
No examples provided.
session_end ~132
End-of-session capture: summary + highlights + pitfalls + next_steps so the next session can resume cleanly. Set auto_compress=true to have the LLM generate the missing summary/next_steps/pitfalls from stored session artifacts (or from an optional `transcript`).
| Name | Type | Req | Description |
|---|---|---|---|
| auto_compress | boolean | – | – |
| highlights | array | – | – |
| next_steps | array | – | – |
| open_questions | array | – | – |
| pitfalls | array | – | – |
| project | string | – | – |
| session_id | string | yes | – |
| summary | string | – | – |
| transcript | string | – | – |
No output schema declared.
No examples provided.
session_init ~47
At session start: return the most recent unconsumed end-of-session summary with highlights / pitfalls / next_steps.
| Name | Type | Req | Description |
|---|---|---|---|
| mark_consumed | boolean | – | – |
| project | string | – | – |
No output schema declared.
No examples provided.
task_create ~51
v8.0: start a task in `van` phase (auto-classifies level if missing).
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | yes | – |
| level | integer | – | – |
| task_id | string | yes | – |
No output schema declared.
No examples provided.
task_phases_list ~33
v8.0: list all phases of a task in chronological order.
| Name | Type | Req | Description |
|---|---|---|---|
| task_id | string | yes | – |
No output schema declared.
No examples provided.
workflow_learn ~66
Record a learned workflow (named sequence of steps) for future reuse.
| Name | Type | Req | Description |
|---|---|---|---|
| context | object | – | – |
| description | string | – | – |
| name | string | yes | – |
| project | string | – | – |
| steps | array | yes | – |
| trigger_pattern | string | – | – |
No output schema declared.
No examples provided.
workflow_predict ~57
Predict outcome (success probability, avg duration) for a workflow by id OR by trigger keyword. Uses Laplace-smoothed success rate.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | – |
| trigger | string | – | – |
| workflow_id | string | – | – |
No output schema declared.
No examples provided.
workflow_track ~70
Record a workflow execution outcome. Outcome ∈ {success|failure|partial|aborted}. Aggregates update automatically.
| Name | Type | Req | Description |
|---|---|---|---|
| duration_ms | integer | – | – |
| error_details | string | – | – |
| notes | string | – | – |
| outcome | string | yes | – |
| workflow_id | string | yes | – |
No output schema declared.
No examples provided.
How do I install the Total Agent Memory MCP server?
Total Agent Memory runs locally as a PyPI package, launched with uvx total-agent-memory. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · total-agent-memory
claude mcp add vbcherepanov-total-agent-memory -- uvx total-agent-memory
What is the Total Agent Memory MCP server?
Total Agent Memory is an MCP server listed in the public MCP registry as io.github.vbcherepanov/total-agent-memory. Persistent local memory for coding agents: temporal knowledge graph, procedural and episodic recall. This page covers its PyPI package (total-agent-memory).
What tools does the Total Agent Memory MCP server expose?
Total Agent Memory exposes 79 tools: memory_recall, memory_timeline, memory_index_passages, memory_answer, memory_save, and 74 more. Their descriptions and schemas cost roughly 8,625 tokens of context every time the server is loaded.
Is the Total Agent Memory MCP server still maintained?
Total Agent Memory is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Total Agent Memory MCP server under?
Total Agent Memory declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.