Save your context, your way — AI platform, manage it locally, and export.
387
Portable AI context — import, manage, and export your conversation history across every AI platform.
open-context lets you migrate your full chat history from ChatGPT or Gemini into Claude-compatible formats, and gives Claude persistent memory through a built-in MCP server. This single Docker image bundles the React web UI, REST API server, and MCP server together.
When you switch AI assistants, you lose everything — your communication style, your background, your conversation history. open-context solves that by:
Everything runs locally. Your data never leaves your machine.
docker run -p 3000:3000 \
-v open-context-data:/root/.opencontext \
adityakarnam/open-context:latest
Open http://localhost:3000.
docker run -p 3000:3000 \
-v open-context-data:/root/.opencontext \
adityakarnam/open-context:0.0.1
Override the default command to run the MCP server instead:
docker run -i --rm \
-v open-context-data:/root/.opencontext \
adityakarnam/open-context:latest \
node dist/mcp/index.js
Add to ~/.claude/settings.json:
{
"mcpServers": {
"open-context": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "open-context-data:/root/.opencontext",
"adityakarnam/open-context:latest",
"node", "dist/mcp/index.js"
]
}
}
}
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"open-context": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "open-context-data:/root/.opencontext",
"adityakarnam/open-context:latest",
"node", "dist/mcp/index.js"
]
}
}
}
services:
open-context:
image: adityakarnam/open-context:latest
ports:
- "3000:3000"
volumes:
- open-context-data:/root/.opencontext
volumes:
open-context-data:
All data is stored in the mounted volume at /root/.opencontext — no browser localStorage is used.
| File | Description |
|---|---|
preferences.json | Your structured preferences (used by the UI form) |
preferences.md | Claude preferences doc — paste into Claude Settings → Preferences |
memory.md | Claude memory doc — paste into Claude → Manage Memory |
contexts.json | MCP context entries saved by Claude |
| Variable | Default | Description |
|---|---|---|
PORT | 3000 | HTTP server port |
OLLAMA_HOST | http://host.docker.internal:11434 | Ollama endpoint for AI analysis |
OLLAMA_MODEL | gpt-oss:20b | Model used for preference analysis |
OPENCONTEXT_STORE_PATH | /root/.opencontext/contexts.json | MCP context store path |
host.docker.internal resolves to the host machine from inside the container. On Linux, add --add-host=host.docker.internal:host-gateway.
Once connected, Claude gains these persistent memory tools:
| Tool | What it does |
|---|---|
save_context | Save a note or memory with optional tags |
recall_context | Full-text search across saved contexts |
list_contexts | List all contexts, optionally filtered by tag |
search_contexts | Multi-keyword AND search |
update_context | Update content or tags of a saved context |
delete_context | Remove a context by ID |
create_bubble | Create a project workspace (bubble) |
list_bubbles | List all bubbles |
get_bubble | Get a bubble and its contexts |
update_bubble | Rename or update a bubble |
delete_bubble | Delete a bubble and optionally its contexts |
| Tag | Description |
|---|---|
0.0.1, latest | Current stable release — UI + API + MCP on node:25-slim |
Content type
Image
Digest
sha256:f4155c02b…
Size
82.6 MB
Last updated
7 months ago
docker pull adityakarnam/open-context