Korely Memory MCP server
ai.korely · Updated
Memory for AI agents that knows what is still true. Typed bi-temporal facts, EU-hosted.
At a glance
Korely Memory is an MCP server in the AI & Memory category. It is hosted remotely and connects over HTTP, and needs Authorization. It scores B (71/100) on the MCP Skills Hub health score as of Oct 28, 2026.
One-click install
Opens your editor and pre-fills the config. Your editor will ask before adding it.
How to install Korely Memory in your AI client
Setup for Claude Code, Claude Desktop, Cursor, Codex, Windsurf, Cline and VS Code — copy-paste ready.
How to install Korely Memory in Claude CodeAnthropic's agentic CLI
Add the server
bashclaude mcp add --transport http memory https://api.korely.ai/agent/mcp --header 'Authorization: Bearer <YOUR_TOKEN>'Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
Verify it's connected
bashclaude mcp listSharing it with your team?
Add `--scope project` to write it to .mcp.json in the repository root, which you can commit (with the secrets left as environment variables).
Use it in a session
Ask Claude to use the tools this server exposes. It discovers them automatically.
How to install Korely Memory in Claude DesktopDesktop app (MCP config)
Open your MCP config
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json
Add this server
json{ "mcpServers": { "memory": { "command": "npx", "args": [ "-y", "mcp-remote", "https://api.korely.ai/agent/mcp", "--header", "Authorization:${AUTH_HEADER}" ], "env": { "AUTH_HEADER": "Bearer <YOUR_TOKEN>" } } } }Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
Why the wrapper?
This is a remote (HTTP) server and Claude Desktop only launches local processes, so mcp-remote proxies the connection. It will open a browser window if the server needs OAuth.
Restart Claude Desktop
The tools appear under the 🔌 menu once the app reloads.
How to install Korely Memory in CursorAI-first code editor
Create / edit .cursor/mcp.json in your project
json{ "mcpServers": { "memory": { "url": "https://api.korely.ai/agent/mcp", "headers": { "Authorization": "Bearer <YOUR_TOKEN>" } } } }Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
Enable it
Cursor Settings → MCP → toggle the server on. Tools become available to the Composer/Agent.
How to install Korely Memory in Codex CLIOpenAI coding agent
Add to ~/.codex/config.toml
toml[mcp_servers.memory] command = "npx" args = ["-y", "mcp-remote", "https://api.korely.ai/agent/mcp", "--header", "Authorization:${AUTH_HEADER}"] env = { AUTH_HEADER = "Bearer <YOUR_TOKEN>" }Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
Why the wrapper?
Codex runs MCP servers as local processes, so mcp-remote bridges this HTTP endpoint to stdio.
Run Codex
Codex loads MCP servers from config.toml on startup and exposes their tools to the agent.
How to install Korely Memory in WindsurfCodeium's agentic IDE
Edit ~/.codeium/windsurf/mcp_config.json
json{ "mcpServers": { "memory": { "serverUrl": "https://api.korely.ai/agent/mcp", "headers": { "Authorization": "Bearer <YOUR_TOKEN>" } } } }Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
Reload
Windsurf → Cascade → refresh MCP servers. Cascade can now call the tools.
How to install Korely Memory in ClineVS Code autonomous agent
Open Cline → MCP Servers → Configure
Adds to cline_mcp_settings.json.
Add the server
json{ "mcpServers": { "memory": { "type": "streamableHttp", "url": "https://api.korely.ai/agent/mcp", "headers": { "Authorization": "Bearer <YOUR_TOKEN>" } } } }Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
How to install Korely Memory in VS CodeCopilot / MCP support
Create .vscode/mcp.json
json{ "servers": { "memory": { "type": "http", "url": "https://api.korely.ai/agent/mcp", "headers": { "Authorization": "Bearer <YOUR_TOKEN>" } } } }Fill in your credentials
Replace Bearer <YOUR_TOKEN> with your real value. Keep secrets out of any config file you commit.
Start it
VS Code shows a ▶ Start action above the server entry. Agent mode (Copilot Chat) can then use the tools.
What does Korely Memory need from you?
Bearer token — Bearer kor_live_... Free key: korely init --agent
AuthorizationrequiredsecretHTTP headerBearer kor_live_... Free key: korely init --agent
What tools does Korely Memory expose?
This server requires credentials before it will list its tools, so we cannot enumerate them here. Connect it in your client to see what it offers.
What the code can do
This is a remote server — nothing is installed or run on your machine, so there is no local code to analyze. What it can reach is described above: your requests go to the provider's host.
Before you install
Signals gathered from the source repo and package registry — not a safety verdict.
What it can reach
- Third-party hosted service — Your requests and any data in them are sent to api.korely.ai.
- No local execution — Nothing is installed or run on your machine.
- Last commit 9 days ago — Actively maintained.
- Repository created 1 month ago — Very new project with little track record yet.
- 0 GitHub stars — Very little community usage so far.
Client compatibility
Health score
B · 71Maintenance, adoption, transparency and packaging — not a safety audit. How this is calculated
- Maintenance30%100%
Last commit 9 days ago.
- Adoption20%0%
0 stars.
- Transparency20%75%
3/4: ✓ public source repo, ✓ declared license, ✓ documentation, ✗ discoverable tool list.
- Provenance15%75%
Links to its own repository; package linkage unverified.
- Packaging15%100%
Remote endpoint with documented authentication.
Documentation
Full READMEKorely Memory
Memory for AI agents that knows what is still true.
Korely stores what your agent learns as typed facts with a validity window. When something changes, the old fact is superseded instead of overwritten. Your agent reads the current truth, and you can still ask what was true on any past date.
import time
from korely_memory import Korely
korely = Korely() # reads KORELY_API_KEY from the environment
korely.add("Maria is on the Pro plan, billed yearly.", user_id="maria")
korely.add("Maria downgraded to Free.", user_id="maria")
time.sleep(10) # facts are extracted server-side; see "Writes settle asynchronously"
ctx = korely.get_context(query="what plan is Maria on?", user_id="maria")
print(ctx.context)
# ## Known facts
# - Maria downgraded_to Free (since 2026-09-08)
# - Maria billing_frequency yearly (since 2026-09-08)
#
# Pro is gone from the current facts. It was superseded, not deleted.The exact predicate is chosen by the extractor, so downgraded_to here might be subscribes_to or plan on your run. What is guaranteed is the behaviour: the old value leaves the current set, and stays retrievable with its invalid_at.
Nothing was deleted. The Pro fact is still there, carrying invalid_at and a pointer to what replaced it:
korely.get_facts(user_id="maria", include_invalidated=True)
# Maria downgraded_to Free valid_from=... invalid_at=None
# Maria plan Pro valid_from=... invalid_at=2026-09-08T08:31:09ZTime travel over real dates
Pass timestamp when the event happened in the past, and facts inherit it as valid_from. Then as_of answers over the world's timeline, not your ingestion order:
korely.add("Franco signed up on the Pro plan.", user_id="franco", timestamp="2026-01-15")
korely.add("Franco downgraded to Free.", user_id="franco", timestamp="2026-06-20")
korely.get_facts(user_id="franco", as_of="2026-03-01") # subscribes_to -> Pro plan
korely.get_facts(user_id="franco", as_of="2026-08-01") # subscribes_to -> Free
korely.get_facts(user_id="franco") # subscribes_to -> FreeWithout timestamp every fact starts being true the moment you write it, so as_of on an earlier date returns nothing. That is correct, and usually not what you want when you are importing history.
as_of answers what was true on a date, as the store knows it today. known_as_of (Korely Agent 0.1.26) answers the other question: what the store knew on that date. They differ when a change is told late. An agent learns on 5 October that a customer moved on 1 September:
korely.get_facts(user_id="maria", as_of="2026-09-20") # lives_in -> Turin
korely.get_facts(user_id="maria", known_as_of="2026-09-20") # lives_in -> MilanOn 20 September the move had happened, and the store did not know it yet. known_as_of is on get_facts, get_profile and get_context, which rebuilds the block as the store could have built it then: what an agent could have known when it decided. Each fact carries closed_known_at, when the store learned it had ended.
Excerpt — the full document is on GitHub.
Alternatives to Korely Memory
- Cairn.ink MemoryA · 80Cross-session memory for AI agents with a Source Receipt for every memory, over MCP.
- hmem — Humanlike Memory for AI AgentsA · 85Persistent 5-level hierarchical memory for AI agents. SQLite-backed, lazy-loaded.
- Cathedral — Persistent Memory for AI AgentsB · 73Persistent memory and drift detection for AI agents across session restarts.
- mwe-mcp — Memory Wiki EngineB · 76Self-hosted multi-user memory for AI agents: a human-readable Markdown wiki with per-fragment ACL.
Maintain Korely Memory? Add a badge to your README
Shows its health grade, and links readers to install steps for every client.
[](https://mcp-skills-hub.vercel.app/mcps/ai-korely-memory)Catalog data refreshed . Something wrong? Report it.