io.github.kaaustubh/project-memory-mcp
NPM · @KAAUSTUBH/PROJECT-MEMORY-MCP · SCANNED AUG 10
Persistent memory for AI coding agents — past bugs, decisions, and your corrections, in your repo.
Available components
Recent critical change
CVE-2026-41242 affects this package (2 Aug 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 →
Supply Chain Security73
- 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
- No install/post-install scripts declared.Pass
- 61 of 173 dependencies flagged as unhealthy (1 deprecated). View diagnostics → Partial
Provenance & Transparency45
- 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 11 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability64
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 1406 tokens (~117/item across 12 items; 12 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 Coverage85
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 56% of tool parameters carry a description.Partial
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 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.
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · @kaaustubh/project-memory-mcp
claude mcp add kaaustubh-project-memory-mcp -- npx -y @kaaustubh/project-memory-mcp
codex mcp add kaaustubh-project-memory-mcp -- npx -y @kaaustubh/project-memory-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"kaaustubh-project-memory-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"@kaaustubh/project-memory-mcp"
],
"enabled": true
}
}
} openclaw mcp add kaaustubh-project-memory-mcp --command npx --arg -y --arg @kaaustubh/project-memory-mcp
mcp_servers:
kaaustubh-project-memory-mcp:
command: "npx"
args: ["-y", "@kaaustubh/project-memory-mcp"] {
"mcpServers": {
"kaaustubh-project-memory-mcp": {
"command": "npx",
"args": [
"-y",
"@kaaustubh/project-memory-mcp"
]
}
}
} 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.
- 7 Aug 26 0
- Dependency health: partial → 0.83 functional
- 6 Aug 26 0
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- MCP protocol: unverified → pass ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- First check of Schema quality: good functional
- First check of Tool coverage: 56 functional
- First check of Schema quality: fail functional
- First check of Schema quality: fail functional
- 2 Aug 26 −5
- CVE-2026-41242 affects this package: high ▼ critical
- Known CVEs: unverified → fail ▼ critical
- Score status: scored → failed ▼ critical
- Provenance: unverified → fail ▼ security
- Install scripts: unverified → pass ▲ security
- Malware scan: unverified → pass ▲ security
- Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
- Security disclosure: fail → unverified ▼ functional
- License: unverified → pass ▲ functional
- Dependency health: unverified → partial ▲ functional
- Maintenance: unverified → pass ▲ functional
- Capabilities: Protocol version not yet verified: we do not have a sandbox capture of the MCP handshake this version of the package performs yet. functional
- Tool coverage: Tool coverage not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet. functional
- Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
- Licence: MIT functional
- 31 Jul 26 −19
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 0
- Tool coverage: Tool coverage not yet verified: our sandbox run of this package did not complete, so we have no tool definitions to assess. functional
- Schema quality: Schema quality not yet verified: our sandbox run of this package did not complete, so we have no schema to assess. functional
- 28 Jul 26 0
- Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
- Tool coverage: Tool coverage not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet. functional
- 27 Jul 26 24
First indexed and scored.
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 10 Aug 2026 · Analysed npm/@kaaustubh/[email protected]
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Vulnerabilities 12 findings
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-2pr8-phx7-x9h3 | CVE-2026-44294 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L | yes |
| GHSA-66ff-xgx4-vchm | CVE-2026-44293 | high | yes | |
| GHSA-685m-2w69-288q | CVE-2026-44289 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-75px-5xx7-5xc7 | CVE-2026-44291 | high | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | yes |
| GHSA-f38q-mgvj-vph7 | CVE-2026-54269 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L | yes |
| GHSA-fx83-v9x8-x52w | CVE-2026-44292 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N | yes |
| GHSA-jggg-4jg4-v7c6 | CVE-2026-45740 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L | yes |
| GHSA-jvwf-75h9-cwgg | CVE-2026-44290 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-q6x5-8v7m-xcrf | CVE-2026-44288 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N | yes |
| GHSA-wcpc-wj8m-hjx6 | CVE-2026-48712 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-xq3m-2v4x-88gg | CVE-2026-41242 | critical | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | yes |
| GHSA-f88m-g3jw-g9cj | high | yes |
Dependencies 173 packages
| Packages resolved | 173 |
|---|---|
| Deprecated | 1 |
| Stale | 60 |
| Tree resolution | Complete |
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.
append_decision Append a decision ~108
Append a dated bullet under '## Decisions' in a project's AGENTS.md (auto-loaded memory). Call this PROACTIVELY right after a non-obvious or architectural decision is made — don't wait to be asked — then tell the user in one line what you recorded. For concise, durable decisions and WHY; not bugs (use log_issue) and not trivia.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | yes | – |
| text | string | yes | One line: the decision and WHY, not just what. |
No output schema declared.
No examples provided.
append_learning Append a learning ~86
Append a dated bullet under '## Learnings' in a project's AGENTS.md (auto-loaded memory). Call this PROACTIVELY when you discover a durable gotcha/workaround future sessions should know — don't wait to be asked — then tell the user what you recorded. For a specific bug use log_issue instead.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | yes | – |
| text | string | yes | – |
No output schema declared.
No examples provided.
find_by_file Find memory by file ~120
Given a file path or filename fragment, return the issues (matched via their 'files' field) and the decisions/learnings (matched via AGENTS.md bullets that mention it) that touch that file — i.e. 'why is this code the way it is?' answered from memory. Searches all projects unless one is given. Useful when you land on confusing code and want the history behind it.
| Name | Type | Req | Description |
|---|---|---|---|
| file | string | yes | A path or filename fragment, e.g. 'index.js' or 'auth/login'. |
| project | string | – | – |
No output schema declared.
No examples provided.
get_project Get project memory ~36
Return the full AGENTS.md memory for one project.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | yes | Project directory name, e.g. pulse_stripe |
No output schema declared.
No examples provided.
list_open_issues List open issues ~27
List unresolved issues across all projects (or one).
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | – |
No output schema declared.
No examples provided.
list_projects List projects ~23
List all projects under ~/code that have an AGENTS.md memory file.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
log_issue Log a bug/issue ~156
Append a structured bug/issue to <project>/issues.jsonl (high-volume memory, NOT auto-loaded). Call this PROACTIVELY whenever you resolve (or get blocked by) a non-trivial bug — don't wait to be asked — then tell the user in one line what you logged. Skip trivial/transient issues.
| Name | Type | Req | Description |
|---|---|---|---|
| cause | string | – | Root cause, if known. |
| files | array | – | – |
| fix | string | – | How it was fixed, if resolved. |
| project | string | yes | – |
| status | string | – | Defaults to 'resolved' if a fix is given, else 'open'. |
| symptom | string | yes | What went wrong / the observable failure. |
| tags | array | – | – |
No output schema declared.
No examples provided.
remember_preference Remember a preference ~255
Append a dated bullet under '## Preferences' in an AGENTS.md (auto-loaded memory), turning a user correction or stated habit into a remembered pattern that comes back next session. Call this PROACTIVELY when the user corrects HOW you work or states a durable preference — code style, workflow habit, a 'from now on' rule (e.g. 'never add a co-author trailer', 'always run the typecheck before committing') — don't wait to be asked, then tell the user in one line what you saved. Use scope 'global' (root AGENTS.md, applies to EVERY project) for a cross-project habit; scope 'project' for a preference about one project. This is about agent behaviour/preferences; for a project DECISION use append_decision, for a bug use log_issue.
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | Required when scope is 'project'. |
| scope | string | – | 'global' = root AGENTS.md (every project). 'project' = one project. Defaults to global, unless only a project is given. |
| text | string | yes | The preference as a durable rule, ideally with a short WHY. Phrase it as guidance for next time, not a one-off. |
No output schema declared.
No examples provided.
resolve_issue Resolve an issue ~42
Mark an issue resolved and record the fix.
| Name | Type | Req | Description |
|---|---|---|---|
| fix | string | yes | – |
| id | string | yes | Issue id, e.g. pulse_stripe-003 |
No output schema declared.
No examples provided.
search_issues Search issues ~163
Search bug/issue history across all projects (or one) over the TEXT FIELDS only (symptom, cause, fix, id, tags) — not the raw JSON, so you won't get false hits on field names like 'fix' or 'status'. Optionally filter by tags (issue must carry all of them). Either query or tags may be given. Call this PROACTIVELY when the user reports an error or you hit a familiar-looking failure, BEFORE debugging from scratch, to check for a prior fix ('have we hit this before?').
| Name | Type | Req | Description |
|---|---|---|---|
| project | string | – | – |
| query | string | – | Text to match against symptom/cause/fix/id/tags. |
| tags | array | – | Only return issues carrying ALL of these tags. |
No output schema declared.
No examples provided.
search_memory Search project memory ~33
Case-insensitive search across every project's AGENTS.md. Returns matching lines with their project.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | – |
No output schema declared.
No examples provided.
sync_registry Sync project registry ~146
Reconcile the root AGENTS.md projects table with what's actually on disk: list projects that have an AGENTS.md but no table row (and add a stub row for each), flag rows whose directory no longer exists, and show live open-issue counts. Automates the 'new project → add a row' step so the cross-project index never silently drifts. Hand-curated columns (Stack, Status, descriptions) are preserved — stubs use the project's '## What this is' line and leave Stack/Status as '?'. Set apply=false to report drift without writing.
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | – | Write stub rows for new projects (default true). false = report only. |
No output schema declared.
No examples provided.