Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.gitmem-dev/gitmem

NPM · GITMEM-MCP

Persistent institutional memory for AI coding agents. Memory that compounds.

Available components

0 this week 79 Trust /100

Last scanned (12 minutes ago)

Scores higher than 61% of npm servers

Category Memory and Knowledge

Trust breakdown (7 categories)

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 Security80
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects uuid 9.0.1, a direct dependency. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • 31 of 94 dependencies flagged as unhealthy (1 deprecated). 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 31 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability75
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2614 tokens (~124/item across 21 items; 21 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 Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 21 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Changelog

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: 0.97 → pass security
  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Nov 26 −1
    • Stability: pass → 0.90 functional
  • 24 Oct 26 0
    • CVE-2023-54404 affects this package: high ▼ security
  • 21 Oct 26 0
    • Stability: 0.97 → pass security
  • 20 Oct 26 0
    • Stability: pass → 0.97 functional
  • 17 Oct 26 +2
    • Stability: 0.83 → pass security
  • 16 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

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 npm/gitmem-mcp@1.2.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Vulnerabilities 2 findings
ID CVE Severity Vector Fix available
GHSA-w5hq-g745-h8pq CVE-2026-41907 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N yes
GHSA-mrhx-c7xc-m3w5 CVE-2023-54404 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 94 packages
Packages resolved 94
Deprecated 1
Stale 30
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 21 exposed · ~2,614 tokens

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 →

Tool Tokens
absorb_observations ~76

Capture observations from sub-agents and teammates. The lead agent parses findings from sub-agent responses, then calls this to persist and analyze them. Identifies scar candidates.

NameTypeReqDescription
observationsarrayyesArray of observations from sub-agents/teammates
task_idstring–Linear issue or task identifier (optional)

No output schema declared.

No examples provided.

archive_learning ~88

Archives a learning (scar/win/pattern) by setting is_active=false and recording archived_at timestamp. Archived learnings are excluded from recall and search results but preserved for audit trail.

NameTypeReqDescription
idstringyesUUID of the learning to archive
reasonstring–Optional reason for archiving (e.g., 'superseded by PROJ-123', 'no longer relevant')

No output schema declared.

No examples provided.

cleanup_threads ~100

Triage open threads by lifecycle health. Groups threads as active/cooling/dormant with vitality scores. Use auto_archive=true to archive threads dormant 30+ days. Review and resolve stale threads to keep your thread list healthy.

NameTypeReqDescription
auto_archiveboolean–If true, auto-archive threads that have been dormant for 30+ days
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.

No output schema declared.

No examples provided.

confirm_scars ~87

Confirm surfaced scars with APPLYING/N_A/REFUTED decisions and evidence. REQUIRED after recall() before consequential actions. Each recalled scar must be addressed. APPLYING: past-tense evidence of compliance. N_A: explain why scar doesn't apply. REFUTED: acknowledge risk of overriding.

NameTypeReqDescription
confirmationsarrayyesOne confirmation per recalled scar. All recalled scars must be addressed.

No output schema declared.

No examples provided.

create_decision ~141

Log architectural/operational decision to institutional memory

NameTypeReqDescription
alternatives_consideredarray–Alternatives that were rejected
decisionstringyesWhat was decided
docs_affectedarray–Docs/files affected by this decision (relative paths from repo root)
linear_issuestring–Associated Linear issue
personas_involvedarray–Personas involved in decision
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
rationalestringyesWhy this decision was made
session_idstring–Current session ID
titlestringyesDecision title

No output schema declared.

No examples provided.

create_learning ~277

Create scar, win, or pattern entry in institutional memory. Frame as 'what we now know' — lead with the factual/architectural discovery, not what went wrong. Good: 'Fine-grained PATs are scoped to one resource owner'. Bad: 'Should have checked PAT type first'.

NameTypeReqDescription
applies_whenarray–When this pattern applies
counter_argumentsarray–Counter-arguments for scars (min 2 required)
descriptionstringyesDetailed description. Include the architectural/behavioral fact that makes this retrievable by domain.
domainarray–Domain tags
keywordsarray–Search keywords
learning_typestringyesType of learning
problem_contextstring–Problem context (for wins)
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
scar_typestring–Scar type (process, incident, or context). Defaults to 'process'.
severitystring–Severity level (required for scars)
solution_approachstring–Solution approach (for wins)
source_linear_issuestring–Source Linear issue
titlestringyesFrame as a knowledge discovery — what we now know. Lead with the factual insight, not self-criticism.

No output schema declared.

No examples provided.

create_thread ~94

Create an open thread to track unresolved work across sessions. Includes semantic dedup: if a similar open thread exists (cosine similarity > 0.85), returns the existing thread instead. Check the 'deduplicated' field in the response.

NameTypeReqDescription
linear_issuestring–Associated Linear issue (e.g., PROJ-123)
textstringyesThread description — what needs to be tracked or resolved

No output schema declared.

No examples provided.

dismiss_suggestion ~60

Dismiss a suggested thread. Incremented dismiss count — suggestions dismissed 3+ times are permanently suppressed.

NameTypeReqDescription
suggestion_idstringyesSuggestion ID (e.g., "ts-a1b2c3d4") from suggested_threads list

No output schema declared.

No examples provided.

gitmem-help ~21

gitmem-help - Show available commands with ASCII art header

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

health ~68

Show write health for the current session. Reports success/failure rates for all tracked fire-and-forget operations (metrics, cache, triple writes, embeddings, scar usage). Use this to diagnose silent failures.

NameTypeReqDescription
failure_limitnumber–Max number of recent failures to return (default: 10)

No output schema declared.

No examples provided.

list_threads ~87

List open threads across recent sessions. Shows unresolved work items that carry over between sessions. Use resolve_thread to mark threads as done.

NameTypeReqDescription
include_resolvedboolean–Include recently resolved threads (default: false)
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
statusstring–Filter by status (default: open)

No output schema declared.

No examples provided.

log ~112

List recent learnings chronologically (like git log). Shows scars, wins, and patterns ordered by creation date.

NameTypeReqDescription
learning_typestring–Filter by learning type
limitnumber–Number of entries to return (default: 10)
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
severitystring–Filter by severity level
sincenumber–Days to look back (e.g., 7 = last week)

No output schema declared.

No examples provided.

prepare_context ~175

Generate portable memory payload for sub-agent injection. Formats institutional memory into compact or gate payloads that fit in Task tool prompts.

NameTypeReqDescription
agent_rolestring–Sub-agent role for relevance filtering (e.g., 'reviewer', 'deployer') — reserved for Phase 3
formatstringyesOutput format: full (rich markdown), compact (~500 tokens, one-line per scar), gate (~100 tokens, blocking scars only)
max_tokensnumber–Token budget for payload (default: 500 for compact, 100 for gate, unlimited for full)
planstringyesWhat the team is about to do (e.g., 'review auth middleware', 'deploy edge function')
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.

No output schema declared.

No examples provided.

promote_suggestion ~89

Promote a suggested thread to an open thread. Takes a suggestion_id from session_start's suggested_threads list and creates a real thread from it.

NameTypeReqDescription
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
suggestion_idstringyesSuggestion ID (e.g., "ts-a1b2c3d4") from suggested_threads list

No output schema declared.

No examples provided.

recall ~182

Check institutional memory for relevant scars before taking action. Returns matching scars and their lessons. Integrates variant assignment when issue_id provided.

NameTypeReqDescription
issue_idstring–Linear issue identifier for variant assignment (e.g., 'PROJ-123'). When provided, scars with variants will be randomly assigned and formatted accordingly.
match_countnumber–Number of scars to return (default: 3)
planstringyesWhat you're about to do (e.g., 'implement auth layer', 'deploy to production')
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
similarity_thresholdnumber–Minimum similarity score (0-1) to include results. Weak matches below threshold are suppressed. Default: 0.4 (free tier BM25), 0.35 (pro tier embeddings).

No output schema declared.

No examples provided.

record_scar_usage ~195

Track scar application for effectiveness measurement

NameTypeReqDescription
acknowledged_atstring–ISO timestamp when scar was acknowledged
agentstring–Agent identity (e.g., cli, desktop, autonomous)
execution_successfulboolean–Whether the task succeeded after applying scar
issue_idstring–Linear issue UUID
issue_identifierstring–Linear issue identifier (e.g., PROJ-123)
reference_contextstringyesHow the scar was applied (1-2 sentences)
reference_typestringyesHow the scar was referenced
scar_idstringyesUUID of the scar
session_idstring–GitMem session UUID (for non-issue session tracking)
surfaced_atstringyesISO timestamp when scar was retrieved
variant_idstring–UUID of the assigned variant from scar_enforcement_variants (for A/B testing)

No output schema declared.

No examples provided.

resolve_thread ~105

Mark an open thread as resolved. Use thread_id for exact match or text_match for fuzzy matching. Updates session state and .gitmem/threads.json.

NameTypeReqDescription
resolution_notestring–Brief note explaining how/why thread was resolved
text_matchstring–Fuzzy text match against thread descriptions (fallback if no thread_id)
thread_idstring–Thread ID (e.g., "t-a1b2c3d4") for exact resolution

No output schema declared.

No examples provided.

search ~125

Search institutional memory by query. Unlike recall (which is action-oriented), search is exploration-oriented — returns matching scars/wins/patterns without side effects.

NameTypeReqDescription
learning_typestring–Filter by learning type
match_countnumber–Number of results to return (default: 5)
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.
querystringyesNatural language search query (e.g., 'deployment failures', 'Supabase RLS')
severitystring–Filter by severity level

No output schema declared.

No examples provided.

session_close ~228

Persist session with compliance validation. IMPORTANT: Before calling this tool, write all heavy payload data (closing_reflection, human_corrections, scars_to_record, open_threads, decisions, learnings_created) to {gitmem_dir}/closing-payload.json using your file write tool — the gitmem_dir path is returned by session_start (also shown in session start display as 'Payload path'). Then call this tool with ONLY session_id and close_type. The tool reads the payload file automatically and deletes it after processing. task_completion is auto-generated from closing_reflection timestamps and human_corrections — do NOT write it to the payload. DISPLAY: The result includes a pre-formatted 'display' field. Output the display field verbatim as your response — tool results are collapsed in the CLI.

NameTypeReqDescription
ceremony_duration_msnumber–End-to-end ceremony duration from agent perspective (in milliseconds)
close_typestringyesType of close (standard requires full reflection)
linear_issuestring–Associated Linear issue
session_idstringyesSession ID from session_start

No output schema declared.

No examples provided.

session_refresh ~116

Re-surface institutional context (threads, decisions) for the current active session without creating a new session. Use mid-session when you need to remember where you left off, after context compaction, or after a long gap. DISPLAY: The result includes a pre-formatted 'display' field visible in the tool result. Output the display field verbatim as your response — tool results are collapsed in the CLI.

NameTypeReqDescription
projectstring–Project namespace (default: from active session). Free-form string (e.g., 'my-project').

No output schema declared.

No examples provided.

session_start ~188

Initialize session, detect agent, load institutional context (last session, recent decisions, open threads). Scars surface on-demand via recall(). DISPLAY: The result includes a pre-formatted 'display' field visible in the tool result. Output the display field verbatim as your response — tool results are collapsed in the CLI.

NameTypeReqDescription
agent_identitystring–Override agent identity (auto-detects if not provided)
forceboolean–Force create new session even if one already exists
issue_descriptionstring–Issue description for scar context
issue_labelsarray–Issue labels for scar context
issue_titlestring–Issue title for scar context
linear_issuestring–Current Linear issue identifier (e.g., PROJ-123)
projectstring–Project namespace (e.g., 'my-project'). Scopes sessions and searches.

No output schema declared.

No examples provided.

Install

How do I install the io.github.gitmem-dev/gitmem MCP server?

io.github.gitmem-dev/gitmem runs locally as an npm package, launched with npx -y gitmem-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · gitmem-mcp

# add to Claude Code
claude mcp add gitmem-dev-gitmem -- npx -y gitmem-mcp
Common questions

What is the io.github.gitmem-dev/gitmem MCP server?

io.github.gitmem-dev/gitmem is an MCP server listed in the public MCP registry as io.github.gitmem-dev/gitmem. Persistent institutional memory for AI coding agents. Memory that compounds. This page covers its npm package (gitmem-mcp).

Is the io.github.gitmem-dev/gitmem MCP server safe to use?

io.github.gitmem-dev/gitmem scores 79 out of 100 on VerifyMCP. We recorded 2 known advisories against it as of 5 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.gitmem-dev/gitmem MCP server expose?

io.github.gitmem-dev/gitmem exposes 21 tools: recall, confirm_scars, session_start, session_refresh, session_close, and 16 more. Their descriptions and schemas cost roughly 2,614 tokens of context every time the server is loaded.

Is the io.github.gitmem-dev/gitmem MCP server still maintained?

io.github.gitmem-dev/gitmem 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 io.github.gitmem-dev/gitmem MCP server under?

io.github.gitmem-dev/gitmem declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.