AICortex
Überblick
Beschreibung vom Entwickler (englisches Original)
Self-hosted brain for any LLM: memory, skills, encrypted vault, devices and scheduled jobs.
Die drei Säulen von PopNx MCP
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
- Stimmen der NutzeriNoch keine BewertungenBewertungen starten in einem späteren Schritt zusammen mit Benutzerkonten
- Unsere Basischecksi1 von 1 bestandenAnhand öffentlicher Informationen geprüft; Code noch nicht gescannt
- NutzungiGanz neu★ –
Was du damit machen kannst
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
- Verbindung: Läuft auf deinem Computer
- Transport: Streamable HTTP
- Kategorie: Suche & KI-Gedächtnis
- Das musst du eintragen: STORAGE_ENCRYPTION_KEY, OIDC_CLIENT_SECRET, JWT_SIGNING_KEY
Installation
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Bevor du installierst
- Basischecks: 1 von 1 bestanden
- Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
- Das trägst du selbst ein:
STORAGE_ENCRYPTION_KEY,OIDC_CONFIG_URL,OIDC_CLIENT_ID,OIDC_CLIENT_SECRET,BASE_URL,JWT_SIGNING_KEY
Als geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
- DockerDocker installiert
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"aicortex": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"STORAGE_ENCRYPTION_KEY",
"-e",
"OIDC_CONFIG_URL",
"-e",
"OIDC_CLIENT_ID",
"-e",
"OIDC_CLIENT_SECRET",
"-e",
"BASE_URL",
"-e",
"JWT_SIGNING_KEY",
"ghcr.io/ikarusmk/aicortex:v2.3.4"
],
"env": {
"STORAGE_ENCRYPTION_KEY": "your-value",
"OIDC_CONFIG_URL": "your-value",
"OIDC_CLIENT_ID": "your-value",
"OIDC_CLIENT_SECRET": "your-value",
"BASE_URL": "your-value",
"JWT_SIGNING_KEY": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add aicortex --env STORAGE_ENCRYPTION_KEY=your-value --env OIDC_CONFIG_URL=your-value --env OIDC_CLIENT_ID=your-value --env OIDC_CLIENT_SECRET=your-value --env BASE_URL=your-value --env JWT_SIGNING_KEY=your-value -- docker run -i --rm -e STORAGE_ENCRYPTION_KEY -e OIDC_CONFIG_URL -e OIDC_CLIENT_ID -e OIDC_CLIENT_SECRET -e BASE_URL -e JWT_SIGNING_KEY ghcr.io/ikarusmk/aicortex:v2.3.4Trag die leeren Werte ein, bevor du ihn startest.
Oder kopier die Einstellungen selbst
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"aicortex": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"STORAGE_ENCRYPTION_KEY",
"-e",
"OIDC_CONFIG_URL",
"-e",
"OIDC_CLIENT_ID",
"-e",
"OIDC_CLIENT_SECRET",
"-e",
"BASE_URL",
"-e",
"JWT_SIGNING_KEY",
"ghcr.io/ikarusmk/aicortex:v2.3.4"
],
"env": {
"STORAGE_ENCRYPTION_KEY": "your-value",
"OIDC_CONFIG_URL": "your-value",
"OIDC_CLIENT_ID": "your-value",
"OIDC_CLIENT_SECRET": "your-value",
"BASE_URL": "your-value",
"JWT_SIGNING_KEY": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Oder kopier die Einstellungen selbst
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"aicortex": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"STORAGE_ENCRYPTION_KEY",
"-e",
"OIDC_CONFIG_URL",
"-e",
"OIDC_CLIENT_ID",
"-e",
"OIDC_CLIENT_SECRET",
"-e",
"BASE_URL",
"-e",
"JWT_SIGNING_KEY",
"ghcr.io/ikarusmk/aicortex:v2.3.4"
],
"env": {
"STORAGE_ENCRYPTION_KEY": "your-value",
"OIDC_CONFIG_URL": "your-value",
"OIDC_CLIENT_ID": "your-value",
"OIDC_CLIENT_SECRET": "your-value",
"BASE_URL": "your-value",
"JWT_SIGNING_KEY": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Werte, die du selbst einträgst
- Fernet key that encrypts the vault and the sign-in store (openssl rand -base64 32 | tr '+/' '-_')
OIDC_CONFIG_URLenvDiscovery URL of your own identity provider (sign-in for cloud LLM apps)OIDC_CLIENT_IDenvClient ID registered at your identity provider- Client secret registered at your identity provider
BASE_URLenvPublic HTTPS URL of this server, e.g. https://agent.example.com- Signs the server's own tokens (openssl rand -hex 32)
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Was er kann
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Basischecksi
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 9. Nov. 2026
- ✓ Bestanden
Entwickler passt zum Repo
Der Registry-Name wurde mit dem GitHub-Konto IkarusMK bestätigt, dem das Repo gehört
- … Noch nicht geprüft
Wird noch gepflegt
Dieses Repo haben wir noch nicht von GitHub gelesen
- … Noch nicht geprüft
Hat eine Lizenz
Dieses Repo haben wir noch nicht von GitHub gelesen
- – Nicht zutreffend
Endpunkt antwortet
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
- – Nicht zutreffend
Anmeldung mit OAuth
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
- … Noch nicht geprüft
Keine versteckten Anweisungen in Tool-Beschreibungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Im Vergleich mit anderen in Suche & KI-Gedächtnisi
- Mehr Sterne als 0 % der anderen 5736 Server in dieser Kategorie
- Neuer in der Registry veröffentlicht als 91 % der anderen 5736 Server in dieser Kategorie
- Basischecks gleich gut wie oder besser als bei 100 % der anderen 5736 Server in dieser Kategorie
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Häufige Fragen
Ist AICortex sicher?
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Welche Schlüssel oder Codes braucht er?
Das musst du eintragen: STORAGE_ENCRYPTION_KEY, OIDC_CLIENT_SECRET, JWT_SIGNING_KEY
Läuft er auf meinem Computer oder in der Cloud?
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Wird er noch gepflegt?
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (2.3.4) kam vor 3 Tagen in die Registry.
Welche Apps können ihn nutzen?
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Docker auf deinem Computer.
Was kann ich stattdessen nutzen?
In derselben Kategorie: Context7, Codebase Memory, Exa
Alternativen
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
README vom Entwickler
README öffnen
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
A private, self-hosted brain for your LLM — on your own NAS.
In 30 seconds: AICortex is one container on your own hardware that every AI you use connects to.
- It remembers who you are, how you work and what you're building — and hands that to Claude, ChatGPT or a local model at the start of every chat, on desktop and phone.
- It reaches your stuff — services, devices, mail, calendars, files — with the secrets in an encrypted vault the model never sees.
- It keeps your schedule: tell your AI *"tomorrow at 8: summarise yesterday's notes"*. AICortex stores the job and at 8 wakes your Claude (or asks ChatGPT, an API key or a local Ollama) to do it.
Try it in 5 minutes · Run it on your NAS · More screenshots · Connect your AI
AICortex is a self-hosted MCP server that turns your NAS into a personal LLM connector: a persistent "brain" your assistant loads at the start of every session. Any MCP-capable LLM — Claude, ChatGPT, or a fully local model — gains a durable identity and real reach into your own services and devices, while running inside your network. Non-MCP tools (n8n, LangChain, your own scripts) reach the *same* brain through a native REST API with scoped per-user keys — and humans get a built-in admin WebUI at /ui for the vault, skills, users and audit log.
The model stays in its provider's cloud (or runs locally). Your memory, skills and secrets stay on your NAS. The assistant talks to AICortex over an HTTPS connector; the server uses your local credentials internally and never hands them to the model. New capabilities are added as data — a skill, a service config, a secret — with no redeploy.
Highlights
🧠 A brain that travels with you
- One short
cortex_startcall — who you are, how you work, and the current project's notes, open tasks and last session (a few hundred characters;cortex_cataloghas the full list) - Self-learning, typed memory with a review queue, so it grows without polluting itself
- A skill router — search your skills, load only what's needed, author new ones at runtime
- Playbooks — multi-stage work where a person approves each stage's artifact (e.g. Anthropic's AI-native SDLC:
intent.md→spec.md→plan.md…), bundled as a template — see docs/playbooks.md - The *same* brain across models, desktop and mobile — one account, one state
🔌 Real reach — every integration is just data
- Email (SMTP send + IMAP read), calendars (CalDAV), HTTP services, MQTT & FTP/FTPS devices, WebDAV cloud, SSH/SFTP
- IPP printing & eSCL scanning (straight into Paperless-ngx) on LAN multifunction devices
- Event-driven: inbound webhooks (
POST /hooks/, secret/HMAC-verified) turn external events into inbox items; outbound webhooks notify - An MCP gateway to use other MCP servers' tools — register any integration with one call, no code, no redeploy
🌐 Beyond MCP — drive it over plain HTTP
- A native REST API: every tool as
POST /api/v1/tools/with an auto-generated OpenAPI 3.1 spec — plug AICortex into n8n, LangChain, an OpenAI-compatible client or a shell script, no MCP client required - Per-user API keys: scoped (default-deny), hashed at rest, rate-limited, optional expiry — and a key runs the *same* per-user areas as an OIDC session, never admin by default
🖥 Built-in admin WebUI — no terminal needed
- Every signed-in person manages their own notes, scheduled jobs and playbook runs (and approves playbook stages) at `/ui`; admins also get the vault (secret *names* only — values are write-only), skills, users & roles, services & devices editing and the audit log — language-switchable DE/EN
- Same SSO as the connector (OIDC + PKCE against *your* IdP, e.g. Pocket ID), CSRF-guarded, fully self-contained (strict CSP, no CDNs, no build step) — served by the same container, no extra service
- Every page takes the *same policy path* as the MCP tools, so the browser never gets more than the person's AI
- See it in screenshots
👥 Team, autonomy & continuity
- A presence-aware multi-agent board: live presence, capability-routed task *pull*, context-preserving handoff
- Cross-LLM session handoff — resume exactly where another model or device left off
- Cron-as-data scheduling with per-user act-as: a scheduled job runs confined to *its owner's* area, via a short-lived per-job token — never a standing god-token
- Runners carry the jobs out — AICortex wakes your Claude (a Claude Code cloud task on your plan) with the due job, or asks your ChatGPT plan, an API key or a local Ollama; each person sets up their own in the WebUI and gives each job its runner, no extra container (how)
🔒 Secure & multi-tenant
- Your own OIDC login and roles (admin / user / viewer) — one switch,
AUTH_ENFORCE - **Per-user isolation *and* capability areas: private memory + vault per person, plus default-deny** service/skill allow-lists an admin assigns — so not everyone may use every tool
- An encrypted secret vault, an SSRF egress guard, and capability checks that fail closed — end-to-end on your hardware, including a local model (Ollama)
How it works
LLM app — any MCP client (desktop / mobile) · one or many agents
│ custom connector / MCP server (HTTPS, from the model's cloud) ▼ Reverse proxy (Zoraxy / Caddy / nginx / Traefik …) │ ▼ AICortex (this container, on your NAS) │ uses local files & secrets ▼ Memory · Skills · HTTP services · MQTT & FTP devices · WebDAV cloud · Workspace files · SSH/SFTP · SMTP + IMAP email · IPP printing · eSCL scanning · MCP gateway · Inbox/Tasks · Sessions · Cron · Secret vault (every outbound call passes the SSRF egress guard)
How AICortex differs
The "LLM brain" space has some great projects — AICortex deliberately sits in a different spot:
- [GBrain](https://github.com/garrytan/gbrain) is a *memory engine* — markdown-first, Postgres/PGLite-backed, with a self-wiring knowledge graph and hybrid/vector search. Deep retrieval, one concern.
- [CortexPrism](https://cortexprism.io/) is a full *agent operating system* — its own runtime, ~30 LLM providers, a plugin marketplace, sandboxed code execution and multi-user teams. Batteries included, heavyweight.
- AICortex is a single, lightweight *MCP connector*: one container that gives any client a persistent brain — memory and skills, devices, sessions, secrets and scheduling — where new integrations are added as data, no redeploy. And unlike most brain projects it isn't MCP-only: the same tools are exposed over a native REST API with an auto-generated OpenAPI spec, so non-MCP clients (n8n, LangChain, a script) plug in too. No database, no graph, no marketplace; you bring your own client.
Rule of thumb: want a dedicated memory/graph engine → GBrain; want a batteries-included agent OS → CortexPrism; want a minimal self-hosted connector that plugs your existing LLM app into your own stuff → AICortex.
Try it in 5 minutes
Just want to look around? Run it on your own computer — no NAS, domain or login needed, only Docker:
echo "STORAGE_ENCRYPTION_KEY=$(openssl rand -base64 32 | tr '+/' '-_')" > aicortex.env
docker run -d --name aicortex -p 127.0.0.1:8787:8787 --env-file aicortex.env \ -e ALLOW_INSECURE=1 -v aicortex-data:/data ghcr.io/ikarusmk/aicortex:latest
- Open http://localhost:8787/ui — the WebUI, already signed in as admin.
- Connect an AI that runs on the same computer. Claude Code:
claude mcp add --transport http aicortex http://localhost:8787/mcp, then ask it to callcortex_start. Other local clients: docs/clients.md. The Claude and ChatGPT apps connect from their provider's cloud, so they need the real setup. - Tell it something about you, or *"tomorrow at 8: summarise yesterday's notes"* — it shows up under Notes and Scheduled jobs. A job runs once you add a runner with an API key (OpenRouter's free models work); waking Claude needs your own login, so that, too, is the real setup.
⚠️ No login in this mode.
ALLOW_INSECURE=1switches authentication off: whoever
reaches the port is admin. Keep the port on
127.0.0.1as above, keep real secrets
out, and never run it like this on a server. For everyday use, follow the
Quick start with your own login.
Done looking? docker rm -f aicortex && docker volume rm aicortex-data && rm aicortex.env removes it with all its data.
Requirements
- A NAS or server running Docker (Compose v2).
- A reverse proxy serving the container over public HTTPS (cloud-hosted LLM clients connect from their provider's cloud, so the endpoint must be reachable from the internet; a purely local client can reach it on the LAN).
- A domain/subdomain pointing at your proxy.
- An MCP-capable client that supports custom connectors / MCP servers (Claude, ChatGPT, or any MCP client).
Quick start
🤖 Installing with an AI coding agent? Point it at
[INSTALL_FOR_AGENTS.md](INSTALL_FOR_AGENTS.md) — it walks the agent through the
whole install and verification, handing the human-only steps (DNS, proxy, OIDC) back
to you.
git clone git@github.com:IkarusMK/AICortex.git
cd AICortex cp .env.example .env # adjust PUID / PGID / HOST_PORT / TZ docker compose up -d --build
The MCP endpoint is served at http:// :8787/mcp.
Prebuilt image (no local build): a multi-arch image is published to GHCR by CI.
In
docker-compose.yml, comment outbuild: ., uncomment
image: ghcr.io/ikarusmk/aicortex:latest, thendocker compose pull && docker compose up -d.
Updating from 1.x: pull the new image and restart with the same
data/folder and
.env— there is no migration step. Connected apps stay signed in; memory, skills,
vault, services, tasks, sessions and API keys carry over. What changes is listed in
CHANGELOG.md.
Expose it & add the connector:
- Point a subdomain (e.g.
agent.example.com) at your reverse proxy. - Proxy that host to
http:// :8787over HTTPS — the upstream is plain HTTP, so do *not* enable "TLS to upstream". If your proxy geo
Nur der Anfang wird gezeigt; den Rest findest du im Repo