Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

superlocalmemory

Package Overview
Dependencies
Maintainers
1
Versions
174
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

superlocalmemory - npm Package Compare versions

Comparing version
3.6.6
to
3.6.7
+1
-1
package.json
{
"name": "superlocalmemory",
"version": "3.6.6",
"version": "3.6.7",
"description": "Information-geometric agent memory with mathematical guarantees. 4-channel retrieval, Fisher-Rao similarity, zero-LLM mode, EU AI Act compliant. Works with Claude, Cursor, Windsurf, and 17+ AI tools.",

@@ -5,0 +5,0 @@ "keywords": [

[project]
name = "superlocalmemory"
version = "3.6.6"
version = "3.6.7"
description = "Information-geometric agent memory with mathematical guarantees"

@@ -5,0 +5,0 @@ readme = "README.md"

@@ -312,2 +312,8 @@ <p align="center">

SLM supports **two MCP transports** — use whichever fits your tool. Both expose the same 33 tools and 7 resources.
#### Option A — HTTP transport (v3.6.7+, recommended)
One shared process handles every client. RAM is flat regardless of how many IDE windows, subagents, or concurrent sessions connect. Requires the SLM daemon to be running (`slm start`).
```json

@@ -317,2 +323,22 @@ {

"superlocalmemory": {
"type": "http",
"url": "http://127.0.0.1:8765/mcp/"
}
}
}
```
> **Claude Code** also accepts:
> ```bash
> claude mcp add --transport http superlocalmemory http://127.0.0.1:8765/mcp/
> ```
#### Option B — stdio transport (universal, works everywhere)
Spawns one `slm mcp` subprocess per client connection (~90–110 MB each). Works with every MCP-compatible tool including those that do not yet support HTTP transport. No daemon required.
```json
{
"mcpServers": {
"superlocalmemory": {
"command": "slm",

@@ -325,4 +351,33 @@ "args": ["mcp"]

33 MCP tools by default (+42 optional behind `SLM_MCP_ALL_TOOLS=1`) + 7 resources. Works with any MCP-compatible client — we ship templated configs for Claude Code, Cursor, Windsurf, VS Code Copilot, Continue, Cody, ChatGPT Desktop, Gemini CLI, JetBrains, Zed, and Antigravity (15 IDE configs in `ide/configs/`). **V3.3: Adaptive lifecycle, smart compression, and pattern learning.**
#### Option C — `mcp-remote` bridge (for stdio-only tools that want HTTP)
Some CLIs (e.g. Grok CLI) only speak stdio but you still want the RAM benefit of HTTP. The [`@modelcontextprotocol/client-cli`](https://www.npmjs.com/package/@modelcontextprotocol/client-cli) package bridges them:
```bash
npm install -g @modelcontextprotocol/client-cli
```
```json
{
"mcpServers": {
"superlocalmemory": {
"command": "mcp-remote",
"args": ["http://127.0.0.1:8765/mcp/", "--allow-http", "--transport", "http-only"]
}
}
}
```
#### When to use which
| Situation | Use |
|-----------|-----|
| Claude Code / Claude Desktop (v3.6.7+) | **HTTP** — zero new processes per session |
| Cursor, Windsurf, Gemini CLI, Antigravity | **HTTP** — native support |
| Grok CLI, tools that only support stdio | **`mcp-remote` bridge** |
| Offline / daemon-free usage | **stdio** |
| Any tool, any version | **stdio** always works as fallback |
See [`docs/ide-setup.md`](docs/ide-setup.md) for per-IDE configs. 33 MCP tools by default (+42 optional behind `SLM_MCP_ALL_TOOLS=1`) + 7 resources. Works with any MCP-compatible client — we ship templated configs for Claude Code, Cursor, Windsurf, VS Code Copilot, Continue, Cody, ChatGPT Desktop, Gemini CLI, JetBrains, Zed, and Antigravity (15 IDE configs in `ide/configs/`).
### Dual Interface: MCP + CLI

@@ -329,0 +384,0 @@

Metadata-Version: 2.4
Name: superlocalmemory
Version: 3.6.6
Version: 3.6.7
Summary: Information-geometric agent memory with mathematical guarantees

@@ -404,2 +404,8 @@ Author-email: Varun Pratap Bhardwaj <admin@superlocalmemory.com>

SLM supports **two MCP transports** — use whichever fits your tool. Both expose the same 33 tools and 7 resources.
#### Option A — HTTP transport (v3.6.7+, recommended)
One shared process handles every client. RAM is flat regardless of how many IDE windows, subagents, or concurrent sessions connect. Requires the SLM daemon to be running (`slm start`).
```json

@@ -409,2 +415,22 @@ {

"superlocalmemory": {
"type": "http",
"url": "http://127.0.0.1:8765/mcp/"
}
}
}
```
> **Claude Code** also accepts:
> ```bash
> claude mcp add --transport http superlocalmemory http://127.0.0.1:8765/mcp/
> ```
#### Option B — stdio transport (universal, works everywhere)
Spawns one `slm mcp` subprocess per client connection (~90–110 MB each). Works with every MCP-compatible tool including those that do not yet support HTTP transport. No daemon required.
```json
{
"mcpServers": {
"superlocalmemory": {
"command": "slm",

@@ -417,4 +443,33 @@ "args": ["mcp"]

33 MCP tools by default (+42 optional behind `SLM_MCP_ALL_TOOLS=1`) + 7 resources. Works with any MCP-compatible client — we ship templated configs for Claude Code, Cursor, Windsurf, VS Code Copilot, Continue, Cody, ChatGPT Desktop, Gemini CLI, JetBrains, Zed, and Antigravity (15 IDE configs in `ide/configs/`). **V3.3: Adaptive lifecycle, smart compression, and pattern learning.**
#### Option C — `mcp-remote` bridge (for stdio-only tools that want HTTP)
Some CLIs (e.g. Grok CLI) only speak stdio but you still want the RAM benefit of HTTP. The [`@modelcontextprotocol/client-cli`](https://www.npmjs.com/package/@modelcontextprotocol/client-cli) package bridges them:
```bash
npm install -g @modelcontextprotocol/client-cli
```
```json
{
"mcpServers": {
"superlocalmemory": {
"command": "mcp-remote",
"args": ["http://127.0.0.1:8765/mcp/", "--allow-http", "--transport", "http-only"]
}
}
}
```
#### When to use which
| Situation | Use |
|-----------|-----|
| Claude Code / Claude Desktop (v3.6.7+) | **HTTP** — zero new processes per session |
| Cursor, Windsurf, Gemini CLI, Antigravity | **HTTP** — native support |
| Grok CLI, tools that only support stdio | **`mcp-remote` bridge** |
| Offline / daemon-free usage | **stdio** |
| Any tool, any version | **stdio** always works as fallback |
See [`docs/ide-setup.md`](docs/ide-setup.md) for per-IDE configs. 33 MCP tools by default (+42 optional behind `SLM_MCP_ALL_TOOLS=1`) + 7 resources. Works with any MCP-compatible client — we ship templated configs for Claude Code, Cursor, Windsurf, VS Code Copilot, Continue, Cody, ChatGPT Desktop, Gemini CLI, JetBrains, Zed, and Antigravity (15 IDE configs in `ide/configs/`).
### Dual Interface: MCP + CLI

@@ -421,0 +476,0 @@

@@ -31,3 +31,3 @@ """SuperLocalMemory — information-geometric agent memory."""

__version__ = "3.6.6"
__version__ = "3.6.7"

@@ -34,0 +34,0 @@ _REQUIRED_VERSIONS = {

@@ -240,6 +240,17 @@ # Copyright (c) 2026 Varun Pratap Bhardwaj / Qualixar

import threading
_warmup_thread = threading.Thread(target=_eager_warmup, daemon=True, name="mcp-warmup")
_warmup_thread.start()
# v3.6.7: Suppress standalone-process behaviours when the MCP server is
# imported inside the daemon (SLM_MCP_EMBEDDED=1). Three threads are safe
# to run in a dedicated `slm mcp` subprocess but harmful inside the daemon:
# mcp-warmup — creates a LIGHT engine duplicate; daemon has a FULL one.
# parent-watchdog — calls os._exit(0) if its parent IDE quits, which would
# kill the daemon along with it.
# stdin-eof-monitor — monitors stdin pipe; meaningless inside the daemon.
_embedded_in_daemon = _os.environ.get("SLM_MCP_EMBEDDED") == "1"
if not _embedded_in_daemon:
_warmup_thread = threading.Thread(target=_eager_warmup, daemon=True, name="mcp-warmup")
_warmup_thread.start()
# V3.4.57: Parent watchdog — self-terminate when the IDE/Claude session dies.

@@ -278,4 +289,5 @@ # FastMCP relies on stdin EOF to stop, but stdin EOF is NOT guaranteed on

_watchdog_thread = threading.Thread(target=_parent_watchdog, daemon=True, name="parent-watchdog")
_watchdog_thread.start()
if not _embedded_in_daemon:
_watchdog_thread = threading.Thread(target=_parent_watchdog, daemon=True, name="parent-watchdog")
_watchdog_thread.start()

@@ -342,4 +354,5 @@

_stdin_monitor_thread = threading.Thread(target=_stdin_eof_monitor, daemon=True, name="stdin-eof-monitor")
_stdin_monitor_thread.start()
if not _embedded_in_daemon:
_stdin_monitor_thread = threading.Thread(target=_stdin_eof_monitor, daemon=True, name="stdin-eof-monitor")
_stdin_monitor_thread.start()

@@ -346,0 +359,0 @@

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display