Skip to main content
Glama
nullptr-z

Personal Context Manager

by nullptr-z
README.md
# 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

A3.8/5.0

Scored across 8 tools

Disambiguation3/5

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.

Naming Consistency3/5

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.

Tool Count5/5

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.

Completeness4/5

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.

Maintenance

ActivityInactive
ResponsivenessNo issues