sequential-thinking
Use for complex problems requiring systematic step-by-step reasoning with ability to revise thoughts, branch into alternative approaches, or dynamically adjust scope. Not for simple queries or single-step tasks.
When & Why to Use This Skill
The Sequential Thinking skill provides a structured framework for iterative reasoning, enabling Claude to tackle complex, multi-stage problems with high precision. It allows the agent to decompose problems, revise previous thoughts, explore alternative logic branches, and dynamically adjust the scope of analysis, ensuring a rigorous and transparent problem-solving process.
Use Cases
- Complex Software Architecture Design: Breaking down high-level system requirements into detailed components while allowing for design revisions as technical constraints are identified.
- Advanced Root Cause Analysis: Systematically investigating technical bugs or system failures by branching into multiple hypotheses and backtracking when a reasoning path reaches a dead end.
- Strategic Business Planning: Decomposing large-scale business objectives into actionable steps, with the ability to adjust the planning scope as new market data is integrated.
- Scientific Research and Synthesis: Organizing complex data points into a coherent logical chain, revising initial conclusions as the relationship between variables becomes clearer through iterative analysis.
| name | sequential-thinking |
|---|---|
| description | Use when complex problems require systematic step-by-step reasoning with ability to revise thoughts, branch into alternative approaches, or dynamically adjust scope. Ideal for multi-stage analysis, design planning, problem decomposition, or tasks with initially unclear scope. |
| license | MIT |
Sequential Thinking
Enables structured problem-solving through iterative reasoning with revision and branching capabilities.
Core Capabilities
- Iterative reasoning: Break complex problems into sequential thought steps
- Dynamic scope: Adjust total thought count as understanding evolves
- Revision tracking: Reconsider and modify previous conclusions
- Branch exploration: Explore alternative reasoning paths from any point
- Maintained context: Keep track of reasoning chain throughout analysis
When to Use
Use mcp__reasoning__sequentialthinking when:
- Problem requires multiple interconnected reasoning steps
- Initial scope or approach is uncertain
- Need to filter through complexity to find core issues
- May need to backtrack or revise earlier conclusions
- Want to explore alternative solution paths
Don't use for: Simple queries, direct facts, or single-step tasks.
Basic Usage
The MCP tool mcp__reasoning__sequentialthinking accepts these parameters:
Required Parameters
thought(string): Current reasoning stepnextThoughtNeeded(boolean): Whether more reasoning is neededthoughtNumber(integer): Current step number (starts at 1)totalThoughts(integer): Estimated total steps needed
Optional Parameters
isRevision(boolean): Indicates this revises previous thinkingrevisesThought(integer): Which thought number is being reconsideredbranchFromThought(integer): Thought number to branch frombranchId(string): Identifier for this reasoning branch
Workflow Pattern
1. Start with initial thought (thoughtNumber: 1)
2. For each step:
- Express current reasoning in `thought`
- Estimate remaining work via `totalThoughts` (adjust dynamically)
- Set `nextThoughtNeeded: true` to continue
3. When reaching conclusion, set `nextThoughtNeeded: false`
Simple Example
// First thought
{
thought: "Problem involves optimizing database queries. Need to identify bottlenecks first.",
thoughtNumber: 1,
totalThoughts: 5,
nextThoughtNeeded: true
}
// Second thought
{
thought: "Analyzing query patterns reveals N+1 problem in user fetches.",
thoughtNumber: 2,
totalThoughts: 6, // Adjusted scope
nextThoughtNeeded: true
}
// ... continue until done
Advanced Features
For revision patterns, branching strategies, and complex workflows, see:
- Advanced Usage - Revision and branching patterns
- Examples - Real-world use cases
Tips
- Start with rough estimate for
totalThoughts, refine as you progress - Use revision when assumptions prove incorrect
- Branch when multiple approaches seem viable
- Express uncertainty explicitly in thoughts
- Adjust scope freely - accuracy matters less than progress visibility