Kortexio Memory について
Kortexio MemoryはAIエージェント向けのメモリーゲートウェイです。MCPツールによるコンテキストの保存・検索と、セッションメモリーを注入するOpenAI互換APIを提供します。編集可能なMarkdownやファイル、Postgresに記録でき、セルフホストにも対応します。
主な機能
- 01MCPによるメモリー保存と検索
- 02セッションWikiと履歴の注入
- 03編集可能なMarkdownメモリー
- 04グローバルWiki検索
- 05スキル、ガードレール、人手確認
活用シーン
- 01CursorやClaudeのチャット間で記憶を保持
- 02チャット要求に新しいメッセージだけを送信
- 03共有チーム文書やナレッジを検索
MCP 対応
CursorやClaudeなどのクライアント向けに、memory_save、memory_search、memory_getツールを公開します。内蔵カタログから他のMCPサーバーへの接続も可能です。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.kortexio.io/{appId}/mcpclaude mcp add --transport http io-kortexio-memory https://mcp.kortexio.io/{appId}/mcp{"mcpServers":{"io-kortexio-memory":{"type":"http","url":"https://mcp.kortexio.io/{appId}/mcp"}}}Cursor で開く{"servers":{"io-kortexio-memory":{"type":"http","url":"https://mcp.kortexio.io/{appId}/mcp"}}}VS Code で開く{"mcpServers":{"io-kortexio-memory":{"type":"http","url":"https://mcp.kortexio.io/{appId}/mcp"}}}{"mcpServers":{"io-kortexio-memory":{"serverUrl":"https://mcp.kortexio.io/{appId}/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
試してみる(3つのコマンド) · エンジン · ドキュメント · Mem0 / Zep / Letta との比較
llama.cpp / vLLM サーバー向けのセルフホスト可能なメモリーゲートウェイです。
エンジンの前段に、OpenAI 互換の /v1 URL を1つ置きます。クライアントが送信するのは新しいメッセージだけです。
ゲートウェイはセッションメモリーを開いて、編集し、差分を確認できる Markdownとして保持します。ベクトルデータベースも、クライアントの書き換えも不要です。
3つのコマンドで試す
git clone https://github.com/Kortexio/ContextMemory.git && cd ContextMemory
docker compose -f docker-compose.yml -f docker-compose.llamacpp.yml up --build -d # CPU; GPU: docker-compose.vllm.yml
./scripts/aha-chat.sh # Windows: .\scripts\aha-chat.ps1
aha-chat は同じセッションで2つのリクエストを送信します。2つ目のリクエストに含まれるのは、新しい質問だけです。
==> Turn 1: "Remember this for later: our staging database host is postgres-staging-01."
==> Turn 2: "What is our staging database host?" (no history in the request body)
AHA OK — the client sent no history; the gateway remembered 'postgres-staging-01'.
同じチェックを、プッシュのたびに CI で実際の llama-server に対して実行します(e2e-llamacpp)。初回起動時に約2 GBの GGUF がダウンロードされます。別のモデルを選ぶには LLAMACPP_HF_MODEL を指定してください(エンジン)。管理 UI:http://localhost:5200。
ContextMemory とは?
ContextMemory は、Kortexioを支えるオープンソースのエージェント型メモリーゲートウェイです。
アプリ(または Cursor/Claude)は通常のチャット API と引き続き通信します。ゲートウェイは次の処理を行います。
- テナントを認証し、セッション Wiki と履歴を付加します
- ツールが有効な場合、エージェント型ツールループ(Wiki 検索、サンドボックス、MCP など)を実行します
- 破壊的な操作の前にスキル、ガードレール、バリデーターを適用し、必要に応じてHITLを行います
- 標準的な OpenAI 形式の
chat.completionsレスポンスを返します(ストリーミングにも対応)
Your client (OpenAI SDK / Cursor MCP / curl)
│
▼ POST /v1/chat/completions
┌────────────────────────────────────────────┐
│ ContextMemory (.NET 9) │
│ Auth · session wiki · Global Wiki tool │
│ Agentic loop · skills · guardrails · HITL │
│ LLM backend (per app — BYO engine) │
└───────┬──────────────────┬─────────────────┘
▼ ▼
sandbox-runtime mcp-runtime / MCP servers
(shell/python/node) (HTTP + stdio, OAuth)
or Azure ACA sessions
対応範囲について:これはゲートウェイ+サーバーサイドのハーネスであり、クライアントエージェントのフレームワーク(LangGraph/CrewAI)でも、エージェント OS(Letta)でもありません。OpenAI クライアントはそのまま使い、ループはサーバー上で実行します。
LLM エンジン:ContextMemory は、特定の推論スタックを同梱したり、それに固定したりしません</strong。テナントごとに、Ollama、vLLM、LM Studio、ExLlamaSharp、OpenAI、Azure 互換、LiteLLM、カスタムなど、任意の OpenAI 互換 /v1 ホストを選べます。Compose には llama.cpp と vLLM のオーバーライドが含まれています。Admin → Config → LLM で、アプリごとにエンジンを切り替えられます。
比較(Mem0 / Zep / Letta / RAG ではない理由):docs/compare.md。
開発者に提供するもの
| 必要なもの… | ContextMemory が提供するもの… |
|---|---|
| クライアントを書き換えずに、ターンをまたいで保持されるメモリ | セッション用 Markdown Wiki +履歴の注入。新しいメッセージだけを送信 |
| 開いて編集・監査できるメモリ | ディスク上のファイル/Postgres — 不透明な埋め込み表現ではありません |
| チャットで共有する社内ナレッジ/ドキュメント | Global Wiki の要約 +オンデマンドの wiki_search / wiki_grep(従来型 RAG /埋め込み表現ではありません) |
| 2つ目のオーケストレーターなしで使えるツール | 同じ /v1:サンドボックス + MCP + Wiki ツール |
| より安全なエージェント | スキルとガードレールパック、バリデーター、HITL [CONFIRM:id] |
| Cursor / Claude の永続メモリをすばやく使う方法 | MCP ウェッジ:memory_save / memory_search / memory_get |
| テナントごとに任意の LLM | BYO /v1 — Ollama、vLLM、LM Studio、ExLlamaSharp、OpenAI、Azure 互換、カスタム |
| テスト用クライアントなしでの運用 | Admin + Playground |
| 完全な制御/運用作業ゼロ | Docker によるセルフホスト · Kortexio Cloud(cmk_live_…) |
機能(概要)
詳細:docs/architecture-and-features.md · Admin:docs/admin-ui.md · HITL:docs/hitl.md。
| 領域 | 主な機能 |
|---|---|
| メモリ | セッション Wiki +ローリングサマリー、履歴の予算管理、Global Wiki の要約/FTS/リビジョン(asOf)、ベクトル RAG なし |
| エージェント機能 | サーバーサイドのツールループ、サンドボックス、MCP カタログ、アーティファクト、サブエージェント、バリデーター、HITL、送信トラフィックポリシー |
| スキル | プラットフォームおよびアプリごとのスキル/ガードレール(skill / always_on / requestable) |
| MCP | アウトバウンドウェッジ(Cursor → CM) · インバウンドカタログ(CM → お使いの MCP サーバー) |
| 運用 | Admin UI · ファイルまたは Postgres · Prometheus /metrics · Compose(API + Admin + mcp-runtime + sandbox) |
その他の実行方法
ゲートウェイはエンジンと OpenAI 互換の /v1 で通信します(num_ctx が必要な場合は Ollama ネイティブの /api/chat も使用できます)。エンジンはいつでも Admin → Config → LLM または PATCH /admin/apps/{id}/config で変更できます。
エンジンがすでに起動している場合(llama-server、vLLM、LM Studio、…)— API イメージのみ
docker run --rm -p 5100:8080 \
-v contextmemory-data:/app/data \
-e ContextMemory__MasterKey=cm_master_dev_key_change_me \
-e ContextMemory__Apps__demo-dev__ApiKey=cm_live_dev_key_change_me \
-e ContextMemory__Apps__demo-dev__LlmBackend=openai-compatible \
-e ContextMemory__Apps__demo-dev__LlmModel=local-model \
-e ContextMemory__Apps__demo-dev__LlmEndpoint=http://host.docker.internal:8080 \
--add-host=host.docker.internal:host-gateway \
ghcr.io/kortexio/contextmemory:latest
すべてのアプリに適用されるホストレベルのデフォルト値:ContextMemory__LlmEndpoint。ホスト上の Ollama も使用できます(ContextMemory__LlmEndpoint=http://host.docker.internal:11434)。重要なエンジンフラグ(llama.cpp の --jinja、vLLM のツールパーサー):エンジン。フルスタック(API + Admin + MCP + sandbox):docs/self-host.md。
Cursor / Claude のメモリ(MCP)
git clone https://github.com/Kortexio/ContextMemory.git
cd ContextMemory/mcp-server && npm install && node print-mcp-config.mjs
Cursor → Settings → MCP(または ~/.cursor/mcp.json)に貼り付けます。同じ設定は Claude Desktop でも使えます。詳細:mcp-server/README.md。
次に、別々のチャットで以下を試します。
| チャット | 入力内容 | エージェントの動作 |
|---|---|---|
| A | Remember: staging DB is postgres-staging-01 | memory_save |
| B(新規) | What is our staging DB? | memory_search +回答 |
Cursor を使わずに同じ手順を試す場合(Wiki API、LLM なし):./scripts/aha-demo.sh または .\scripts\aha-demo.ps1。
GPU も運用作業も不要:Kortexio Cloud
| Kortexio Cloud | セルフホスト(このリポジトリ) | |
|---|---|---|
| 最適な用途 | 運用作業ゼロ | 完全な制御(API + Admin + MCP + sandbox) |
| キー | cmk_live_…(X-App-Id は不要) | cm_live_… + X-App-Id |
| チャット本文 | OpenAI /v1 と同一 | OpenAI /v1 と同一 |
| LLM | ダッシュボードで BYO プロバイダー | Admin /環境変数で BYO エンジン |
チャットにそのまま組み込み
curl -X POST http://localhost:5100/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-App-Id: demo-dev" -H "X-User-Id: user-42" -H "X-Session-Id: sess-abc" \
-H "Authorization: Bearer cm_live_dev_key_change_me" \
-d '{"model":"local-model","messages":[{"role":"user","content":"Hello"}]}'
ヘッダー用の軽量ヘルパー(完全な SDK ではありません):@kortexio/contextmemory · kortexio-contextmemory
ドキュメントとサポート
| ドキュメント | トピック |
|---|---|
| docs/compare.md | 存在する理由 · Mem0 / Zep / Letta との比較 · RAG ではない理由 |
| docs/architecture-and-features.md | Wiki、時間的事実、エージェント型、スキル、LLM バックエンド |
| docs/admin-ui.md | 管理 UI の概要 |
| docs/hitl.md | ヒューマン・イン・ザ・ループ |
| docs/api.md | HTTP API |
| docs/cloud.md · docs/self-host.md | クラウド · Docker / Compose |
| docs/ops.md | 運用とトラブルシューティング |
| docs/README.md | ドキュメントの全インデックス |
ウェブサイト:kortexio.io · メール:[email protected]
ライセンス
このオープンソースのコアは AGPL-3.0 で提供されており、商用利用も含めて自由にセルフホストできます。AGPL の義務なしでクローズドソース製品に組み込みたい場合は、Kortexio Cloud または商用ライセンスをご利用ください。docs/license-and-support.mdをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。