
PlanExe
- 391 repo stars
- Updated July 26, 2026
- PlanExeOrg/PlanExe
MCP server for generating rough-draft project plans from natural-language prompts.
About
MCP server for generating rough-draft project plans from natural-language prompts. PlanExe is an open-source tool and the premier planning tool for AI agents. It turns a single plain-english goal statement into a 40-page, strategic plan in ~15 minutes using local or cloud models. It's an accelerator for outlines, but no silver bullet for polished plans. Typical output contains: Exposes 11 MCP tools including io.github.PlanExeOrg/planexe, X-API-Key. Install via Claude Desktop, Cursor, or any MCP-compatible client using the upstream server manifest.
- A business plan for a [Minecraft-themed escape room](https://planexe.org/20251016_minecraft_escape_report.html).
- A business plan for a [Faraday cage manufacturing company](https://planexe.org/20250720_faraday_enclosure_report.html).
- A pilot project for a [Human as-a Service](https://planexe.org/20251012_human_as_a_service_protocol_report.html).
- See more [examples here](https://planexe.org/examples/).
- An account at [https://home.planexe.org](https://home.planexe.org).
PlanExe by the numbers
- Exposes 11 verified tools (MCP introspection)
- Data as of Jul 26, 2026 (Skillselion catalog sync)
claude mcp add --transport http planexe https://mcp.planexe.org/mcp --header "X-API-Key: YOUR_X_API_KEY"Add your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 391 |
|---|---|
| Transport | HTTP |
| Auth | Required |
| Tools | 11 |
| Last updated | July 26, 2026 |
| Repository | PlanExeOrg/PlanExe ↗ |
How do I connect PlanExe to my MCP client?
MCP server for generating rough-draft project plans from natural-language prompts.
Who is it for?
Teams wiring PlanExe into Claude, Cursor, or custom agents for ai & llm tools.
Skip if: Skip when you need a non-MCP SDK or hosted API without stdio/SSE transport.
What you get
Working PlanExe MCP server with verified tool registration and client config.
- Rough-draft project plan text generated from your natural-language description
- Structured planning sections suitable for editing into a PRD or ticket backlog
- Repeatable agent workflow for re-scoping when requirements change
By the numbers
- [object Object]
PlanExe capabilities & compatibility
- Capabilities
- planexe mcp tool registration · planexe client configuration · planexe agent workflow integration
- Use cases
- orchestration
- Runs
- Remote server
What PlanExe says it does
MCP server for generating rough-draft project plans from natural-language prompts.
MCP server for generating rough-draft project plans from natural-language prompts.
Tools 11
Public tool metadata - what this server can do for an agent.
example_plansReturns a curated list of example plans with download links for reports and zip bundles. Use this to preview what PlanExe output looks like before creating your own plan. Especially useful when the user asks what the output looks like before committing to a plan. No API key required.
example_promptsCall this first. Returns example prompts that define what a good prompt looks like. Do NOT call plan_create yet. Optional before plan_create: call model_profiles to choose model_profile. Next is a non-tool step: formulate a detailed prompt (typically ~300-800 words; use examples as a baseline, similar structure) and get user approval. Good prompt shape: objective, scope, constraints, timeline, stakeholders, budget/resources, and success criteria. Write the prompt as flowing prose, not structured markdown with headers or bullet lists. Weave technical specs, constraints, and targets naturally into sentences. Include banned words/approaches and governance preferences inline. The examples demonstrate this prose style — match their tone and density. Then call plan_create. PlanExe is not for tiny one-shot outputs like a 5-point checklist; and it does not support selecting only some internal pipeline steps.
model_profilesOptional helper before plan_create. Returns model_profile options with plain-language guidance and currently available models in each profile. If no models are available, returns error code MODEL_PROFILES_UNAVAILABLE.
plan_create3 paramsCall only after example_prompts and after you have completed prompt drafting/approval (non-tool step). PlanExe turns the approved prompt into a strategic project-plan draft (20+ sections) in ~10-20 min. Sections include: executive summary, interactive Gantt charts, investor pitch, project plan with SMART criteria, strategic decision analysis, scenario comparison, assumptions with expert review, governance structure, SWOT analysis, team role profiles, simulated expert criticism, work breakdown structure, plan review (critical issues, KPIs, financial strategy, automation opportunities), Q&A, premortem with failure scenarios, self-audit checklist, and adversarial premise attacks that argue against the project. The adversarial sections (premortem, self-audit, premise attacks) surface risks and questions the prompter may not have considered. Returns plan_id (UUID); use it for plan_status, plan_stop, plan_retry, and plan_file_info. To track progress, poll plan_status at reasonable intervals
promptstringstart_dateOptional plan start date in ISO 8601 format with timezone offset (e.g. '2025-06-15T09:00:00+02:00'). When omitted, the plan starts now. Use this to set a past or future start date for the plan.model_profilestringModel profile: baseline, premium, frontier, custom. Call model_profiles to inspect options.
plan_status1 paramReturns status and progress of the plan currently being created. This is the primary way to check progress — it returns structured JSON with all progress fields. Poll at reasonable intervals (e.g. every 5 minutes): plan generation typically takes 10-20 minutes (baseline profile) and may take longer on higher-quality profiles. State contract: pending/processing => keep polling; completed => download is ready; failed => terminal error; stopped => user called plan_stop (consider plan_resume). progress_percentage is 0-100 (integer-like float); 100 when completed. Note: steps vary in duration — early steps complete quickly while later steps (review, report generation) take longer. Do not use progress_percentage to estimate time remaining. steps_completed and steps_total give the number of plan generation steps completed and expected (both nullable). current_step is the human-readable label of the most recently completed step (e.g. 'SWOT Analysis'). timing.last_progress_at is an ISO 8601 tim
plan_idstringPlan UUID returned by plan_create.
plan_stop1 paramRequest the plan generation to stop. Pass the plan_id (the UUID returned by plan_create). Stopping is asynchronous: the stop flag is set immediately but the plan may continue briefly before halting. A stopped plan will transition to the stopped state. If the plan is already completed or failed, stop_requested returns false (the plan already finished). Unknown plan_id returns error code PLAN_NOT_FOUND.
plan_idstringPlan UUID returned by plan_create. Use it to stop the plan creation.
plan_retry2 paramsRetry a plan that is currently in failed or stopped state. Pass the plan_id and optionally model_profile (defaults to baseline). The plan is reset to pending, prior artifacts are cleared, and the same plan_id is requeued for processing. Returns PLAN_NOT_FOUND when plan_id is unknown and PLAN_NOT_FAILED when the plan is not in failed or stopped state.
plan_idstringUUID of the failed plan to retry.model_profilestringModel profile used for retry. Defaults to baseline.
plan_resume2 paramsResume a failed or stopped plan without discarding completed intermediary files. Plan generation restarts from the first incomplete step, skipping all steps that already produced output files. Use plan_resume when plan_status shows 'failed' or 'stopped' and plan generation was interrupted before completing all steps (network drop, timeout, plan_stop, worker crash). For a full restart or to change model_profile, use plan_retry instead. Only failed or stopped plans can be resumed. Returns PLAN_NOT_FOUND when plan_id is unknown and PLAN_NOT_RESUMABLE when the plan is not in failed or stopped state. Returns PIPELINE_VERSION_MISMATCH when the snapshot was created by a different pipeline version; use plan_retry instead.
plan_idstringUUID of the failed plan to resume.model_profilestringModel profile used for the resumed plan. Defaults to baseline.
plan_file_info2 paramsReturns file metadata (content_type, download_url, download_size, expires_at) for the report or zip artifact. Use artifact='report' (default) for the interactive HTML report (~700KB, self-contained with embedded JS for collapsible sections and interactive Gantt charts — open in a browser). Use artifact='zip' for the full pipeline output bundle (md, json, csv intermediary files that fed the report). While the task is still pending or processing, returns {ready:false,reason:"processing"}. Check readiness by testing whether download_url is present in the response. Once ready, present download_url to the user or fetch and save the file locally. Download URLs expire after 15 minutes (see expires_at); call plan_file_info again to get a fresh URL if needed. If your client exposes plan_download (e.g. mcp_local), prefer that to save the file locally. Terminal error codes: generation_failed (plan failed), content_unavailable (artifact missing). Unknown plan_id returns error code PLAN_NOT_FOUND.
plan_idstringPlan UUID returned by plan_create. Use it to download the created plan.artifactstringDownload artifact type: report or zip.
plan_list1 paramList the most recent plans for an authenticated user. Returns up to `limit` plans (default 10, max 50) newest-first, each with plan_id, state, progress_percentage, created_at (ISO 8601), and a prompt_excerpt (first 100 chars). Use this to recover a lost plan_id or to review recent activity.
limitintegerMaximum number of plans to return (1–50). Newest plans are returned first.
send_feedback4 paramsSubmit feedback about PlanExe — issues, impressions, or suggestions. Callable at any point in the workflow; fire-and-forget, never blocks. Use category to classify: mcp (MCP tools, SSE, plan_status, workflow), plan (the generated output files), code (PlanExe source), docs (documentation), other. Optionally attach to a plan via plan_id. Use rating (1-5) for sentiment: 1=strong negative, 3=neutral, 5=strong positive. Especially useful for reporting: SSE streams that close before plan completion, plan_status returning stale or inconsistent data, queue delays where workers are slow to pick up plans, and impressions of plan output quality after reviewing reports. Include specific details (plan_id, percentages, timestamps) when reporting issues.
ratingSentiment: 1=strong negative, 2=weak negative, 3=neutral, 4=weak positive, 5=strong positive.messagestringFree-text feedback. Include environment context if reporting an issue.plan_idOptional plan UUID to attach this feedback to.categorystringFeedback category: mcp, plan, code, docs, or other.
README.md
Turn your idea into a comprehensive plan in minutes, not months.
Describe your idea, hit submit, and PlanExe returns a ~40-page plan in about 15 minutes.
Create an account | See example plans | Getting started guide
Example plans generated with PlanExe
- A business plan for a Minecraft-themed escape room.
- A business plan for a Faraday cage manufacturing company.
- A pilot project for a Human as-a Service.
- See more examples here.
What is PlanExe?
PlanExe is an open-source tool and the premier planning tool for AI agents. It turns a single plain-english goal statement into a 40-page, strategic plan in ~15 minutes using local or cloud models. It's an accelerator for outlines, but no silver bullet for polished plans.
Typical output contains:
- Executive summary
- Gantt chart
- Governance structure
- Role descriptions
- Stakeholder maps
- Risk registers
- SWOT analyses
PlanExe produces well-structured, domain-aware output: correct terminology, logical task sequencing, and coherent sections. For technical topics (engineering programs, regulated industries), it often gets the vocabulary and structure right. Think of it as a first-draft scaffold that gives you something concrete to critique and refine.
However, the output has consistent weaknesses that matter: budgets are assumed rather than derived, timeline estimates are not grounded in real resource constraints, risk mitigations tend toward generic advice, and legal/regulatory details are plausible-sounding but unverified. The output should be treated as a structured starting point, not a deliverable. How much work it saves depends heavily on the project. For brainstorming or a first outline, it can save hours. For a client-ready plan, expect significant rework on every number, timeline, and risk section.
Model Context Protocol (MCP)
PlanExe exposes an MCP server for AI agents at https://mcp.planexe.org/
Assuming you have an MCP-compatible client (Claude, Cursor, Codex, LM Studio, Windsurf, OpenClaw, Antigravity).
The Tool workflow
example_plans(optional, preview what PlanExe output looks like)example_promptsmodel_profiles(optional, helps choosemodel_profile)- non-tool step: draft/approve prompt
plan_createplan_status(poll every 5 minutes until done)- optional if failed:
plan_retry - download the result via
plan_file_info
Concurrency note: each plan_create call returns a new plan_id; server-side global per-client concurrency is not capped, so clients should track their own parallel plans.
Option A: Remote MCP (fastest path)
Prerequisites
- An account at https://home.planexe.org.
- Sufficient funds to create plans.
- A PlanExe API key (
pex_...) from your account
Use this endpoint directly in your MCP client:
{
"mcpServers": {
"planexe": {
"url": "https://mcp.planexe.org/mcp",
"headers": {
"X-API-Key": "pex_your_api_key_here"
}
}
}
}
Option B: Run MCP server locally with Docker
Prerequisites
- Docker
- OpenRouter account
- Create a PlanExe
.envfile withOPENROUTER_API_KEY.
Start the full stack:
docker compose up --build
Make sure that you can create plans in the web interface, before proceeding to MCP.
Then connect your client to:
http://localhost:8001/mcp
For local docker defaults, auth is disabled in docker-compose.yml.
MCP docs
- Setup overview: https://docs.planexe.org/mcp/mcp_setup/
- Tool details and flow: https://docs.planexe.org/mcp/mcp_details/
- Claude: https://docs.planexe.org/mcp/claude/
- Cursor: https://docs.planexe.org/mcp/cursor/
- Codex: https://docs.planexe.org/mcp/codex/
- PlanExe MCP interface: https://docs.planexe.org/mcp/planexe_mcp_interface/
- MCP Registry publishing metadata (
server.json):mcp_cloud/server.json llms.txt: https://mcp.planexe.org/llms.txt
Running the Pipeline via CLI (no frontend)
If you have a local Python environment set up and want to invoke the pipeline
directly — without the Flask UI — use the planexe CLI script at
the repo root.
# Create a plan from a text prompt
./planexe create_plan \
--plan-text "Small coffee shop in Copenhagen, Denmark" \
--output-dir ./planexe-outputs/1984-12-31/MyCoffeeShop_v1
# Or: read the plan prompt from a file
./planexe create_plan \
--plan-file my_plan.txt \
--output-dir ./planexe-outputs/1984-12-31/MyCoffeeShop_v1
The script creates the run directory if it does not exist and writes:
| File | Contents |
|---|---|
start_time.json |
{"server_iso_utc": "<current UTC ISO timestamp>"} |
plan.txt |
The plain-text plan prompt |
For AI Agents
PlanExe is designed as infrastructure for AI agents. If you are an AI agent reading this:
- Discovery: Read
public/llms.txtfor service metadata, MCP tools, and endpoints. - MCP endpoint:
https://mcp.planexe.org/mcp— connect with an API key from home.planexe.org. - Workflow: Call
example_promptsto learn the expected prompt format, draft a detailed prompt (~300-800 words of flowing prose), then callplan_create. - Agent guide: See
docs/mcp/autonomous_agent_guide.mdfor the complete autonomous workflow. - Key outputs in zip:
wbs_level1.json(work packages),wbs_level2.json(tasks),pre_project_assessment.json(feasibility).
Run locally with Docker (Click to expand)
Prerequisite: Docker with Docker Compose installed; you only need basic Docker knowledge. No local Python setup is required because everything runs in containers.
Follow these steps
- Clone the repo and enter it:
git clone https://github.com/PlanExeOrg/PlanExe.git
cd PlanExe
Provide an LLM provider. Copy
.env.docker-exampleto.envand fill inOPENROUTER_API_KEYwith your key from OpenRouter. The containers mount.envandllm_config/; pick a model profile there. For host-side Ollama, use thedocker-ollama-llama3.1entry and ensure Ollama is listening onhttp://host.docker.internal:11434.Start the stack (first run builds the images):
docker compose up worker_plan frontend_multi_user
The worker listens on http://localhost:8000 and the UI comes up on http://localhost:5001 after the Postgres and worker healthchecks pass.
- Open http://localhost:5001 in your browser, create an account (or log in with the admin credentials from
.env), enter your idea, and watch progress with:
docker compose logs -f worker_plan
Outputs are written to run/ on the host (mounted into both containers).
- Stop with
Ctrl+C(ordocker compose down). Rebuild after code/dependency changes:
docker compose build --no-cache worker_plan frontend_multi_user
For compose tips, alternate ports, or troubleshooting, see docs/docker.md or docker-compose.md.
Configuration
Config A: Run a model in the cloud using a paid provider. Follow the instructions in OpenRouter.
Config B: Run models locally on a high-end computer. Follow the instructions for either Ollama or LM Studio. When using host-side tools with Docker, point the model URL at the host (for example http://host.docker.internal:11434 for Ollama).
Recommendation: I recommend Config A as it offers the most straightforward path to getting PlanExe working reliably.
Recommended MCP Servers
How it compares
Remote plan-drafting MCP API, not a local brainstorming skill or a Gantt export from your issue tracker.
FAQ
What does PlanExe do?
MCP server for generating rough-draft project plans from natural-language prompts.
When should I use PlanExe?
User asks about PlanExe mcp, mcp server for generating rough-draft project plans from natural-langu.
Is this MCP server safe to install?
Review the Security Audits panel on this page before installing in production.