Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Self-hosted brain for any LLM: memory, skills, encrypted vault, devices and scheduled jobs.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
STORAGE_ENCRYPTION_KEY, OIDC_CONFIG_URL, OIDC_CLIENT_ID, OIDC_CLIENT_SECRET, BASE_URL, JWT_SIGNING_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"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"
}
}
}
}Run this in your terminal
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.4Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"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"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"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"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
OIDC_CONFIG_URL envOIDC_CLIENT_ID envBASE_URL envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account IkarusMK, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: STORAGE_ENCRYPTION_KEY, OIDC_CLIENT_SECRET, JWT_SIGNING_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.3.4) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Docker on your computer.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
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.
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.
🧠 A brain that travels with you
cortex_start call — who you are, how you work, and the current project's notes, open tasks and last session (a few hundred characters; cortex_catalog has the full list)intent.md → spec.md → plan.md …), bundled as a template — see docs/playbooks.md🔌 Real reach — every integration is just data
POST /hooks/ , secret/HMAC-verified) turn external events into inbox items; outbound webhooks notify🌐 Beyond MCP — drive it over plain HTTP
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🖥 Built-in admin WebUI — no terminal needed
👥 Team, autonomy & continuity
🔒 Secure & multi-tenant
AUTH_ENFORCELLM 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)
The "LLM brain" space has some great projects — AICortex deliberately sits in a different spot:
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.
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
claude mcp add --transport http aicortex http://localhost:8787/mcp, then ask it to call cortex_start. Other local clients: docs/clients.md. The Claude and ChatGPT apps connect from their provider's cloud, so they need 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.
🤖 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:
agent.example.com) at your reverse proxy.http:// :8787 over HTTPS — the upstream is plain HTTP, so do *not* enable "TLS to upstream". If your proxy geoOnly the beginning is shown; read the rest in the repo