Agent-agnostic memory backend that preserves continuity between humans and AI over time.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ or use 1-click editor setup below.
๐ก Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
English | ็น้ซไธญๆ๏ผๅฐ็ฃ๏ผ | ็น้ซไธญๆ๏ผ้ฆๆธฏ๏ผ | ็ฎไฝไธญๆ
marsnme.com โ Claude.md is for context. MarsNMe is for continuity.
Your AI tools should know you โ not start from scratch every time. When Perplexity helps you decide, Claude should remember why. When Cursor ships a feature, Warp should know the context. That's not context sharing. That's continuity.
Most AI memory tools help AI remember you. MarsNMe helps you and your AI remember each other โ across sessions, across tools, over time.
An agent-agnostic, LLM-agnostic memory backend for MCP-compatible tools.
ย ย
I use Cursor to code, Warp to deploy, Perplexity to research, and Claude Code to manage my vault. Before MarsNMe, every tool started blank โ I had to re-explain my project, my preferences, my decisions every single session. Now my AI across all four tools knows what we decided yesterday, what we tried last week, and why we chose this architecture over that one. It's not about injecting context. It's about having a relationship that compounds over time.
โ Leo, MarsNMe creator (3 months of daily use across 4 AI tools)
| Tool | Description |
|---|---|
insert_memory | Store short-term memory |
list_memories | List recent memories |
search_memories | Semantic search via Jina embeddings |
recall | Long-term chunk recall โ ~80-char preview per match |
get_summary | Medium excerpt (~300 chars) of a chunk by ID |
get_full | Complete text of a long-term chunk by ID |
memory_ingest | Ingest long-term insight chunks |
dream_ingest | Dream-mode long-term ingestion |
session_boot | Start a session with context pre-load |
session_close | Close session, summarize, auto-promote expiring memories |
health_check | Coverage, expiry, conflict diagnostics |
reload_source_registry | Refresh source whitelist at runtime |
demote_memory | Demote a memory to lower priority |
soft_forget | Soft-delete a memory |
explain_memory | Explain a memory's provenance |
batch_promote | Promote expiring short-term memories to long-term |
recall returns ~80-char previews, then get_summary (~300 chars), then get_full (complete). Avoids token-dumping full chunks on every recall; drill down only when a preview looks relevant.session_close(to=<body>, note=...) leaves a note that session_boot(body=<target>) delivers and marks read โ one agent can hand context to another.batch_promote on session_close: closing a session automatically promotes soon-expiring short-term memories (48h window, up to 5) to long-term storage โ no Hermes or manual promote needed.grok + draft sources: added to the source whitelist so the Grok body and Draft lifecycle hooks can write memories natively.save_prd, get_prd, list_prds, score_prd, spawn_to_linear) removed from the Supabase gateway โ idea/PRD/task execution now lives in Draft. MarsNMe = CoCo soul memory only.Most AI memory tools help AI remember you. MarsNMe helps you and your AI remember each other.
| MarsNMe | Typical memory tool | |
|---|---|---|
| Philosophy | Mutual continuity โ human + AI both grow | AI-side context injection only |
| Agent support | Any MCP-compatible client | Often client-specific |
| Memory tiers | Short-term (TTL) + long-term (semantic) | Usually one layer |
| Profiles | Unlimited isolated profiles via MCP_PROFILE | Single-user only |
| Data ownership | Your own Supabase โ zero vendor lock-in | Vendor-hosted |
| Search | Jina v3 semantic search (1024-dim pgvector) | Keyword or basic similarity |
| Self-hostable | โ Full control | Rarely |
| Folder | Runtime | Who uses it |
|---|---|---|
marsnme-supabase/ | Supabase + Jina gateway (@marsnme/mcp-gateway) | Mars Group dogfood โ Proxmox CT101 (CoCo / Toto soul memory) |
marsnme-cf/ | Cloudflare Workers + D1 + Vectorize | Self-host template; not the Proxmox deploy path |
marsnme-supabase/cloudflare-routing-worker/ | mcp.marsnme.com routing proxy | Public setup wizard โ upstream gateway |
Product split (Mars Group): Idea / PRD / task execution โ Draft + draft-mcp. MarsNMe Supabase = CoCo soul memory only (recall, session boot/close, ingest, lifecycle). As of @marsnme/mcp-gateway v0.3.0, PRD MCP tools (save_prd, get_prd, list_prds, score_prd, spawn_to_linear) are removed from the Supabase gateway โ use Draft for idea/PRD/task workflows.
Proxmox deploy: private MarsNMe-lab โ deploy/deploy-proxmox-ct101.sh or GitHub cd-selfhosted workflow. Not a single-script deploy like draft-mcp.
| Package | Description |
|---|---|
marsnme-supabase/ | Core MCP gateway โ agent-agnostic memory backend (this package is published to npm as @marsnme/mcp-gateway) |
marsnme-supabase/cloudflare-routing-worker/ | Cloudflare Worker for mcp.marsnme.com โ username-based MCP routing proxy with setup wizard |
marsnme-cf/ | Self-hosted MCP memory server on Cloudflare Workers + D1 + Vectorize (no Supabase needed) |
Go to mcp.marsnme.com/setup โ create your personal MCP URL in 4 steps:
https://mcp.marsnme.com/your-nameThen add it to any MCP client (Claude, Cursor, Perplexity, Warp).
Self-hosted? Deploy marsnme-cf/ to your own Cloudflare account โ no Supabase needed, uses D1 + Workers AI + Vectorize.
SUPABASE_BASE_URLservice_role key โ SUPABASE_SERVICE_ROLE_KEYSUPABASE_SERVICE_ROLE_KEY private. Never commit it.JINA_API_KEYFor the fastest path, use the one-line installer: curl -fsSL https://marsnme.com/install.sh | bash
The manual path below follows the same tools-first flow as docs/onboarding-a-mcp-zero-to-recall.md and docs/onboarding-b-platform-skill-install.md.
.env:
SUPABASE_BASE_URLSUPABASE_SERVICE_ROLE_KEYJINA_API_KEY--db-url must be the Postgres database connection string from Project Settings โ Database โ Connection string.SUPABASE_BASE_URL (https://<project-ref>.supabase.co, REST API URL).supabase_admin (not postgres).vector extension is enabled first (Database โ Extensions).supabase/migrations/:
20260504052744_semantic_vector_dual_profile.sql20260513213800_memory_lifecycle_tracking.sql20260513222500_health_check_detect_conflicts_v2.sql20260517183000_provenance_audit_trail.sql20260517194000_memory_scope_agent_body_environment.sql20260517200500_forget_demote_mechanism.sql20260517223500_usage_cost_telemetry_light.sql20260517231000_memories_source_constraint_regex.sql20260517232000_source_registry_table.sqlMCP_PROFILE separates memory by agent or use case.default, my-agent, profile-a).coco and toto are still supported for compatibility.PORT is omitted, default port is profile-based (coco=18790, toto=18791, other profiles deterministic in 20000-29999).If you only want a local demo path, use Docker Compose.
One-line install (recommended):
Or manually:
This starts:
supabase/migrations/http://127.0.0.1:18790/mcp)When you need a temporary public endpoint for remote AI tools:
Expected output (from tunnel logs):
Get MCP endpoint:
Notes:
trycloudflare.com URL is temporary (demo only).http://127.0.0.1:18790/mcp.MCP_TUNNEL_PROFILE (default coco)MCP_TUNNEL_REQUIRE_BEARER (default false for demo convenience)Local endpoint:
http://127.0.0.1:18790/mcpIf bearer auth is enabled (MCP_REQUIRE_BEARER=true), include:
Authorization: Bearer <your-token>claude_desktop_config.json (macOS default path: ~/Library/Application Support/Claude/claude_desktop_config.json).marsnme-cfhttp://127.0.0.1:18790/mcpSettings > Agents > MCP servers.http://127.0.0.1:18790/mcphttp://127.0.0.1:18790/mcpUse a streamable HTTP/SSE MCP entry:
After client connection, verify this sequence once:
tools/list:insert_memory:recall:mars-memory-mcp is the core MCP gateway repository behind the public-facing MarsNMe release.
One codebase (marsnme-supabase/server.mjs) serves multiple profile schemas through MCP_PROFILE.
This public repository currently keeps two built-in legacy profile IDs (coco, toto) for backward compatibility.
initialize, notifications/initialized, tools/list, tools/call, pingcoco, toto)insert_memory (short-term memory)list_memoriessearch_memories (Jina embedding search)recall (~80-char preview) then get_summary (~300-char excerpt) then get_full (complete text)memory_ingest / dream_ingest (long-term chunk ingestion)session_boot / session_close (daily rhythm lifecycle; close auto-promotes expiring memories + supports body-to-body note handoff)health_check (coverage, expiry, conflict diagnostics)reload_source_registry (refresh source whitelist at runtime)demote_memory / soft_forget / explain_memory (memory lifecycle management)batch_promote (promote expiring short-term memories to long-term)perplexity, cursor, warp, openclaw, hermes, draft, grok<profile>.memories<profile>.marsvault_chunksinsert_memorymarsnme-supabase/server.mjs โ gateway entry pointmarsnme-supabase/scripts/hermes_digest_runner.py โ optional digest runnermarsnme-supabase/scripts/dream_runner.py โ public self-host dream runnermarsnme-supabase/deploy/systemd/ โ systemd templatesmarsnme-supabase/deploy/phase2/ โ build/deploy scriptsmarsnme-supabase/deploy/phase3/smoke_gate.sh โ smoke gate scriptsupabase/migrations/ โ schema-as-code migrations.env.example to your local .env (do not commit real secrets).MCP_PROFILE (your profile identifier; this repo ships with legacy coco/toto)SUPABASE_BASE_URLSUPABASE_SERVICE_ROLE_KEYJINA_API_KEYMCP_REQUIRE_BEARER=trueMCP_CLIENT_IDMCP_CLIENT_SECRETHermes is optional and disabled by default:
HERMES_ENABLED=falseHERMES_DIGEST_MCP_URLHERMES_DIGEST_MCP_BEARER_TOKENHERMES_DIGEST_ORIGINHERMES_DIGEST_SOURCE_DIRDream Runner is public-friendly and can run without Hermes private environment:
DREAM_ENABLED=trueDREAM_MODE=lite|standard|proDREAM_DIGEST_MCP_URLDREAM_MCP_BEARER_TOKEN (if required)DREAM_ENABLE_ISSUE_SIGNALS, DREAM_ENABLE_REPO_SCAN, DREAM_ENABLE_SOUL_CONTEXT (optional overrides)Quick start:
If you run this repository with bundled defaults and no profile remapping, use coco and toto.
See docs/dream-runner-self-host.md for full configuration.
docs/onboarding-a-mcp-zero-to-recall.mddocs/onboarding-b-platform-skill-install.mdskills/README.mdskills/perplexity/memory-daily-boot/SKILL.mdskills/cursor/memory-daily-boot/rule.mdcskills/warp/memory-daily-boot/prompt.mdHealth endpoints:
GET /healthPOST /mcpUse marsnme-supabase/deploy/systemd/memory-mcp-gateway@.service with instances:
memory-mcp-gateway@profile-a.servicememory-mcp-gateway@profile-b.serviceRecommended env files:
/opt/mars-memory-mcp/shared/.env/opt/mars-memory-mcp/shared/.env.profile-a/opt/mars-memory-mcp/shared/.env.profile-b.github/workflows/publish-release.ymlv*marsnme-supabase/package.json versionThe helper updates marsnme-supabase/package.json and server.json, commits, tags, and pushes.
.env, runtime tokens, or oauth-clients.json.env.example committed as the only environment templateLICENSE)NOTICETRADEMARK.mdCONTRIBUTING.mdCLA.mdCHANGELOG.mdShowcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/marsnme)<a href="https://allmcps.com/mcp/marsnme"><img src="https://allmcps.com/api/badge/marsnme?style=directory" alt="MarsNMe on AllMCPs" /></a>