Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
MCP server that makes PLAN.md the operational backbone of agentic development
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
PYTHONUNBUFFERED, PYTHONIOENCODINGYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"powerplan": {
"command": "uvx",
"args": [
"powerplan-mcp"
],
"env": {
"PYTHONUNBUFFERED": "your-value",
"PYTHONIOENCODING": "your-value"
}
}
}
}Run this in your terminal
claude mcp add powerplan --env PYTHONUNBUFFERED=your-value --env PYTHONIOENCODING=your-value -- uvx powerplan-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"powerplan": {
"command": "uvx",
"args": [
"powerplan-mcp"
],
"env": {
"PYTHONUNBUFFERED": "your-value",
"PYTHONIOENCODING": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"powerplan": {
"type": "stdio",
"command": "uvx",
"args": [
"powerplan-mcp"
],
"env": {
"PYTHONUNBUFFERED": "your-value",
"PYTHONIOENCODING": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
PYTHONUNBUFFERED envPYTHONIOENCODING envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account CynaCons, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.10.0) reached the registry 9 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Kanal Varna — drains, leaks & plumbing (Varna, BG)
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drain unblocking, leak detection & plumbing in Varna, Bulgaria: services, prices, areas, contact
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
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
| MCP server name | powerplan |
| PyPI | powerplan-mcp (powerplan is a different, unrelated package) |
| Registry | io.github.CynaCons/powerplan |
| Status | v0.10.0 — miniplan turn report (PLAN.md) |
| Site | GitHub Pages |
| Pairs with | PowerSpawn (optional) |
You need uv (provides uvx) or Python 3.10+.
uvx powerplan-mcp
That is the stdio MCP server. Point your client at it:
.mcp.json{
"mcpServers": { "powerplan": { "command": "uvx", "args": ["powerplan-mcp"], "env": { "PYTHONIOENCODING": "utf-8", "PYTHONUNBUFFERED": "1" } } } }
Same block in claude_desktop_config.json (mcpServers).
~/.grok/config.toml or project config)[mcp_servers.powerplan]
command = "uvx" args = ["powerplan-mcp"] env = { PYTHONUNBUFFERED = "1", PYTHONIOENCODING = "utf-8" } enabled = true
pip install powerplan-mcp
{
"mcpServers": { "powerplan": { "command": "python", "args": ["-m", "powerplan"], "env": { "PYTHONIOENCODING": "utf-8", "PYTHONUNBUFFERED": "1" } } } }
Prefer scoped tools. Do not read all of PLAN.md to figure out what to do.
create_plan first.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.add_task / add_tasks / complete_task (indexes for several) / start_iteration / close_iteration.show_plan is a human skim, not a dump.show_current_iteration pasted 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.
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.
| Tool | Behavior |
|---|---|
create_plan | Bootstrap ./PLAN.md (or plan_path) when missing; force to overwrite |
show_miniplan | Session opener — raw PLAN.md snippet: the current (or named) iteration byte-for-byte, neighbours collapsed to header lines (before/after). Also seeds the turn-end miniplan report |
get_current_iteration | Preferred for agents — scoped JSON for current work |
get_iteration | JSON for one version (tasks, progress) |
list_iterations / find_task / get_backlog | Navigate without full-file reads |
create_major / create_iteration / add_task / add_tasks | Surgical mutations (batch add in one write) |
complete_task / reopen_task / remove_task / defer_task | One or many (indexes / tasks); optional [agent: id] |
start_iteration / close_iteration | ACTIVE/current vs COMPLETE lifecycle |
check_plan | Structure lint |
show_current_iteration | Turn closer — status view (status, progress count, goal, tasks) to paste at the end of every major turn |
show_plan | Compact human skim (not a full dump) |
| Construct | Pattern |
|---|---|
| Major | ## vX.Y — Title |
| Iteration | ### vX.Y.Z — Title |
| Goal | **Goal:** … |
| Tasks | - [ ] / - [x] |
| Backlog | ## Backlog |
Phase-like headers and other prose are preserved as opaque blocks.
Clone, editable install, or PowerSpawn submodule — for contributors.
git clone https://github.com/CynaCons/powerplan.git
cd powerplan pip install -e ".[dev]" python -m powerplan # same stdio server
PowerSpawn can vendor this repo as a git submodule. Register both MCP servers — they do not merge:
{
"mcpServers": { "powerplan": { "command": "uvx", "args": ["powerplan-mcp"] }, "powerspawn": { "command": "python", "args": ["-m", "powerspawn.mcp_server"] } } }
Path-only (no install): python /path/to/powerplan/powerplan_server.py
Landing page: cd site && npm ci && npm run dev
Full procedure, identities, and failure history: [docs/RELEASING.md](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.
MIT — see LICENSE.