Memxus

Ein Speicher. Jede KI. Nichts zu installieren. Memxus funktioniert mit Claude, ChatGPT, Cursor und Slack – sowie jeder App, die Ihr Team nutzt und die sich etwas merken muss (Notion, Linear/Jira, Gmail, Salesforce/HubSpot, Intercom, Zendesk, Google Drive, Confluence, GitHub). Keine Erweiterung, keine lokale Einrichtung, kein wiederholter Kontext. Einmal speichern. Überall merken.

Dokumentation

Memxus — AI Context Engine

One context engine. Every AI.

Builds persistent context from GitHub, Notion, and your saved decisions — delivered to Claude, Cursor, ChatGPT, VS Code, and any MCP-compatible client.

Glama MCP Connector License: AGPL-3.0 Node 20+ Railway MCP Registry v1.1.0

Website · Docs · Connect your first AI · Glama Inspector



The problem

Every AI tool starts from zero.

Claude doesn't know what Cursor knows. Cursor doesn't know what ChatGPT knows.
Your stack, project decisions, coding preferences and workflow context get repeated again and again.

Memxus fixes that with a shared context engine for your AI tools — not another chatbot, but persistent context built from your real work sources.

Sync GitHub once → every AI knows your stack. Save a decision in Claude → recall it in Cursor → reuse it in ChatGPT.


What is Memxus?

Memxus is the AI context engine — a hosted remote MCP server that automatically builds and delivers persistent project context to every AI client you use.

GitHub repos, Notion docs, commits, PRs, issues, and saved decisions become searchable context. GitHub and Notion connectors are live in production (v1.1.0) — connect from the dashboard or directly from chat via MCP connector tools. Skill routing suggests official AI skills matched to your stack.

No local setup.
No file syncing.
No copy-pasting context between tools.

Connect once with OAuth and your context becomes portable across your entire AI workflow.


Why developers use Memxus

  • Keep project architecture and stack context available across Claude, Cursor, and ChatGPT
  • Sync GitHub and Notion into unified project collections — one context per repo
  • Stop pasting the same context into every new AI session
  • Get official AI skill suggestions matched to your stack (get_context_with_skills)
  • Share team context across agents and workflows
  • Build AI apps with persistent context through MCP or API

Real context from GitHub & Notion

Memxus reads your real work — not generic memory snippets. Synced content lands in a unified collection per project: project:<slug>.

What gets synced

SourceContent indexed into context
GitHubRepos, READMEs, commits, pull requests, issues
NotionSelected workspace pages and docs
ManualDecisions, preferences, and notes via remember

How to connect

  1. Dashboarddashboard.memxus.com/integrations (GitHub App + Notion OAuth)
  2. From chat (MCP)connect_sourcecheck_connect_statuslist_syncable_itemsset_sync_selection

How to use synced context

Call recall, get_context, or get_context_with_skills with collection=project:<slug> (or let semantic search find it). GitHub/Notion content is tagged and searchable alongside manual memories.

flowchart LR
  GitHub[GitHub repos] --> Sync[Memxus sync]
  Notion[Notion pages] --> Sync
  Manual[Manual remember] --> Sync
  Sync --> Collection["project:slug"]
  Collection --> Tools["recall / get_context / get_context_with_skills"]
  Tools --> Clients[Claude Cursor ChatGPT]

Context Engine tools (6): visible when In-app connect and Skill routing are enabled in dashboard settings. Production ships the full 15-tool manifest for users with v2 prefs on.


Connect in 30 seconds

URL:       https://mcp.memxus.com/mcp
Auth:      OAuth 2.1 (handled automatically)
Transport: Streamable HTTP

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "memxus": {
      "url": "https://mcp.memxus.com/mcp",
      "transport": "streamable-http"
    }
  }
}

Cursor / VS Code

{
  "mcp": {
    "servers": {
      "memxus": {
        "url": "https://mcp.memxus.com/mcp",
        "transport": "http"
      }
    }
  }
}

Or open directly in Glama Inspector →
https://glama.ai/mcp/inspector?url=https://mcp.memxus.com/mcp

For marketplace reviewers: see REVIEWER.md for OAuth and Bearer token setup.


Supported platforms

PlatformIntegrationStatus
Claude Desktop / claude.aiRemote MCP✅ Live
CursorRemote MCP✅ Live
VS Code / Copilot MCPRemote MCP✅ Live
ChatGPTCustom GPT / API✅ Live
GeminiMCP-compatible workflow✅ Live
TelegramBot connector✅ Live
GitHubRepo sync (commits, PRs, issues, README)✅ Live
NotionWorkspace page sync✅ Live
DiscordBot connector🔜 Coming soon
SlackBot connector🔜 Coming soon
Any MCP-compatible clientRemote MCP✅ Live

Available tools

Registry com.memxus/memxus v1.1.0 — 9 core tools always available, plus 6 Context Engine tools when v2 prefs are enabled.

Core tools (9)

ToolDescription
rememberSave context — manual input, decisions, or notes; optional project:<slug> collection
recallSemantic search across memories; GitHub/Notion synced content via project:<slug> or tags
get_contextFormatted context block from GitHub, Notion, and saved decisions for agent prompts
list_memoriesBrowse memories by collection, tags, type, or visibility
get_memoryRetrieve full content and metadata by memory ID
list_collectionsList scopes; GitHub/Notion syncs appear under project:<slug>
forgetDelete a memory permanently
memory_statsStats by type and collection
updatePatch or append existing memory content, tags, or type

Context Engine tools (6) — v1.1.0

ToolDescription
connect_sourceStart GitHub App install or Notion OAuth from chat
list_syncable_itemsList repos or Notion pages available after connecting
set_sync_selectionChoose what to sync and trigger initial sync into project:<slug>
check_connect_statusPoll connection status after connect_source
get_context_with_skillsBuild context + suggest official AI skills for your stack and task
suggest_skillsDiscover skills from skills.sh without a full context block

Full tool reference: memxus.com/docs/mcp · Marketplace reviewers: REVIEWER.md


Architecture

GitHub App ──┐
Notion OAuth ┼──► sync (API + connector tools) ──► Supabase  project:<slug>
Manual MCP   ┘                                              │
                                                            │ pgvector
MCP Client (Claude, Cursor, etc.)                           │
        │                                                   │
        │  POST /mcp   Bearer aimem_*                       │
        ▼                                                   ▼
  mcp.memxus.com  ← This repo (Railway) ──────────►  Supabase (Postgres + pgvector)
        │
        ▼
  Dash-AIMemory (Dashboard + integrations)

Sync runs server-side via dashboard or MCP connector tools — no local files to manage.

Transport: Streamable HTTP (MCP 2.0)
Auth: OAuth 2.1 + PKCE + Dynamic Client Registration (RFC 9728)


Security

  • OAuth 2.1 + PKCE — no passwords, no API keys to manage
  • Encrypted at rest (AES-256)
  • User-controlled memory — view, edit and delete anytime from the dashboard
  • No local files or manual syncing
  • Pre-publication secrets audit passed: 2026-06-17

OAuth flow

1. Client  →  GET  /.well-known/oauth-authorization-server
2. Client  →  GET  /oauth/authorize  →  redirect to dashboard login
3. User signs in (Google) in the dashboard
4. Client  →  POST /oauth/token  (PKCE)  →  aimem_* bearer token
5. Client  →  POST /mcp  Authorization: Bearer aimem_*

Dynamic Client Registration is supported — clients register automatically on first connect.


Self-hosting

Prerequisites

  • Node 20+
  • Supabase project (run supabase/migration.sql after the dashboard migration)
  • Railway account (or any Node host)

Environment variables

cp .env.example .env
VariableDescription
MCP_PUBLIC_URLPublic URL of this server (no trailing slash)
DASHBOARD_URLDash-AIMemory URL for login redirect
SUPABASE_URLSupabase project URL
SUPABASE_SERVICE_ROLE_KEYSupabase service role key
OAUTH_CLIENT_IDOAuth client ID
ALLOWED_REDIRECT_URISComma-separated allowed redirect URIs
CORS_ORIGINSComma-separated allowed CORS origins
OPENAI_API_KEY(Optional) Vector search embeddings

Run locally

npm install
npm run dev       # tsx watch
npm run build     # tsc → dist/
npm start         # node dist/index.js

Deploy to Railway

Set all variables under Settings → Variables (never commit .env).
MCP_PUBLIC_URL = your Railway networking URL (no trailing /mcp).
Health check endpoint: /health (configured in railway.toml).

Note: Node 20 on Railway — Supabase Realtime needs the ws package (configured in src/lib/supabase.ts).
Optional: set RAILPACK_NODE_VERSION=22 for native WebSocket support.


Development

npm install
npm run dev        # tsx watch
npm run lint       # ESLint
npm run typecheck  # tsc --noEmit
npm run build      # compile → dist/
npm start          # node dist/index.js

Marketplace reviewers: REVIEWER.md · MCP docs: memxus.com/docs/mcp · Registry: com.memxus/memxus v1.1.0


Releases

  1. Add entries under ## [Unreleased] in CHANGELOG.md
  2. Bump version in package.json, server.json, and src/mcp/server.ts
  3. Move the changelog section to ## [X.Y.Z] - YYYY-MM-DD
  4. Commit, tag, and push:
git tag -a vX.Y.Z -m "Memxus MCP vX.Y.Z"
git push origin vX.Y.Z

Pushing a v* tag triggers .github/workflows/release.yml — quality gate + GitHub Release with server.json attached.


Secrets audit

Run from the repo root before making the repository public.
Last audit: 2026-06-17 — PASSED

# 1. Verify .env was never committed
git log --all --full-history -- .env .env.local .env.production

# 2. Check for .env* files added in history
git log --all --oneline --diff-filter=A -- "*.env*"

# 3. Grep current tree for dangerous patterns (exclude .example)
git grep -rn -E "(service_role|anon_key|sk-[a-zA-Z0-9]{20,}|aimem_[a-zA-Z0-9]+|eyJ[a-zA-Z0-9_-]{20,})" \
  -- ":(exclude)*.example" ":(exclude)CHANGELOG*"

# 4. Search full git history for leaked keys
git log --all -p --follow -S "service_role" -- . | head -100
git log --all -p --follow -S "SUPABASE_SERVICE_ROLE_KEY=" -- . | head -100
CheckExpected
Commands 1–2No .env commits (only .env.example in initial commit)
Command 3Only placeholders (aimem_YOUR_KEY), test fixtures, SQL comments
Command 4No real key values in diffs

If commands 1 or 4 find real secrets, rotate keys immediately and run git filter-repo --path .env --invert-paths before publishing.


Roadmap

  • GitHub connector (repo sync → project:<slug>)
  • Notion connector (workspace page sync)
  • MCP Registry v1.1.0 (com.memxus/memxus — AI Context Engine)
  • Context Engine tools (connect + skills routing)
  • Discord bot connector
  • Slack bot connector
  • Refresh tokens
  • Multi-client OAuth UX
  • npm publish

License

Licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

You can use, modify, and distribute this code freely. If you use it to run a network service (SaaS), you must publish your source code under the same license.

© 2026 Gabriel Pitrella · memxus.com