
powerplan
io.github.CynaConsPublished by GitHub account CynaConsv0.10.0Updated Oct 29, 2026
MCP server that makes PLAN.md the operational backbone of agentic development
Overview
Local MCP server that gives assistants a structured API over a project's PLAN.md: read iterations, add and complete tasks, and report progress.
- What you can do
- Read the plan: show the current iteration as raw text or JSON, fetch one version, list iterations, find tasks and view the backlog.
- Create and edit: bootstrap a PLAN.md, add majors, iterations and tasks, complete, reopen, remove or defer tasks, optionally tagging the agent.
- Manage lifecycle: start and close iterations and lint the plan structure.
- Report status: produce a compact plan skim and a turn-end status view to paste into the chat.
- When to use it
- Useful when agents work from a PLAN.md roadmap and you want them to update tasks and iterations through scoped tools instead of hand-editing the file, especially with several agents writing to the same plan.
- Requirements
- Runs locally over stdio; needs uv (uvx) or Python 3.10+, or a pip install of powerplan-mcp. Optional environment variables PYTHONIOENCODING and PYTHONUNBUFFERED are recommended for stdio. No accounts or API keys. Tools default to the nearest PLAN.md found by walking up from the working directory, or accept a plan_path.
Installation
In SourceWeft
- Open powerplan in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
powerplan
PLAN.md as the operational backbone of agentic development.
powerplan is an MCP server that gives
coordinators and worker agents a human-language API over your project’s
PLAN.md: show progress, create iterations, complete tasks, keep the header
truthful — without freeform file thrash.
mcp-name: io.github.CynaCons/powerplan
Install
You need uv (provides uvx) or Python 3.10+.
That is the stdio MCP server. Point your client at it:
Claude Code / Cursor / .mcp.json
Claude Desktop
Same block in claude_desktop_config.json (mcpServers).
Grok (~/.grok/config.toml or project config)
pip (no uv)
Agent guide
Prefer scoped tools. Do not read all of PLAN.md to figure out what to do.
- If tools fail with “no PLAN.md” →
create_planfirst. show_miniplan— what to work on now, in the plan's own format: the current iteration verbatim with the neighbouring headers. Start every session here.get_current_iteration— the same, as JSON.get_iteration(version)— one iteration’s tasks and progress.- Mutate with
add_task/add_tasks/complete_task(indexesfor several) /start_iteration/close_iteration. show_planis a human skim, not a dump.- End every major turn (files changed, tasks ticked or added, a check run, an
iteration closed) with a miniplan in the chat, then
show_current_iterationpasted verbatim in a code block, so the user sees status and progress at a glance. The server sends this rule to every client in its MCP instructions.
A miniplan is a turn-end task report in the plan's own format, printed in the
reply and never written to a file: the show_miniplan block verbatim with its
checkboxes flipped, plus an ## Off-plan section for quick items the turn is
tracking that are not in PLAN.md yet, each marked → plan, → backlog or
→ drop. Format and example: docs/MINIPLAN.md. Ships as the
miniplan skill for Claude Code, Cursor, Codex and Grok (.claude/skills/,
.cursor/skills/, .codex/skills/, .grok/skills/).
Every tool accepts optional plan_path (relative or absolute). Default: walk up
from cwd to the nearest PLAN.md.
Optional agent on mutations writes a trailing [agent: id] tag on the touched line.
Why
Agents often edit PLAN.md by hand. Headers drift, “COMPLETE” gets stamped
without proof, and multi-agent swarms step on each other. powerplan is the
single writer: tolerant reader, surgical writer, optional [agent: …] tags.
Tools
Managed plan format
Phase-like headers and other prose are preserved as opaque blocks.
From source
Clone, editable install, or PowerSpawn submodule — for contributors.
PowerSpawn can vendor this repo as a git submodule. Register both MCP servers — they do not merge:
Path-only (no install): python /path/to/powerplan/powerplan_server.py
Landing page: cd site && npm ci && npm run dev
Releasing (maintainers)
Full procedure, identities, and failure history: docs/RELEASING.md.
Agent checklist: project skill release-powerplan (/release-powerplan).
Short path: bump every version file listed in that guide → pytest -q → tag
vX.Y.Z → push the tag. .github/workflows/publish.yml uploads powerplan-mcp
to PyPI, then server.json to the MCP Registry as io.github.CynaCons/powerplan.
License
MIT — see LICENSE.
Source: README.md at commit da1423c
Tools
0Version history
4- v0.10.0LatestOct 29, 2026
- v0.9.0Oct 8, 2026
- v0.8.0Sep 19, 2026
- v0.7.0Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts