Memxus MCP Server
Одна память. Каждый ИИ. Ничего не нужно устанавливать. Memxus работает с Claude, ChatGPT, Cursor и Slack — и любым приложением, которое использует ваша команда и которому нужно запоминать (Notion, Linear/Jira, Gmail, Salesforce/HubSpot, Intercom, Zendesk, Google Drive, Confluence, GitHub). Никаких расширений, локальной настройки или повторения контекста. Сохраните один раз. Запоминайте везде.
Документация
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.
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, and saved decisions become searchable context. Optional v2 tools add in-app GitHub/Notion connect and official AI skill suggestions 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
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
| Platform | Integration | Status |
|---|---|---|
| Claude Desktop / claude.ai | Remote MCP | ✅ Live |
| Cursor | Remote MCP | ✅ Live |
| VS Code / Copilot MCP | Remote MCP | ✅ Live |
| ChatGPT | Custom GPT / API | ✅ Live |
| Gemini | MCP-compatible workflow | ✅ Live |
| Telegram | Bot connector | ✅ Live |
| Discord | Bot connector | 🔜 Coming soon |
| Slack | Bot connector | 🔜 Coming soon |
| Notion | Connector | 🔜 Coming soon |
| Any MCP-compatible client | Remote MCP | ✅ Live |
Available tools (8)
| Tool | Description |
|---|---|
remember | Save important information to long-term memory |
recall | Semantic search across your memories |
get_context | Build a formatted context block for a topic |
list_memories | Browse memories by collection, tags, or type |
get_memory | Retrieve a specific memory by ID |
forget | Delete a memory by ID |
list_collections | List all your memory collections |
memory_stats | Stats by type and collection |
Architecture
MCP Client (Claude, Cursor, etc.)
│
│ POST /mcp Bearer aimem_*
▼
mcp.memxus.com ← This repo (Railway)
│
│ Supabase SDK
▼
Supabase (Postgres + pgvector)
│
▼
Dash-AIMemory (Dashboard)
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.sqlafter the dashboard migration) - Railway account (or any Node host)
Environment variables
cp .env.example .env
| Variable | Description |
|---|---|
MCP_PUBLIC_URL | Public URL of this server (no trailing slash) |
DASHBOARD_URL | Dash-AIMemory URL for login redirect |
SUPABASE_URL | Supabase project URL |
SUPABASE_SERVICE_ROLE_KEY | Supabase service role key |
OAUTH_CLIENT_ID | OAuth client ID |
ALLOWED_REDIRECT_URIS | Comma-separated allowed redirect URIs |
CORS_ORIGINS | Comma-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
wspackage (configured insrc/lib/supabase.ts).
Optional: setRAILPACK_NODE_VERSION=22for 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
- Add entries under
## [Unreleased]inCHANGELOG.md - Bump version in
package.json,server.json, andsrc/mcp/server.ts - Move the changelog section to
## [X.Y.Z] - YYYY-MM-DD - 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
| Check | Expected |
|---|---|
| Commands 1–2 | No .env commits (only .env.example in initial commit) |
| Command 3 | Only placeholders (aimem_YOUR_KEY), test fixtures, SQL comments |
| Command 4 | No 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
- Discord bot connector
- Slack bot connector
- Notion connector
- Refresh tokens
- Multi-client OAuth UX
- npm publish
- MCP Registry submit
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