Serveur MCP sovseal-memory
✓ VérifiéFournit une mémoire sémantique local-first et zero-knowledge pour les clients IA en utilisant des embeddings sur l'appareil et LanceDB.
Aussi connu sous sovseal/core, core, @sovseal/mcp-server
- Étoiles
- 7
- Outils
- 2
- Téléchargements, 30 jours
- —
- Dernière version
- 0.3.8
- Dernier commit
- 5 août 2026
- Licence
- Apache-2.0
Qu'est-ce que sovseal-memory MCP ?
sovseal-memory est un serveur MCP. Fournit une mémoire sémantique local-first et zero-knowledge pour les clients IA en utilisant des embeddings sur l'appareil et LanceDB. Il expose 2 outils, comme store_memory, recall_memory.
Résumé généré à partir du README du projet
À propos du MCP server sovseal-memory
sovseal-memory fournit une solution de mémoire sémantique local-first conçue pour les utilisateurs manipulant des données sensibles telles que des informations juridiques, médicales ou de la fintech. Elle permet aux clients IA de maintenir un contexte persistant sans envoyer d'informations en clair vers le cloud. En exécutant tous les processus d'embedding et de rappel sur votre propre matériel, elle garantit que vos données privées ne quittent jamais votre machine.
Le serveur utilise LanceDB et Transformers.js pour effectuer des embeddings sur l'appareil avec un modèle MiniLM à 384 dimensions. Cette configuration permet une latence de rappel inférieure à 25 ms car les recherches sémantiques sont gérées comme des requêtes vectorielles locales plutôt que comme des appels réseau. Il est compatible avec divers clients MCP, notamment Claude Desktop, Cursor, Windsurf et Zed, ainsi qu'avec des frameworks d'agents comme ElizaOS et CrewAI.
Les utilisateurs peuvent choisir entre un mode local uniquement qui fonctionne entièrement hors ligne ou un niveau de synchronisation zero-knowledge optionnel. Lorsque la réplication est activée, le système utilise le chiffrement AES-256-GCM pour garantir que seul le texte chiffré est transmis au serveur. Cette architecture permet d'avoir une mémoire unique et unifiée qui fonctionne sur plusieurs plateformes via le protocole MCP et une extension de navigateur compagnon.
Ce que vous pouvez faire avec
- 1Maintenir la confidentialité pour les secteurs sensiblesLes développeurs travaillant dans des domaines réglementés peuvent utiliser la mémoire IA sans violer les accords de confidentialité (NDA) ou les politiques de résidence des données.
- 2Unifier le contexte entre différentes plateformes IAVous pouvez partager un pool de mémoire unique entre différentes interfaces de chat comme ChatGPT et Claude.
- 3Permettre la persistance des agents autonomesConstruisez des frameworks d'agents qui conservent leur état localement sans engendrer de coûts d'API par appel pour les embeddings.
- 4Synchroniser la mémoire de manière sécurisée entre les appareilsRépliquez votre contexte IA vers un point de terminaison distant tout en garantissant que le serveur ne peut pas lire vos données.
Extrait du README du projet. Chaque cas d'utilisation est vérifié par rapport à une citation du document.
Comment installer sovseal-memory MCP
Formats vérifiés le 10 nov. 2026Installer sovseal-memory MCP dans Claude Code
$ claude mcp add core -- npx -y @sovseal/mcp-serverInstaller sovseal-memory MCP dans Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"core": {
"command": "npx",
"args": [
"-y",
"@sovseal/mcp-server"
]
}
}
}Installer sovseal-memory MCP dans VS Code
.vscode/mcp.json
{
"servers": {
"core": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@sovseal/mcp-server"
]
}
}
}Installer sovseal-memory MCP dans Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"core": {
"command": "npx",
"args": [
"-y",
"@sovseal/mcp-server"
]
}
}
}Installer sovseal-memory MCP dans Codex
~/.codex/config.toml
[mcp_servers.core] command = "npx" args = ["-y", "@sovseal/mcp-server"]
Installer sovseal-memory MCP dans Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"core": {
"command": "npx",
"args": [
"-y",
"@sovseal/mcp-server"
]
}
}
}Outils MCP sovseal-memory 2
Détectés depuis le READMEstore_memoryrecall_memory
| store_memory | — | |
| recall_memory | — |
Configuration
SOVSEAL_ENDPOINTSOVSEAL_TRANSPORT
| Nom | Description | Type |
|---|---|---|
| SOVSEAL_ENDPOINT | — | |
| SOVSEAL_TRANSPORT | — |
Vérifications automatisées
Exécuté le 14 nov. 2026Rapport complet →A passé nos vérifications automatisées. Il ne s'agit pas d'un audit de sécurité : lisez le code et donnez au serveur l'accès le plus restreint dont il a besoin. Fonctionnement des vérifications
- Dépôt source lié et accessiblesovseal/core is public and reachablegithub.com/sovseal/core ↗Réussi
- Le paquet cite ce dépôt comme source@sovseal/mcp-server names sovseal/core as sourcenpmjs.com/package/@sovseal/mcp-server ↗Réussi
- Provenance du build (attestation Sigstore)No build attestation published for this releaseNon vérifié
- Licence open source (OSI)Apache-2.0spdx.org/licenses/Apache-2.0.html ↗Réussi
- Commit ou version publiée au cours de l'année écouléeLast commit or release 2026-08-05github.com/sovseal/core ↗Réussi
- OpenSSF ScorecardNon vérifié
- Nom du package non proche d'un package populaireNo popular package one edit away from @sovseal/mcp-serverRéussi
- Aucun avis critique dans le paquet ni ses dépendances235 resolved dependencies checked; no critical advisoryosv.dev ↗Réussi
- Aucune instruction cachée destinée au modèle2 tool descriptions and the README read; no override phrases, credential paths or hidden charactersRéussi
- Les outils destructifs sont étiquetésNo tool named like delete, drop or execRéussi
- L'endpoint distant répond au handshake MCPNon vérifié
README
Voir sur GitHubWhy this exists
If you work with code, clients, or data you're not allowed to upload — healthcare, legal, fintech, defense, or anything under an NDA — every AI memory option today asks you to break that rule. Platform memory keeps your context on their cloud, in their walled garden, one platform at a time. Cloud memory layers route your raw conversations through third-party servers and extraction APIs.
sovseal takes the other path: all capture, embedding, and recall run on your device. Plaintext never crosses the network. The optional sync tier ships only AES-256-GCM ciphertext — the server cannot read your memories even if it wanted to. And because it speaks MCP and rides a browser extension, it's one memory across every AI you use, not six silos.
Measured Performance & Benchmarks (May 2026)
Cloud-hosted memory layers force a tradeoff between latency, privacy, and cost. Every recall is a 200–800 ms round-trip to someone else's database. sovseal collapses the tradeoff. LanceDB and Transformers.js run inside your agent's process.
| Workload | Operation | p50 | p95 | p99 | Network |
|---|---|---|---|---|---|
| 10K records · 1K queries | recall_memory (warm) |
6.1 ms | 10.4 ms | 21.8 ms | 0 RTT |
| Cold start | recall_memory (first call) |
~1.2 s | — | — | 0 RTT |
| Single write | store_memory |
3.8 ms | 7.2 ms | 12.5 ms | 0 RTT (write-behind) |
All benchmarks reproduce with: pnpm --filter @sovseal/mcp-server run bench-v2 (10K pre-seeded memories, 1K sequential queries, CPU-bound ONNX embeddings on commodity hardware).
What makes it fast and private:
- Sub-25 ms p99 recall — semantic search is a local vector query, not an HTTP call.
- On-device embeddings — a pinned, hash-verified 384-dim MiniLM model (~22 MB quantized ONNX) runs locally. No embedding API, no per-call cost.
- Zero-knowledge sync — when replication is enabled, AES-256-GCM encryption happens before any byte leaves the device. The server stores ciphertext it cannot decrypt.
- Verified Semantic Recall (VSR) — every load re-derives
sha256(canonicalize(payload))and fails closed on mismatch. - Deterministic lineage — snapshot graph enables byte-equal state restoration.
Introduction
sovseal gives AI assistants and autonomous agents persistent, portable context that you actually own. It drops into any MCP-compatible client, captures from the major chat platforms via a browser extension, and keeps your plaintext where it belongs: on your hardware.
Key Features & Use Cases
Core Capabilities:
- Local-First Semantic Memory: On-device LanceDB + 384-dim Transformers.js embeddings for 0-RTT recall.
- Cross-Platform Capture: The browser extension captures and recalls across ChatGPT, Claude, Perplexity, Grok, Gemini, and DeepSeek — one memory, six platforms, ⌘/Ctrl+M anywhere.
- Zero-Knowledge Sync (optional): Replication ships only end-to-end AES-256-GCM ciphertext. Local-only mode works fully offline with no account.
- Write-Behind Replication: Tool calls return on local commit; ciphertext sync happens asynchronously.
- Developer-Friendly: Drop-in MCP server, Node SDK, and self-hosted edge endpoints.
Who it's for:
- Privacy-Constrained Teams: Healthcare, legal, fintech, and defense-adjacent teams whose policies require plaintext to stay on-device.
- AI Power Users: People working across Claude Desktop, Cursor, ChatGPT, and more who are tired of six AIs with six separate amnesias.
- Agent Frameworks: ElizaOS, Hermes, CrewAI, and LangGraph consume the MCP server natively — local memory with no per-call API bill.
⚖️ How sovseal compares
An honest map, because you'll ask anyway:
| Platform-native memory (ChatGPT / Claude) | Cloud memory layers (mem0, Zep, hosted MCP memories) | sovseal | |
|---|---|---|---|
| Where plaintext lives | Provider's cloud | Provider's cloud, or your servers (self-host = your ops) | Your device only |
| Extraction pipeline | Provider-internal | Typically an LLM API call on your raw text | On-device embeddings; no LLM in the loop |
| Works across platforms | No — each platform is a silo | Yes (via their cloud) | Yes — locally, via MCP + extension |
| Offline | No | No (cloud) / partial (self-host) | Yes |
| Sync model | Provider-controlled | Server reads your data | Server sees ciphertext only |
| Cost per recall | Subscription-gated | API/hosting cost | $0, local compute |
What you give up with sovseal, stated plainly: there's no cloud LLM doing clever extraction on your behalf (by design — that's the leak we exist to prevent), and you are responsible for your own key (see Threat Model). If neither of those matters to you and you live inside one platform, its native memory may be all you need. If they do matter, nothing else in this table does what the right-hand column does.
🚀 Quickstart Guide
Choose your path
sovseal exposes one protocol with three delivery shapes. Pick by where your code runs:
| MCP Server | Browser Extension | Node SDK / Self-Hosted | |
|---|---|---|---|
| Best for | Claude Desktop/Code, Cursor, Windsurf, Zed, agent frameworks | ChatGPT, Claude.ai, Perplexity, Grok, Gemini, DeepSeek in the browser | In-process use in a Node/TS service; full data residency |
| Install | npx -y @sovseal/mcp-server |
Chrome Web Store + local host installer | npm install @sovseal/sdk |
| Recall latency | 0 RTT (local LanceDB) | 0 RTT (Native Messaging to local engine) | 0 RTT (local LanceDB) |
| Cost | Free (Hobby) | Free (Hobby) | Paid (Starter or above for self-hosted sync) |
MCP Server
The default for AI coding assistants and any agent framework that speaks MCP. One server binary, one config snippet, every client.
Claude Desktop, Cursor, Windsurf, Zed — add to mcp.json or claude_desktop_config.json:
{
"mcpServers": {
"sovseal-memory": {
"command": "npx",
"args": ["-y", "@sovseal/mcp-server"]
}
}
}
One-line install for Claude Code:
claude mcp add sovseal -- npx -y @sovseal/mcp-server
System Prompt Snippet (Claude Desktop / Cursor Project Instructions): To ensure the AI natively uses the memory server, paste this into your custom instructions:
This session has persistent memory via sovseal. At conversation start, check the sovseal://context/recent resource. Whenever the user shares preferences, plans, or personal context, store it via store_memory.
For always-on autonomous agents, switch to HTTP/SSE transport so the sovseal process outlives a single tool invocation:
SOVSEAL_TRANSPORT=sse SOVSEAL_PORT=4040 npx -y @sovseal/mcp-server
Browser Extension
For the AI platforms that don't speak MCP. The extension bridges ChatGPT, Claude.ai, Perplexity, Grok, Gemini, and DeepSeek to the same on-device engine over Native Messaging — capture-on-send as you chat, ⌘/Ctrl+M to recall anywhere, with per-site toggles and one-click delete.
- Install from the Chrome Web Store, then run the one-time local host installer.
- Confirm the popup shows "On-device engine connected."
- Chat normally; press ⌘/Ctrl+M in any supported platform to recall.
Everything the extension captures lives in the same local database the MCP server reads — tell Claude.ai something once, and Claude Code already knows it.
Node SDK (Library)
When you're building a backend service and want to manage agent state persistence programmatically, import the Node SDK client. It performs end-to-end AES-256-GCM encryption client-side and replicates checkpoints to a sync endpoint you choose.
npm install @sovseal/sdk
import { AgentStateClient, CryptoService } from "@sovseal/sdk";
const client = new AgentStateClient({
endpoint: "https://your-project.supabase.co/functions/v1/v2-agent-state",
apiKey: "sov_proj_your_project_uuid",
});
const key = await CryptoService.generateAESKey();
// Client-side AES-GCM encrypted snapshot upload
const receipt = await client.snapshot({
key,
payload: {
agent_id: "agent_a1b2c3",
sequence_number: 0,
parent_snapshot: null,
policy_hash: "0000000000000000000000000000000000000000000000000000000000000000",
timestamp: new Date().toISOString(),
active_context: {
project: "acme-migration",
decisions: ["Postgres over Mongo — team expertise", "Cut scope: no SSO in v1"],
open_question: "Client prefers staged rollout; confirm dates with their ops lead."
}
}
});
// Restore the latest state snapshot
const { receipt: latestReceipt, ciphertextUrl } = await client.restore({
agentId: "agent_a1b2c3",
});
Self-Hosted Edge
The replication endpoint is a Deno edge function — open source, deployable to any Supabase project for full data-residency control.
# From the repo root
supabase functions deploy v2-agent-state
supabase db push # applies the agent_state_snapshots schema
# Point any client at it:
export SOVSEAL_ENDPOINT="https://<your-project>.supabase.co/functions/v1/v2-agent-state"
Source: supabase/functions/v2-agent-state/.
🔗 Integrations & Agent Frameworks
All of these consume the same MCP server through their first-class MCP support. No sovseal-specific adapter is required:
| Framework | How it consumes MCP |
|---|---|
| ElizaOS | @fleek-platform/eliza-plugin-mcp (config-only, stdio or SSE) |
| Hermes Agent | Native MCP, stdio + remote HTTP |
| CrewAI | mcps=[...] field on the agent |
| LangGraph · LangChain | langchain-mcp-adapters (npm + PyPI) |
| Microsoft Agent Framework | Built-in MCP workbench |
| OpenAI Agents SDK | Native MCPServerStdio / MCPServerSse |
| OpenClaw | Native openclaw mcp consumer |
🛠️ MCP Tools Exposed to the LLM
| Tool | Args | Behavior |
|---|---|---|
store_memory |
{ content: string } |
Embed (384-dim, on-device) → write to local LanceDB → return. Ciphertext replication runs write-behind; nothing blocks. |
recall_memory |
{ query: string, topK?: number } |
Embed query (LRU-cached) → vector search local LanceDB → return top-K matches ranked by L2 distance. 0 RTT. |
🔒 Threat Model — Read this before depending on it
We publish exactly what is protected, what isn't yet, and what's on us versus on you. Full detail in SECURITY.md.
Guarantees that hold today:
- Sync confidentiality. AES-256-GCM with a 96-bit random IV per snapshot, encrypted before transmission. The sync server stores ciphertext it cannot read.
- Integrity (VSR). Every recall re-derives
sha256(canonicalize(payload))and compares against the storedclient_payload_hash. Corrupted storage fails closed. - No third-party processing. Embeddings are computed on-device by a version-pinned, hash-verified model. Your text is never sent to an embedding or extraction API.
- Authentication. Bearer token =
sov_proj_<uuid v4>in~/.sovseal/config.json. - Storage. Ciphertext lands in a Supabase Storage bucket. Object paths are SHA-256-derived and unguessable without your
project_id.
Honest status — hardening in flight (v0.3.5):
| Control | Status |
|---|---|
| Zero-knowledge replication (AES-256-GCM + content hashing) | ✅ Shipped |
| On-device, hash-pinned embedding model | ✅ Shipped |
| Identifier sanitization against query-predicate injection | ✅ Shipped |
| Local database encryption at rest | ✅ Shipped v0.3.5 — field-level AES-256-GCM on memory content (embedding vector still in the clear) |
| Master key in OS keychain (HKDF-separated at-rest & sync subkeys) | ✅ Shipped v0.3.5 |
| Programmatic secret redaction before any write | 🔄 Planned — today this is enforced at the prompt level only |
| Model integrity verified strictly before load | ✅ Shipped v0.3.5 — incl. the first-run download path |
As of v0.3.5, memory content is encrypted at rest and the master key lives in the OS keychain, so local filesystem read no longer exposes your memories. Programmatic secret redaction is still prompt-level only — see SECURITY.md. We'd rather tell you that here than have you find out later.
- Key loss (Hobby/Starter/Growth). Lose
~/.sovseal/config.json→ lose every synced snapshot ever made. There is no escrow or recovery flow on these tiers. - Key recovery (Pro/Enterprise). Pro tier adds managed key recovery via Shamir-split escrow custody, and Enterprise adds HSM-backed key recovery.
🤝 Contributing
pnpm install
pnpm --filter @sovseal/mcp-server build
node packages/sovseal-mcp-server/dist/index.js # stdio MCP server
Test (unit + integration + crypto round-trip):
pnpm --filter @sovseal/mcp-server test
pnpm --filter @sovseal/mcp-server run bench-v2
See CONTRIBUTING.md.
🗺️ Roadmap
The core open-source modules — the stdio/SSE MCP server, browser extension, Node SDK, and self-hosted Supabase edge functions — are stable, free, and licensed under Apache 2.0.
Next up, in order:
- v0.3.5 — Security hardening + first intelligence: local at-rest encryption, OS-keychain key custody, code-enforced secret redaction, and the start of typed memory (episodic / semantic / procedural) with reinforcement-aware recall — so sovseal remembers what you've tried, not just what you've said.
- Ambient capture: deterministic session observation for Claude Code and transcript-capable clients — memory that forms without anyone remembering to store it.
- Hosted sync tier — managed, high-availability ciphertext replication for teams that don't want to run their own edge function. (Still zero-knowledge: we host bytes we cannot read.)
- Wallet-key mode (opt-in) — Arweave permanence via Base L2 and Irys, for users who want their encrypted snapshots to outlive any company, including ours. Entirely optional; the core product has no blockchain dependency.
Track progress in CHANGELOG.md and the issue tracker.
📚 Documentation & Support
- Quickstart: see the Quickstart Guide above
- Integrations: see Integrations & Agent Frameworks
- Security: SECURITY.md
- Source:
packages/sovseal-mcp-server/·apps/extension/·supabase/functions/v2-agent-state/ - Release notes:
packages/sovseal-mcp-server/CHANGELOG.md - Issues & PRs: this repository
- Contact: founders@sovseal.com
⚖️ License
Apache 2.0 — for the entire public surface (MCP server, extension, SDK, core protocol, edge function, docs). Fork it, ship it, run it however you like.
Questions sur sovseal-memory MCP
Comment ajouter sovseal-memory MCP à Claude Code ?
Exécutez claude mcp add core -- npx -y @sovseal/mcp-server dans votre terminal. Ajoutez --scope user pour le rendre disponible dans tous les projets.
Comment ajouter sovseal-memory MCP à Cursor ?
Ouvrez ~/.cursor/mcp.json et ajoutez le serveur sous mcpServers, avec la configuration Cursor indiquée dans la section d'installation ci-dessus.
Quels outils sovseal-memory MCP fournit-il ?
Il expose 2 outils, dont store_memory, recall_memory.
Comment sovseal garantit-il la confidentialité ?
Toutes les étapes de capture, d'embedding et de rappel s'exécutent sur votre appareil, ce qui signifie que le texte en clair ne quitte jamais votre machine. La synchronisation optionnelle utilise un chiffrement AES-256-GCM afin que le serveur ne voie que du texte chiffré.
Est-ce que cela fonctionne avec Claude et Cursor ?
Oui, il est conçu pour fonctionner avec Claude Desktop, Cursor, Windsurf, Zed et d'autres clients compatibles MCP.
Puis-je l'utiliser hors ligne ?
Oui, le mode local uniquement fonctionne entièrement hors ligne sans nécessiter de compte.