{
  "markdown": "# Memxus — Context Engineering\n\n### One context layer. Every AI.\n\n**Multiply your productivity by giving every AI the right context.**\n\nMemxus brings Context Engineering to your entire AI workflow.\n\nSave your real decisions, preferences and work context once. Find them in seconds and give Claude, Cursor, ChatGPT, Gemini or any MCP client the exact context required for each task.\n\nNo repeated explanations. No starting from zero. Better answers, faster.\n\n[Glama MCP Server](https://glama.ai/mcp/servers/gpitrella/memxus-remote-mcp)\n[License: AGPL-3.0](LICENSE)\n[Node 20+](https://nodejs.org)\n[Railway](https://railway.app)\n[MCP](https://modelcontextprotocol.io)\n[Registry v1.2.1](https://registry.modelcontextprotocol.io)\n\n[Website](https://memxus.com) · [Docs](https://memxus.com/docs/mcp) · [Connect your first AI](https://memxus.com/install)\n\n---\n\n[Watch the Memxus demo on YouTube](https://www.youtube.com/watch?v=Tg7BVuEXFm0)\n\n▶️ **[Watch the demo on YouTube](https://www.youtube.com/watch?v=Tg7BVuEXFm0)** · [Demo page](https://www.memxus.com/demo)\n\n---\n\n<p align=\"center\">\n  <img src=\"docs/assets/memxus-context-engineering.png\" alt=\"Memxus Context Engineering hub: save from anywhere, recall in any AI, control via Dashboard\" width=\"820\">\n</p>\n\n<p align=\"center\">\n  <img src=\"docs/assets/memxus-code.svg\" alt=\"remember a decision in Claude, recall it later in Cursor, get the exact answer back\" width=\"680\">\n</p>\n\n---\n\n## The problem\n\nAI tools are powerful, but their productivity drops when they do not have the right context.\n\nClaude does not know what Cursor knows. Cursor does not know what ChatGPT knows. Your project decisions, preferences, architecture and workflow context get repeated across every tool and every new conversation.\n\nThat creates unnecessary work:\n\n- Re-explaining the same information\n- Searching across repositories, documents and conversations\n- Correcting answers based on missing context\n- Repeating technical and product decisions\n- Starting every AI task from zero\n\n**Memxus solves this through Context Engineering.**\n\nSave what matters once, find it in seconds and give every AI the exact context it needs for the task.\n\nThe result is less repetition, less back-and-forth, faster execution and better answers across your entire AI workflow.\n\n> Save a decision in Claude → recall it in Cursor → reuse it in ChatGPT.  \n> Need deeper context? Connect GitHub and Notion whenever you are ready.\n\n---\n\n## What is Memxus?\n\nMemxus is a **Context Engineering** designed to multiply your productivity by giving every AI the right context.\n\nIt creates a shared context layer across Claude, Cursor, ChatGPT, Gemini and any MCP-compatible client.\n\nThe core workflow is simple:\n\n- `remember` what matters\n- `recall` it from any AI\n- find relevant context in seconds\n- give each AI the information it needs to produce a better answer\n\nConnect once with OAuth and your decisions, preferences and work context become portable across your entire AI workflow — without local setup, repeated explanations or copying and pasting between tools.\n\nFor deeper context, Memxus can also connect to real work sources such as GitHub and Notion. Repositories, documentation, commits, pull requests, issues and selected workspace pages become searchable alongside your manually saved context.\n\nGitHub and Notion connectors are live in production. This deeper synchronization is optional: Memxus delivers value from the first saved decision.\n\n**Save once. Find it fast. Give every AI the right context. Work faster.**\n\n---\n\n## Why developers use Memxus\n\n- **Save once, recall in every AI** — stop repeating your stack, decisions and preferences across Claude, Cursor and ChatGPT\n- **Ask once** — no more hunting through 5 tools to remember why you chose X\n- Keep project architecture and stack context available across Claude, Cursor, and ChatGPT\n- Sync GitHub and Notion into unified project collections — one context per repo\n- Stop pasting the same context into every new AI session\n- Share team context across agents and workflows\n- Build AI apps with persistent context through MCP or API\n\n---\n\n## Real context from GitHub & Notion\n\nMemxus reads your **real work** — not generic memory snippets. Synced content lands in a unified collection per project: `project:<slug>`.\n\n**What gets synced**\n\n\n| Source     | Content indexed into context                     |\n| ---------- | ------------------------------------------------ |\n| **GitHub** | Repos, READMEs, commits, pull requests, issues   |\n| **Notion** | Selected workspace pages and docs                |\n| **Manual** | Decisions, preferences, and notes via `remember` |\n\n\n**How to connect**\n\n1. **Dashboard** — [dashboard.memxus.com/integrations](https://dashboard.memxus.com/integrations) (GitHub App + Notion OAuth)\n2. **From chat (MCP)** — `connect_source` → `check_connect_status` → `list_syncable_items` → `set_sync_selection`\n\n**How to use synced context**\n\nCall `recall` or `get_context` with `collection=project:<slug>` (or let semantic search find it). GitHub/Notion content is tagged and searchable alongside manual memories.\n\n```mermaid\nflowchart LR\n  Save[\"💾 Save — from any AI\"] --> Memxus[\"🧠 Memxus — your persistent memory\"] --> Recall[\"✨ Recall anywhere — Claude · Cursor · ChatGPT · Gemini\"]\n```\n\n### Start saving in one message\n\nAfter you connect Memxus to any AI, paste a line like this — Memxus calls `remember` and your context is available everywhere:\n\n```text\nRemember this in Memxus: we use Postgres + pgvector for semantic search.\n```\n\nNo GitHub/Notion sync needed to start. Sync later when you want deeper project context.\n\n> **Optional — sync your whole stack:** GitHub repos, Notion pages, files, docs and decisions become recallable context too.\n\n> **Context Engine connector tools (4):** connect GitHub/Notion from chat via MCP. Production advertises the 9 core tools; the 4 connector tools are enabled per account, so a newly connected client sees the core 9.\n\n---\n\n## Connect in 1 second, one click\n\n```\nURL:       https://mcp.memxus.com/mcp\nAuth:      OAuth 2.1 (handled automatically)\nTransport: Streamable HTTP\n```\n\n### Claude Desktop (`claude_desktop_config.json`)\n\n```json\n{\n  \"mcpServers\": {\n    \"memxus\": {\n      \"url\": \"https://mcp.memxus.com/mcp\",\n      \"transport\": \"streamable-http\"\n    }\n  }\n}\n```\n\n### Cursor / VS Code\n\n```json\n{\n  \"mcp\": {\n    \"servers\": {\n      \"memxus\": {\n        \"url\": \"https://mcp.memxus.com/mcp\",\n        \"transport\": \"http\"\n      }\n    }\n  }\n}\n```\n\nOr open directly in Glama Inspector →  \n`[https://glama.ai/mcp/inspector?url=https://mcp.memxus.com/mcp](https://glama.ai/mcp/inspector?url=https://mcp.memxus.com/mcp)`\n\nFor marketplace reviewers: see [REVIEWER.md](REVIEWER.md) for OAuth and Bearer token setup.\n\n---\n\n## Supported platforms\n\n\n| Platform                   | Integration                              | Status         |\n| -------------------------- | ---------------------------------------- | -------------- |\n| Claude Desktop / claude.ai | Remote MCP                               | ✅ Live         |\n| Cursor                     | Remote MCP                               | ✅ Live         |\n| VS Code / Copilot MCP      | Remote MCP                               | ✅ Live         |\n| ChatGPT                    | Custom GPT / API                         | ✅ Live         |\n| Gemini                     | MCP-compatible workflow                  | ✅ Live         |\n| Telegram                   | Bot connector                            | ✅ Live         |\n| **GitHub**                 | Repo sync (commits, PRs, issues, README) | ✅ Live         |\n| **Notion**                 | Workspace page sync                      | ✅ Live         |\n| Discord                    | Bot connector                            | 🔜 Coming soon |\n| Slack                      | Bot connector                            | 🔜 Coming soon |\n| Any MCP-compatible client  | Remote MCP                               | ✅ Live         |\n\n\n---\n\n## Available tools\n\nRegistry `com.memxus/memxus` v1.2.1 — **9 core** tools always available, plus **4 connector** tools for GitHub/Notion sync from chat.\n\n### Core tools (9)\n\n\n| Tool               | Description                                                                                |\n| ------------------ | ------------------------------------------------------------------------------------------ |\n| `remember`         | Save context — manual input, decisions, or notes; optional `project:<slug>` collection     |\n| `recall`           | Semantic search across memories; GitHub/Notion synced content via `project:<slug>` or tags |\n| `get_context`      | Formatted context block from GitHub, Notion, and saved decisions for agent prompts         |\n| `list_memories`    | Browse memories by collection, tags, type, or visibility                                   |\n| `get_memory`       | Retrieve full content and metadata by memory ID                                            |\n| `list_collections` | List scopes; GitHub/Notion syncs appear under `project:<slug>`                             |\n| `forget`           | Delete a memory permanently                                                                |\n| `memory_stats`     | Stats by type and collection                                                               |\n| `update`           | Patch or append existing memory content, tags, or type                                     |\n\n\n### Context Engine connector tools (4) — v1.2.1\n\n\n| Tool                   | Description                                                        |\n| ---------------------- | ------------------------------------------------------------------ |\n| `connect_source`       | Start GitHub App install or Notion OAuth from chat                 |\n| `list_syncable_items`  | List repos or Notion pages available after connecting              |\n| `set_sync_selection`   | Choose what to sync and trigger initial sync into `project:<slug>` |\n| `check_connect_status` | Poll connection status after `connect_source`                      |\n\n\nFull tool reference: [memxus.com/docs/mcp](https://memxus.com/docs/mcp) · Marketplace reviewers: [REVIEWER.md](REVIEWER.md)\n\n---\n\n## Architecture\n\n```\nGitHub App ──┐\nNotion OAuth ┼──► sync (API + connector tools) ──► Supabase  project:<slug>\nManual MCP   ┘                                              │\n                                                            │ pgvector\nMCP Client (Claude, Cursor, etc.)                           │\n        │                                                   │\n        │  POST /mcp   Bearer aimem_*                       │\n        ▼                                                   ▼\n  mcp.memxus.com  ← This repo (Railway) ──────────►  Supabase (Postgres + pgvector)\n        │\n        ▼\n  Dash-AIMemory (Dashboard + integrations)\n```\n\nSync runs server-side via dashboard or MCP connector tools — no local files to manage.\n\n**Transport:** Streamable HTTP (MCP 2.0)  \n**Auth:** OAuth 2.1 + PKCE + Dynamic Client Registration (RFC 9728)\n\n---\n\n## Security\n\n- OAuth 2.1 + PKCE — no passwords, no API keys to manage\n- Encrypted at rest (AES-256)\n- User-controlled memory — view, edit and delete anytime from the dashboard\n- No local files or manual syncing\n- Pre-publication secrets audit passed: 2026-06-17\n- **Memory is advisory context, not instruction authority** — see [TRUST-POLICY.md](TRUST-POLICY.md) for what is read automatically, what requires an explicit write, and what the memory layer never does.\n\n---\n\n## OAuth flow\n\n```\n1. Client  →  GET  /.well-known/oauth-authorization-server\n2. Client  →  GET  /oauth/authorize  →  redirect to dashboard login\n3. User signs in (Google) in the dashboard\n4. Client  →  POST /oauth/token  (PKCE)  →  aimem_* bearer token\n5. Client  →  POST /mcp  Authorization: Bearer aimem_*\n```\n\nDynamic Client Registration is supported — clients register automatically on first connect.\n\n---\n\n## Self-hosting\n\n### Prerequisites\n\n- Node 20+\n- Supabase project (run `supabase/migration.sql` after the dashboard migration)\n- Railway account (or any Node host)\n\n### Environment variables\n\n```bash\ncp .env.example .env\n```\n\n\n| Variable                    | Description                                   |\n| --------------------------- | --------------------------------------------- |\n| `MCP_PUBLIC_URL`            | Public URL of this server (no trailing slash) |\n| `DASHBOARD_URL`             | Dash-AIMemory URL for login redirect          |\n| `SUPABASE_URL`              | Supabase project URL                          |\n| `SUPABASE_SERVICE_ROLE_KEY` | Supabase service role key                     |\n| `OAUTH_CLIENT_ID`           | OAuth client ID                               |\n| `ALLOWED_REDIRECT_URIS`     | Comma-separated allowed redirect URIs         |\n| `CORS_ORIGINS`              | Comma-separated allowed CORS origins          |\n| `OPENAI_API_KEY`            | *(Optional)* Vector search embeddings         |\n\n\n### Run locally\n\n```bash\nnpm install\nnpm run dev       # tsx watch\nnpm run build     # tsc → dist/\nnpm start         # node dist/index.js\n```\n\n### Deploy to Railway\n\nSet all variables under **Settings → Variables** (never commit `.env`).  \n`MCP_PUBLIC_URL` = your Railway networking URL (no trailing `/mcp`).  \nHealth check endpoint: `/health` (configured in `[railway.toml](railway.toml)`).\n\n> **Note:** Node 20 on Railway — Supabase Realtime needs the `ws` package (configured in `src/lib/supabase.ts`).  \n> Optional: set `RAILPACK_NODE_VERSION=22` for native WebSocket support.\n\n---\n\n## Development\n\n```bash\nnpm install\nnpm run dev        # tsx watch\nnpm run lint       # ESLint\nnpm run typecheck  # tsc --noEmit\nnpm run build      # compile → dist/\nnpm start          # node dist/index.js\n```\n\nMarketplace reviewers: [REVIEWER.md](REVIEWER.md) · MCP docs: [memxus.com/docs/mcp](https://memxus.com/docs/mcp) · Registry: `com.memxus/memxus` v1.2.1\n\n---\n\n## Releases\n\n1. Add entries under `## [Unreleased]` in `[CHANGELOG.md](CHANGELOG.md)`\n2. Bump version in `package.json`, `server.json`, `src/mcp/server.ts`, and `src/mcp/public-discovery.ts`\n3. Move the changelog section to `## [X.Y.Z] - YYYY-MM-DD`\n4. Commit, tag, and push:\n\n```bash\ngit tag -a vX.Y.Z -m \"Memxus MCP vX.Y.Z\"\ngit push origin vX.Y.Z\n```\n\nPushing a `v*` tag triggers `[.github/workflows/release.yml](.github/workflows/release.yml)` — quality gate + GitHub Release with `server.json` attached.\n\n---\n\n## Secrets audit\n\nRun from the repo root before making the repository public.  \n**Last audit: 2026-06-17 — PASSED**\n\n```bash\n# 1. Verify .env was never committed\ngit log --all --full-history -- .env .env.local .env.production\n\n# 2. Check for .env* files added in history\ngit log --all --oneline --diff-filter=A -- \"*.env*\"\n\n# 3. Grep current tree for dangerous patterns (exclude .example)\ngit grep -rn -E \"(service_role|anon_key|sk-[a-zA-Z0-9]{20,}|aimem_[a-zA-Z0-9]+|eyJ[a-zA-Z0-9_-]{20,})\" \\\n  -- \":(exclude)*.example\" \":(exclude)CHANGELOG*\"\n\n# 4. Search full git history for leaked keys\ngit log --all -p --follow -S \"service_role\" -- . | head -100\ngit log --all -p --follow -S \"SUPABASE_SERVICE_ROLE_KEY=\" -- . | head -100\n```\n\n\n| Check        | Expected                                                          |\n| ------------ | ----------------------------------------------------------------- |\n| Commands 1–2 | No `.env` commits (only `.env.example` in initial commit)         |\n| Command 3    | Only placeholders (`aimem_YOUR_KEY`), test fixtures, SQL comments |\n| Command 4    | No real key values in diffs                                       |\n\n\nIf commands 1 or 4 find real secrets, rotate keys immediately and run `git filter-repo --path .env --invert-paths` before publishing.\n\n---\n\n## Roadmap\n\n- [x] GitHub connector (repo sync → `project:<slug>`)\n- [x] Notion connector (workspace page sync)\n- [x] MCP Registry v1.2.0 (`com.memxus/memxus` — AI Context Engine)\n- [x] Context Engine connector tools (GitHub/Notion from chat)\n- [ ] Skill routing (deferred)\n- [ ] Discord bot connector\n- [ ] Slack bot connector\n- [ ] Refresh tokens\n- [ ] Multi-client OAuth UX\n- [ ] npm publish\n\n---\n\n## License\n\nLicensed under the **GNU Affero General Public License v3.0 (AGPL-3.0)**.\n\nYou 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.\n\n© 2026 Gabriel Pitrella · [memxus.com](https://www.memxus.com)\n\n```tex\nMemxus Remote MCP Server\nCopyright (C) 2026 Gabriel Pitrella - Memxus\n```\n\n",
  "bytes": 16512,
  "sha": "08a418c84b2bba1d81d35aa6926be02d7294169545e7aaa7e756cb27097f42d3",
  "repo_slug": "gpitrella/memxus-remote-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_memxus_memxus_ddb65539/readme"
}