Personal Context Manager
# Personal Context Manager
An MCP (Model Context Protocol) server that provides persistent personal context storage across AI conversations. It allows AI assistants to remember user preferences, project conventions, and other personal information between sessions.
## Features
- **Persistent Storage** — Context entries are saved to a local JSON file and survive across conversations
- **Upsert by Key** — Automatically creates or updates entries based on key, avoiding duplicates
- **Keyword Search** — Search across keys, values, and tags to find relevant context
- **Tagging** — Organize entries with optional tags for easier retrieval
- **Atomic Writes** — Uses tmp-file + rename to prevent data corruption
## Tools
| Tool | Description |
|------|-------------|
| `update_context` | Add or update a context entry by key |
| `get_context` | Search entries by keyword |
| `list_contexts` | List all stored entries |
| `delete_context` | Delete an entry by ID |
## Setup
### Install
```bash
npm install
npm run build
```
### Configure in Claude Code
Add to your MCP settings (`~/.claude/settings.json`):
```json
{
"mcpServers": {
"personal-context-manager": {
"command": "node",
"args": ["/path/to/personal-context-manager/dist/index.js"]
}
}
}
```
### Data Location
Context data is stored at `~/.personal-context-manager/contexts.json` by default.
Override with the `CONTEXT_MANAGER_DATA_DIR` environment variable:
```json
{
"mcpServers": {
"personal-context-manager": {
"command": "node",
"args": ["/path/to/personal-context-manager/dist/index.js"],
"env": {
"CONTEXT_MANAGER_DATA_DIR": "/custom/path"
}
}
}
}
```
## License
MIT
TDQS
Scored across 8 tools
While most tools target distinct resources (personal context vs. workflow), there is potential overlap between update_context/get_context (personal memory) and workflow_log/workflow_list (project memory) when users mention work-related conventions. The descriptions provide some guidance with specific triggers, but an agent could still confuse which memory store to use for a given piece of information.
Two different naming patterns are used: context_* tools use verb_noun (update_context, get_context, list_contexts, delete_context) while workflow_* tools use noun_verb (workflow_log, workflow_list, workflow_done). Additionally, generate_prompt follows a third pattern, creating inconsistency across the server's tools.
8 tools is a well-scoped count for a personal context manager, covering core operations for two memory systems (personal and project) plus a prompt generator. Each tool appears to earn its place without redundancy.
The surface offers CRUD operations for personal context (create, read, list, delete) and workflow entries (create, read, update status), covering essential memory management. Minor gaps include the absence of an update tool for personal context (though upsert via update_context covers modification) and no bulk operations or search for workflow entries beyond filtering.