# mindpm

Project memory and a control plane for AI coding agents, over MCP.

- **Type:** MCP server
- **Trust:** 60/100 (B), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 3.2.0
- **Author:** io.github.umitkavala
- **License:** MIT
- **npm:** mindpm
- **Source:** https://github.com/umitkavala/mindpm
- **Compatible clients:** claude-code, cursor, copilot, gemini (basis: transport)

## Trust

60/100 (B), scored on the package rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 0 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-10-16T05:48:23.614Z
- **Version scanned:** 3.2.0
- **CVEs:** none found by OSV at scan time

## Tools

40 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `get_agent_instructions` — Returns the recommended instructions for using mindpm effectively. Call this once if you are unsure how to use mindpm, or share it with the user to paste into o
- `create_project` — Create a new project to track. Use this when starting a new project or when a user mentions a project that doesn't exist yet.
- `list_projects` — List all tracked projects. Filter by status to see active, paused, completed, or archived projects.
- `get_project_status` — Get a full overview of a project: active tasks, recent decisions, blockers, and last session summary. Great for getting up to speed.
- `set_project_repo_path` — Set or update the local git repository path for a project. Required for the session brief to include git activity (commits, branch, working-tree state) since th
- `set_execution_defaults` — Set the coding conventions and verification commands (build, unit, integration, lint) that go into every task brief for this project. Tasks can override individ
- `create_task` — Create a new task in a project. Proactively use this when the user mentions something that needs to be done, a bug to fix, or a feature to build. Link it to a s
- `update_task` — Update fields of a task. Proactively use this when priorities shift or new information comes in. Changing status directly is reserved for humans (actor human:*)
- `list_tasks` — List tasks with filters. Defaults to showing non-completed tasks for the most recent active project.
- `get_task` — Get full detail for a specific task including sub-tasks, related notes, its spec criteria and its attempts.
- `get_next_tasks` — Planning view: what should be worked on next? Returns the highest priority ready or claimed tasks for a project. Executor agents use pick_task instead.
- `log_decision` — Record a decision with reasoning and alternatives considered. Proactively use this when the user makes a technical decision, chooses between options, or settles
- `list_decisions` — List decisions for a project. Filter by tags to find specific decisions.
- `add_note` — Add a note to a project or task. Proactively use this when the user shares context about architecture, bugs, ideas, research findings, or any important informat
- `search_notes` — Full-text search across notes for a project.
- `set_context` — Set a key-value context pair for a project (upsert). Proactively use this when the user shares important project context like architecture decisions, config val
- `get_context` — Get context by key or list all context for a project.
- `start_session` — Begin a work session for a project. Returns the full project overview including last session's next_steps, active tasks, blockers, and recent decisions. Call th
- `end_session` — End a work session with a summary of what was accomplished and what to do next. Call this when the user is done working.
- `get_session_brief` — Read-only: what changed since the last session ended — commits, branch and working-tree state, task status changes, new blockers, decisions, and notes. Unlike s
- `query` — Execute a read-only SQL query against the database. Only SELECT statements are allowed. Use this for custom queries not covered by other tools.
- `get_project_summary` — High-level summary of a project: total tasks by status, recent activity, open blockers, and upcoming priorities.
- `get_blockers` — List all blocked tasks with what's blocking them.
- `search` — Full-text search (FTS5, ranked by relevance) across tasks, notes, decisions, specs and attempt root causes for a project.
- `get_delivery_metrics` — DORA-inspired delivery metrics for a project: throughput, lead time, flow efficiency, and performance tier. Use to understand delivery health and trends.
- `create_spec` — Define a spec: the objective, why it matters, the chosen approach, constraints and acceptance criteria an executor agent works against. Created as a draft; appr
- `update_spec` — Edit a spec. Pass the version you read as expected_version; a stale version fails with version_conflict. Editing an approved spec republishes it: the version bu
- `approve_spec` — Approve a draft spec so agents can work on its tasks. Medium and high risk need human:*; low risk also allows agent:architect. Moves linked backlog tasks with n
- `supersede_spec` — Replace a spec with another one. Cancels the old spec's unfinished tasks; any live claim on them ends.
- `get_spec` — A spec with its acceptance criteria, linked tasks (status and attempts) and the active decisions that shaped it.
- `pick_task` — Executor: return the next task to work on: ready, spec approved (or no spec), all blockers done, no live lease. Ordered by priority, then oldest. Does not claim
- `claim_task` — Executor: take exclusive ownership of a ready task. Returns a claim_token that authorizes every later write, the lease expiry, and the task brief. Heartbeat bef
- `get_task_brief` — Everything needed to execute a task in one read: task, spec and acceptance criteria, project conventions, verification commands, relevant decisions, dependencie
- `heartbeat` — Executor: extend your lease by its original length and log the phase you are in. If spec_changed comes back true, the spec was revised since you claimed: re-rea
- `submit_task` — Executor: hand finished work over for verification. Requires the branch, head commit SHA, files touched, a summary, and a result for every acceptance criterion 
- `report_failure`
- `escalate`
- `release_task`
- `review_task`
- `resolve_needs_human`

## Install

**Verdict: review** — Installable, but 1 thing to check first: No publisher has proved control of this listing; it is indexed, not vouched for.
**Cautions** (coverage gaps and advisories — never blocking)
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"mindpm\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"mindpm\"\n      ]\n    }\n  }\n}"
```

## Blast radius

Contained to moderate — no credential declaration found, from the publisher, the upstream registry, or the README. Known so far: runs on your machine; read-only tool surface.
- Floor 13, ceiling 31 (tier: unknown)
- `unknown` means the floor and ceiling land in different bands — not measured enough to name one. It does not mean low.
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/mindpm
- Install plan: https://forgeregistry.com/api/v1/packages/mindpm/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/mindpm
- HTML page: https://forgeregistry.com/registry/mindpm
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
