A Model Context Protocol (MCP) server that provides persistent memory and conversation continuity for Claude Desktop and Claude Code. Never lose your project context again when threads hit token limits.
- 🔄 Automatic State Persistence - Saves project context and conversation state
- ⚡ Seamless Restoration - Instantly restore full context when starting new threads
- 🔒 Privacy First - All data stored locally in
~/.claude_states - 📊 Multi-Project Support - Manage multiple concurrent projects
- 🗂️ Smart Organization - Automatic backup rotation and state management
- 🎯 Zero Configuration - Works immediately after setup
# Clone to your home directory
cd ~
git clone https://github.com/yourusername/claude-continuity.git
# Or download and extract the filescd ~/claude-continuity
pip3 install mcpEdit your Claude Desktop configuration:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Add this configuration:
{
"mcpServers": {
"claude-continuity": {
"command": "/opt/homebrew/bin/python3.11",
"args": ["/Users/yourusername/claude-continuity/server.py"],
"env": {}
}
}
}Run this command to add globally:
claude mcp add --scope user claude-continuity python3 ~/claude-continuity/server.py| Tool | Description |
|---|---|
save_project_state |
Save current project context and state |
load_project_state |
Restore saved project context |
list_active_projects |
View all tracked projects |
get_project_summary |
Get quick overview without loading full state |
delete_project_state |
Remove project (with safety confirmation) |
update_project_context |
Update just context/metadata |
Save Project State:
save_project_state:
project_name="my-web-app"
state={current work and context}
summary="Setting up authentication system"
context={files_modified, issues, next_steps}
Load Project State:
load_project_state: project_name="my-web-app"
List All Projects:
list_active_projects
All project states are stored locally at:
~/.claude_states/
├── project-name-1/
│ ├── state.json
│ ├── summary.txt
│ └── state.backup.*.json
└── project-name-2/
├── state.json
├── summary.txt
└── state.backup.*.json
Each saved state includes:
{
"project_name": "my-project",
"state": {
// Your custom state object
},
"summary": "Human-readable summary",
"context": {
"files_modified": [],
"issues": [],
"next_steps": [],
"dependencies": []
},
"updated_at": "2025-08-05T22:48:00Z",
"version": 1
}- Check Python installation:
python3 --version
# Should be 3.8 or higher- Test server directly:
python3 ~/claude-continuity/server.py
# Should show: "Claude Continuity Server initialized..."- Check Claude Desktop logs for errors
chmod +x ~/claude-continuity/server.pyUpdate config to use full Python path:
{
"command": "/usr/bin/python3",
"args": ["/Users/yourusername/claude-continuity/server.py"]
}- Python 3.8+
- MCP SDK (
pip install mcp) - Claude Desktop or Claude Code
claude-continuity/
├── server.py # Main MCP server
├── requirements.txt # Python dependencies
├── README.md # This file
├── LICENSE # MIT License
└── .gitignore # Git ignore file
- Automatic Detection: Server monitors conversation for project-related activities
- Smart Saving: Automatically creates backups before overwriting states
- Context Preservation: Maintains files, decisions, issues, and next steps
- Seamless Recovery: Load entire project context with one command
Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Test your changes
- Submit a pull request
MIT License - see LICENSE file for details
Created for the Claude community to solve the context loss problem once and for all.
For issues or questions:
- Open an issue on GitHub
- Check existing issues for solutions
Before: 😫 Hit token limit → Lose all context → Re-explain everything
After: 😎 Hit token limit → Start new thread → load_project_state → Continue seamlessly