Complex plan
About
Enhance development AI workflows with advanced planning and sequential thinking capabilities.
Details
- Author
- tuchsoft
- Categories
- Developer Tools
Jump to
Setup
Install Complex plan in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/tuchsoft/mcp-complex_plans
Follow the installation instructions in the repository README, then restart your MCP client.
A Model Context Protocol (MCP) server designed to enhance AI workflows with advanced planning and sequential thinking capabilities. This server enables AI agents to create structured plans, manage tasks efficiently, and integrate seamlessly with development environments.
This tool has been developed mainly to work with Mistral Vibe CLI, but it should work with any MCP-compatible model. While not extensively tested with other models, contributions and testing are welcome!
Choose European models when you can, Europe is simply better! 🇪🇺
- Plan Creation & Management: Create, update, list, and delete structured plans for complex tasks
- Sequential Thinking: Integrated tool for dynamic problem-solving and analysis
- Configuration: Customizable behavior through configuration files, CLI arguments, and environment variables
- Git Integration: Automatic .gitignore management
- Editor Integration: Open files in your preferred editor for review
All tools operate safely within the configured plans directory (default.complex_plans) and can be used in bothchatandplanmodes.
To use this server with Mistral Vibe CLI, add the following configuration to your~/.vibe/config.toml:
Remove themcp_servers = []line from the upper part of the file for this to work!
[[mcp_servers]] name = "complex_plans" transport = "stdio" command = "npx" args = ["-y", "@tuchsoft/mcp-complex-plans"] [tools.complex_plans_createPlan] permission = "always" [tools.complex_plans_updatePlan] permission = "always" [tools.complex_plans_openInEditor] permission = "always" [tools.complex_plans_sequentialThinking] permission = "always" [tools.complex_plans_listPlans] permission = "always" [tools.complex_plans_readPlan] permission = "always" [tools.complex_plans_deletePlan] permission = "ask"
To use the tools in plan/chat mode, create or edit the~/.vibe/agents/plan.toml(and/orchat.toml) configuration file:
enabled_tools = [ "complex_plans_createPlan", "complex_plans_updatePlan", "complex_plans_openInEditor", "complex_plans_sequentialThinking", "complex_plans_readPlan", "complex_plans_listPlans" ]
For better results,edit your system promptto include a snippet like the following to instruct the model when to use this tool:
FOR COMPLEX, MULTI-FILE EDITS, ALWAYS GENERATE A MARKDOWN PLAN FIRST: if the user request a complex task that require editing multiple files, traverse the project or make a lot of changes, YOU MUST create a markdown plan and ask the user to confirm it before proceeding, use the complex_plans_createPlan tool (and consequitive complex_plans_readPlan, complex_plans_updatePlan, complex_plans_listPlans, complex_plans_openInEditor, (optional) complex_plans_deletePlan tools). ALWAYS ask the user to review and accept the plan after calling complex_plans_openInEditor and BEFORE doing anything else, do not proceed with the implementation until the user has accepted the plan. Follow the instrucion provided by the tool itself. Also if the user request a plan creation ALWAYS use the complex_plans_createPlan tool.
Optionally, add also this other block to ensure the chain of thought is used whenever possible:
ALWAYS USE AN INTERNAL CHAIN OF THOUGHT: Before answering to the user, writing code, editing a file, or performing whatever action, always use an internal chain of thought to verify your findings trough the use of the complex_plans_sequentialThinking tool. Use as many tokens as you believe are necessary for your internal reasoning. Output limit and verbosity constraints do not apply to your internal reasoning. Always use the complex_plans_sequentialThinking tool for any task that is not a direct question-answer, as a rule of thumb if you are reading a file, you must also use the complex_plans_sequentialThinking tool.
To use this server with Claude Code, add the following to your~/.claude/claude.json(global) or.claude/settings.json(project-level):
Global configuration(~/.claude/claude.json):
{ "mcpServers": { "complex_plans": { "command": "npx", "args": ["-y", "@tuchsoft/mcp-complex-plans", "--disabled-tools=sequentialThinking"] } } }
claude mcp add complex_plans npx -- -y @tuchsoft/mcp-complex-plans --disabled-tools=sequentialThinking
Note onsequentialThinking: Claude has native extended reasoning built in. It is strongly recommended to disable thesequentialThinkingtool (as shown above) to avoid redundancy and conflicts with Claude's own reasoning. When disabled, the tool is completely removed from Claude's context — no instructions about it remain visible.
Add this to your project'sCLAUDE.mdto instruct Claude when to use the planning tools:
## Complex Plans FOR COMPLEX, MULTI-FILE EDITS, ALWAYS GENERATE A MARKDOWN PLAN FIRST: If the user requests a complex task that requires editing multiple files, traversing the project, or making many changes, YOU MUST create a markdown plan and ask the user to confirm it before proceeding. Use the complex_plans_createPlan tool (and subsequent complex_plans_readPlan, complex_plans_updatePlan, complex_plans_listPlans, complex_plans_openInEditor, and optionally complex_plans_deletePlan tools). ALWAYS ask the user to review and accept the plan after calling complex_plans_openInEditor and BEFORE doing anything else. Do not proceed with the implementation until the user has accepted the plan. Follow the instructions provided by each tool. When asked to create a plan, always use complex_plans_createPlan. IMPORTANT: Ignore the built-in EnterPlanMode and ExitPlanMode tools — use complex_plans_createPlan instead for all planning workflows.
Note on injected instructions:The server automatically sends a set of instructions to the model at initialization (e.g. to use thecomplex_planstoolset and, whenauto_delete_plansis disabled, to treat existing plans as historical data). The snippets above are still useful as fallback or for extra emphasis.
- The model should decide on its own when to use the tool when the task is complex, long, or requires editing many files.
- To force the model to create a plan, simply include something likeCreate a plan before implementing
- To edit a plan:
- You can do it manually by editing the plan file. The sectionAdditional user provided detailsis where you can provide additional information the model missed. Remember to remove from theRisks/Doubtssection anything for which you provide a clear answer.
- You can ask the model to do so by promptingEdit the plan to...(orEdit my XYZ plan to...if not in the same conversation)
The server supports multiple configuration methods with the followingpriority order(highest to lowest):
- Configuration file at project level([your_project]/<plans_dir>/config.json) - Highest priority
- CLI arguments- Override environment variables
- Environment variables- Override default values
- Default values- Lowest priority
Configuration file(.complex_plans/config.json):
{ "default_editor": "vscode", "auto_delete_plans": false, "add_to_gitignore": true, "plans_dir": ".complex_plans", "disabled_tools": ["listPlans"] }
node dist/index.js --default-editor=vscode --auto-delete-plans=false --plans-dir=.complex_plans --disabled-tools=listPlans,deletePlan
export MCP_COMPLEX_PLANS_DEFAULT_EDITOR="vscode" export MCP_COMPLEX_PLANS_AUTO_DELETE_PLANS="false" export MCP_COMPLEX_PLANS_PLANS_DIR=".complex_plans" export MCP_COMPLEX_PLANS_DISABLED_TOOLS="listPlans,deletePlan"
- createPlan: Create structured plans for complex tasks
- updatePlan: Modify existing plans using SEARCH/REPLACE blocks
- deletePlan: Remove completed or obsolete plans
- listPlans: List all available plans in the current project
- openInEditor: Open files in your configured editor for review
- sequentialThinking: Dynamic problem-solving and analysis tool
The sequential thinking implementation is based onsequentialthinking, for detailed tool documentation and usage patterns, refer to that repo.
npm install npm run build npm link #To then test using npx as normal
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
Create crafted UI components inspired by the best 21st.dev design engineers.
Bring agent evaluations, observability, and synthetic test set generation directly into your IDE for free with Galileo's new MCP server
An MCP server to help AI assistants to answer questions and generate AccelByte Extend SDK code more effectively .
MCP server for AI Diagram Maker — generate beautiful software engineering diagrams directly inside Cursor, Claude Desktop, Claude Code, or any MCP-compatible AI agent
ALAPI MCP Tools,Call hundreds of API interfaces via MCP
AI-powered SVG animation generator that transforms static files into animated SVG components using the Allyson platform
MCP server that gives AI assistants on-demand access to 1,500+ amCharts docs, ~300 code examples, and 1000+ class API references.
APIMatic MCP Server is used to validate OpenAPI specifications using APIMatic. The server processes OpenAPI files and returns validation summaries by leveraging APIMatic’s API.
One shared context layer for AI agents and humans — live API specs, DB schemas, and versioned contracts across repos so every agent and teammate works from the same source of truth.
Build and deploy full-stack Next.js apps with 98 tools for React, AWS, and MongoDB
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





