Server data from the Official MCP Registry
Agent-agnostic memory backend that preserves continuity between humans and AI over time.
Agent-agnostic memory backend that preserves continuity between humans and AI over time.
MarsNMe is a memory backend MCP server with proper authentication mechanisms and generally sound architecture. However, several security concerns lower the score: environment variable exposure risks in error handling, insufficient input validation on source/body fields, potential information disclosure through detailed error messages, and a complex OAuth implementation that increases attack surface. The server's permissions (network, file I/O, environment variables) are appropriate for its purpose, but code quality issues around credential handling and validation warrant attention. Supply chain analysis found 2 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue (1 critical, 0 high severity).
4 files analyzed · 13 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Unverified package source
We couldn't verify that the installable package matches the reviewed source code. Proceed with caution.
Set these up before or after installing:
Environment variable: MCP_PROFILE
Environment variable: SUPABASE_BASE_URL
Environment variable: SUPABASE_SERVICE_ROLE_KEY
Environment variable: JINA_API_KEY
Environment variable: PORT
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-marsmanleo-marsnme": {
"env": {
"PORT": "your-port-here",
"MCP_PROFILE": "your-mcp-profile-here",
"JINA_API_KEY": "your-jina-api-key-here",
"SUPABASE_BASE_URL": "your-supabase-base-url-here",
"SUPABASE_SERVICE_ROLE_KEY": "your-supabase-service-role-key-here"
},
"args": [
"-y",
"@marsnme/local"
],
"command": "npx"
}
}
}From the project's GitHub README.
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.
curl -fsSL https://marsnme.com/install.sh | bash
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.
git clone https://github.com/Marsmanleo/MarsNMe.git
cd MarsNMe
node --version
cp .env.example .env
.env:
SUPABASE_BASE_URLSUPABASE_SERVICE_ROLE_KEYJINA_API_KEYnpx supabase db push --db-url "<your-supabase-db-connection-string>"
--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).MCP_PROFILE=profile-a PORT=18790 npx @marsnme/mcp-gateway
curl -sS http://127.0.0.1:18790/health
If you only want a local demo path, use Docker Compose.
One-line install (recommended):
curl -fsSL https://marsnme.com/install.sh | bash
Or manually:
cp .env.example .env
# fill JINA_API_KEY in .env
docker compose up
This starts:
supabase/migrations/http://127.0.0.1:18790/mcp)curl -sS http://127.0.0.1:18790/health
When you need a temporary public endpoint for remote AI tools:
docker compose --profile tunnel up
Expected output (from tunnel logs):
https://xxxx.trycloudflare.com
Get MCP endpoint:
docker compose --profile tunnel logs tunnel | grep -Eo 'https://[^ ]+trycloudflare.com' | head -n1
# append /mcp
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).{
"mcpServers": {
"marsnme-cf": {
"url": "http://127.0.0.1:18790/mcp"
}
}
}
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:
{
"marsnme-cf": {
"url": "http://127.0.0.1:18790/mcp"
}
}
After client connection, verify this sequence once:
tools/list:curl -sS http://127.0.0.1:18790/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
insert_memory:curl -sS http://127.0.0.1:18790/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"insert_memory","arguments":{"body":"quickstart memory check","source":"warp","session_id":"quickstart-smoke"}}}'
recall:curl -sS http://127.0.0.1:18790/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"recall","arguments":{"query":"quickstart memory check","limit":3}}}'
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:
DREAM_ENABLED=true DREAM_MODE=lite python3 marsnme-supabase/scripts/dream_runner.py
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.mdMCP_PROFILE=profile-a npx @marsnme/mcp-gateway
MCP_PROFILE=profile-b npx @marsnme/mcp-gateway
Health 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-bbash marsnme-supabase/deploy/phase2/build_release_artifact.sh
npx supabase db push --db-url "<postgres://supabase_admin:<password>@<host>:5432/postgres>"
bash marsnme-supabase/deploy/phase2/pre_deploy_schema_gate.sh \
--db-url "<postgres://supabase_admin:<password>@<host>:5432/postgres>" \
--profiles coco,toto \
--expected-role supabase_admin
bash marsnme-supabase/deploy/phase3/smoke_gate.sh --spawn-local
.github/workflows/publish-release.ymlv*marsnme-supabase/package.json versionmrel patch
mrel minor
mrel major
mrel 0.1.2
The 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.mdBe the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.