
Company News
Free Business Plan Upgrades for Open Source Maintainers
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.
@cognitivemyriad/vrm-local
Advanced tools
Stale-proof repository memory with citations + just-in-time verification + TTL (repo-scoped).

Stale-proof repository memory with citations + just-in-time verification + TTL (repo-scoped).
An MCP server providing "safe memory" for AI coding agents. Memories are scoped per repository, backed by code citations, and verified just-in-time so an agent never receives stale information when the underlying code has changed.
Run via npx:
npx -y @cognitivemyriad/vrm-local --repo /path/to/repo
(Alternatively, run from source: npm ci && npm run build && node build/index.js --repo /path/to/repo)
vrm_store: Store a new memory with file citations.vrm_search: Search for candidate memories by keywords.vrm_retrieve: JIT-verify candidates and return only valid memories. (Main tool for agents)vrm_list: List memories by status (valid, stale, missing).vrm_forget: Manually delete a memory.Store: Input:
{
"subject": "API version sync",
"fact": "When changing API version, update client/server/docs together.",
"citations": [{ "path": "src/api.ts", "startLine": 10, "endLine": 15 }]
}
Output:
{
"stored": true,
"memoryId": "uuid-...",
"expiresAt": "2026-03-21T00:00:00Z"
}
Retrieve: Input:
{ "query": "API version" }
Output:
{
"query": "API version",
"valid": [ ... ],
"stats": { "verified": 1, "validCount": 1 }
}
graph TD
A[Agent] -->|Store Fact + Citation| B(Verified Repo Memory)
B --> C{Save to Disk}
C -->|Hash Code Snippet| D[(memories.json)]
A -->|Retrieve Fact| B
B --> E{JIT Verification}
E -->|Check File Hash| F{Unchanged or Relocated?}
F -->|Yes| G[Return VALID Memory]
F -->|No| H[Return STALE/MISSING]
vrm_retrieve, the server checks the physical file. If the snippet has moved, it relocates the citation. If it has been changed or deleted, the memory is marked STALE/MISSING and omitted from the results.Data is strictly repo-scoped and saved in:
<repoRoot>/.verified-repo-memory
This includes memories.json and a fingerprint/metadata file to prevent accidental cross-repo pollution. Add this directory to your .gitignore.
stdio local-only server without HTTP calls.../) out of the repository root, as well as accessing .git/ or .verified-repo-memory/.stderr.--no-secret-scan).To add this server to the Claude Desktop app, edit your configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonAdd the following configuration:
{
"mcpServers": {
"verified-repo-memory": {
"command": "npx",
"args": [
"-y",
"@cognitivemyriad/vrm-local",
"--repo",
"/absolute/path/to/your/repo"
]
}
}
}
To add this server to Claude Code using stdio transport:
claude mcp add mcp-verified-repo-memory --transport stdio -- npx -y @cognitivemyriad/vrm-local
Note for Windows users: You may need to prepend cmd /c to the command:
claude mcp add mcp-verified-repo-memory --transport stdio -- cmd /c npx -y @cognitivemyriad/vrm-local
This section explains how to publish the package to NPM and register it with the Anthropic MCP Registry so that it becomes publicly available.
NPM (Node Package Manager) is the package distribution platform. Publishing here allows anyone to install your tool with a single command.
1. Log in to NPM from the terminal:
npm login
A browser window will open. Sign in with your NPM account. When prompted, enter your 2FA code from your authenticator app.
2. Publish the package:
npm publish --access public
This command does the following:
npm run build).tgz archive of the compiled fileshttps://registry.npmjs.org/3. Verify the publication:
Visit https://www.npmjs.com/package/@cognitivemyriad/vrm-local in your browser. Your package page should appear.
Note: If you need to re-publish, you must increment the version number in
package.jsonandserver.jsonfirst (npm version patch). NPM does not allow overwriting existing versions.
The MCP Registry is Anthropic's official directory of MCP servers. Registering here allows Claude Desktop, Claude Code, and other MCP clients to discover and install your server.
Important: The NPM package must be published first (Step 1). The MCP Registry validates that the NPM package exists before accepting the registration.
mcp-publisher CLI tool# macOS (Homebrew)
brew install nicholasgriffintn/tap/mcp-publisher
# Or via npx (no install required)
npx @anthropic-ai/mcp-publisher
1. Log in to the MCP Registry via GitHub:
mcp-publisher login github
A browser window will open. Authorize the application with your GitHub account.
2. Publish to the MCP Registry:
mcp-publisher publish
This command reads server.json in the current directory and registers the server with the MCP Registry. The registry will:
server.json schema3. Verify the registration:
Visit https://registry.modelcontextprotocol.io and search for your server name.
Note: Once a version is published to the MCP Registry, it is immutable and cannot be changed. To publish updates, increment the version in both
package.jsonandserver.json, publish to NPM first, then runmcp-publisher publishagain.
When releasing a new version, always update the version number in all three locations:
# 1. Bump version in package.json
npm version patch # 0.1.2 → 0.1.3
# 2. Update server.json (both top-level and packages[].version)
# Edit server.json manually to match the new version
# 3. Publish
npm publish --access public
mcp-publisher publish
| File | Field | Must Match |
|---|---|---|
package.json | version | ✅ |
server.json | version (top-level) | ✅ |
server.json | packages[0].version | ✅ |
FAQs
Stale-proof repository memory with citations + just-in-time verification + TTL (repo-scoped).
We found that @cognitivemyriad/vrm-local demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.