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-management MCP server with reasonable authentication and authorization patterns, but several security concerns lower the score. The server exposes sensitive operations (memory management, health checks) with weak access controls in some configurations, lacks comprehensive input validation in critical paths, and has potential for information disclosure through detailed diagnostic outputs. The code quality is generally good, but credential handling, error logging, and permission scope validation need hardening. 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 · 14 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 from profile schema |
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 and summarize |
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 |
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 |
| Package | Description |
|---|---|
soul-memory/ | Core MCP gateway — agent-agnostic memory backend (this package is published to npm as @marsnme/mcp-gateway) |
soul-memory/cloudflare-routing-worker/ | Cloudflare Worker for mcp.marsnme.com — username-based MCP routing proxy with setup wizard |
marsnme-local/ | 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-local/ 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-local": {
"url": "http://127.0.0.1:18790/mcp"
}
}
}
marsnme-localhttp://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-local": {
"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 (soul-memory/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 (long-term chunk recall from profile schema)memory_ingest / dream_ingest (long-term chunk ingestion)session_boot / session_close (daily rhythm lifecycle)health_check (coverage, expiry, conflict diagnostics)reload_source_registry (refresh source whitelist at runtime)demote_memory / soft_forget / explain_memory (memory lifecycle management)<profile>.memories<profile>.marsvault_chunksinsert_memorysoul-memory/server.mjs — gateway entry pointsoul-memory/scripts/hermes_digest_runner.py — optional digest runnersoul-memory/scripts/dream_runner.py — public self-host dream runnersoul-memory/deploy/systemd/ — systemd templatessoul-memory/deploy/phase2/ — build/deploy scriptssoul-memory/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 soul-memory/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 soul-memory/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 soul-memory/deploy/phase2/build_release_artifact.sh
npx supabase db push --db-url "<postgres://supabase_admin:<password>@<host>:5432/postgres>"
bash soul-memory/deploy/phase2/pre_deploy_schema_gate.sh \
--db-url "<postgres://supabase_admin:<password>@<host>:5432/postgres>" \
--profiles coco,toto \
--expected-role supabase_admin
bash soul-memory/deploy/phase3/smoke_gate.sh --spawn-local
.github/workflows/publish-release.ymlv*soul-memory/package.json versionmrel patch
mrel minor
mrel major
mrel 0.1.2
The helper updates soul-memory/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
Web content fetching and conversion for efficient LLM usage
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.