Skip to main content
Glama
README.md
# HoldOn Todo (Cursor Plugin)

Manage [HoldOn Todo](https://todo.holdon.ltd) from Cursor via MCP: list, create, complete, and update todos.

## Install (Cursor Marketplace)

1. Install **holdon-todo** from the Cursor Marketplace (or load this repo under `~/.cursor/plugins/local/holdon-todo` for local testing).
2. Open **Plugins → Configure** and set **HoldOn PAT**.
3. Create a token: sign in / register at [todo.holdon.ltd](https://todo.holdon.ltd) → sidebar **Extensions & tokens** → **Create Cursor MCP token** (`todo:read` / `todo:write`).

## Manual MCP (`mcp.json`)

```json
{
  "mcpServers": {
    "holdon-todo": {
      "command": "node",
      "args": ["/absolute/path/to/holdon-todo-mcp/dist/index.js"],
      "env": {
        "HOLDON_PAT": "holdon_pat_…"
      }
    }
  }
}
```

Optional: `HOLDON_API_BASE` (default `https://api.holdon.ltd/api/v1`).

## Tools

| Tool | Description |
|------|-------------|
| `todo_groups_list` | List groups |
| `todo_list` | List todos (`status`: 1 open / 2 done) |
| `todo_create` | Create a todo |
| `todo_complete` | Mark done |
| `todo_update` | Update content / status |

## Develop

```bash
npm install
npm run prepare-dist
```

Local plugin test: symlink this directory to `~/.cursor/plugins/local/holdon-todo`, set `HOLDON_PAT` in plugin config, reload Cursor.

## License

MIT. See [PRIVACY.md](./PRIVACY.md).

TDQS

A3.6/5.0

Scored across 5 tools

Disambiguation4/5

Most tools target clearly distinct operations (list groups, list todos, create, update). However, todo_complete (mark done via status=2) substantially overlaps with todo_update, which can also set status=2, so an agent could reasonably reach for either when closing a task. Descriptions hint at the distinction but the boundary is not fully sharp.

Naming Consistency4/5

All names are snake_case and share a consistent 'todo' prefix, which is highly predictable. The one deviation is todo_groups_list, which puts the resource before the verb (noun_noun_verb) while every other tool follows todo_<verb>. Minor but noticeable pattern break.

Tool Count5/5

Five tools is a well-scoped surface for a todo server: listing groups, listing items, and create/update/complete cover the core interaction loop without redundancy or bloat. Each tool earns its place for the stated purpose.

Completeness4/5

The surface covers create, read, update, and completion of todos plus group listing, which handles most todo workflows. The notable gap is deletion (no todo_delete or group creation), so users cannot remove tasks or create groups; agents can partially work around this by marking items done.

Maintenance

ActivityMaintained
ResponsivenessNo issues